Becoming a Software Criminal

1 comment:
Big companies like AT&T, Apple, and Microsoft encourage their users to break the rules, because they make unreasonable rules. Not only unreasonable, but hidden until it's too late. This post will describe two such cases.

I became an iPhone criminal when I started my trip to New Zealand. I had spent over $400 on my iPhone 3GS and wanted to use it on my trip. However, the iPhone is locked to AT&T, and you cannot use it with an overseas carrier without unlocking the phone. This reasonable usage required that I go outside the law to jailbreak then unlock the phone.

I became a Windows criminal when I switched to Mac, looking to move my legitamate Windows software to VMWare Fusion. This use is apparently prohibited by the Microsoft license agreement. And it's causing me problems right now because for some reason my Windows XP image is asking for activation, again. I did not know this, but if you buy a new PC with Windows on it, that copy of Windows is in some way tied to the physical computer: if you trash that PC and keep the hard-drive, and put it in a new PC, you are in violation of the Microsoft license. Or, in my case, if you trash the PC and attempt to run the hard-drive image in a virtual machine, you are in violation of the license.

And in both cases, because I've gone outside the law, it's more likely that I will continue to do so. In the iPhone case, I've installed Cydia, which is a gateway to all kinds of licit and illicit iPhone applications. So far I've only used it to unlock my phone and install some handy developer software (such as Mobile Terminal), but who knows? In the Windows case, I've had to hunt down an illegal, cracked copy of Windows even though I already have a legitimate copy. In the course of doing so, I've found a lot of other illegal software, and frankly I'm tempted to try some of it out. I haven't yet, but who knows?

I begin to understand the marijuana "gateway drug" argument more clearly. It's true: if you have to break the law to do something harmless (like smoke pot) then you are more likely to break the law to do something less harmless (like smoke crack). The one action puts you in closer proximity to the latter action.

In truth these are two examples of a much bigger problem: egregiously complex terms placed on an apparently simple transaction. You may think you're paying for one thing, but in truth you're getting much less, subject to incomprehensible restrictions. This is particularly a problem with loans, credit, and insurance, but increasingly electronic devices and software. There needs to be some legally imposed upper-limit on the complexity of terms! Complexity breeds disagreement, but even worse it shifts the balance of power to the party that understands the terms the best, which is usually the party that imposed the terms, which is the manufacturer or vendor. Ordinarily I would be in favor of letting the market sort this out, but I'm afraid this is a fundamental flaw in the market which is only now reaching fruition thanks to technology. Technology is making it possible to enforce these complex rules - the only reason it hasn't always been this way in every industry since the industrial revolution is that the cost of enforcement has been a limiting factor in all but a few contract types.

Running out of disk space in the age of the cheap terabyte - avoiding data clutter.

No comments:
Running out of space
Running out of drive space these days is like New Zealand running out of sheep. It's hard to believe it's even possible, but today I got a "running low on space" warning on my laptop. It's an upgraded 180G 7200rpm drive. I only had about 500MB free. What on earth was going on?

The first thing I did was empty the trash. That helped a little (I had almost 5,000 items in there). But I was still very low on space.

I needed to get some idea as to what was going on. So I fired up Terminal, ran du (including the du * -k | sort -nr variant), df, and wasn't really the wiser. I needed something visual. So I downloaded JDiskReport (actually I couldn't remember the name so I googled "visualize disk usage" which brought up a lifehacker.com article which reminded me of the project...) JDiskReport is a fantastic tool for seeing where your space has gone (and the guy who wrote it, Kars Lentzsh is a very talented Java Swing programmer as well.)

Turns out that, while I do have 70G of movies, and 14G of music (yes, a small amount but I actually own all of my music) the first surprise was Vmware Fusion: 16G of virtual machines! And really, I don't even use it all that much: I have an older XP image with IE 5.5 on it for testing. And an Ubuntu image for the same reason. Really, these should be 2G apiece, and one 10G image could be deleted. Easy fix.

The biggest surprise was my iMovie "events" folder: 30GB used. First, I have a lot of footage. Second, iMovie adds a lot of meta-data (in one case I had 1G of thumbnail data alone - for a one hour video). Third, raw video footage is very large. It is highly compressable, but compressing this stuff is not part of my workflow. I used iMovie to export a tiny version of a 1 hour video, then deleted the source files. The original was 4.8G. The exported video was 34MB! (It took about 10min to compress. I might also try using HandBrake to do the transcoding.) I can look forward to getting this down to around 200MB, I hope. But it will take time.

And then there are about 12G of photos floating around in various places.

How did this happen?

Cleaning the mess up is great, but if I don't figure out why it happened it's just going to happen again. Despite the increasing amount of storage, the tools I have to generate new data is increasing even faster. I have about 5 devices capable of producing photographs and video: two cameras, a flip video, my cell phone and a webcam. All of this new data is dutifully sync'd to my laptop (a process I wrote about earlier in an article on iPhoto), but then (apparently) the data just sits there, and problems like these arise.

Of course, this data shouldn't just sit there. It should be doing something useful, or it should get deleted. (The utility of data generally goes down over time. But that's ok because flickr, youtube, and facebook don't ever delete your data. It's their business to keep your data as informational as possible, so that's to your benefit.)

Should you have more photos on your hard-drive than on your favorite sharing service, or less? Most people would say more, I say less! Put the good photos on Flickr, and only keep the great ones locally. (Same with videos and youtube). If it's not good or great, it's deleted. Even if you decide to keep it your work isn't done - for example, you need to compress the video. (And you may want to compress the local photos you keep if you shoot RAW).

(Two unavoidable factors may keep more data on your pc than on the net in the short run. First, you may have a limited connection. This will make uploading even smaller files very slow. In the worst case, you're completely offline. Not much you can do there but wait, knowing that your data clutter is only temporary. Second, you may need to compose your story a bit, putting together the narrative and cleaning up the source data, and make decisions about what's good, what's great, and what's trash. That takes time! But being aware of all this work you're creating before hitting "Record" might make you more cautious. It might also inspire you to cull out your work before uploading to your PC!)

How much to keep? I don't know, but I do know that about 95% of my photos are pretty bad. So I'd say 4 photos and one very short video per event day are good, and half (or less) are great. That's about 40MB uploaded, 20MB (max) kept on the hard disk. That's still quite a lot to upload over a bad connection, but doable with reasonable broadband.

Unlocking the iPhone 3GS - Overseas

2 comments:
The iPhone 3GS has the potential to be the traveler's best friend: it has a great camera, now a very good video camera, a good sound recorder, and lots of handy travel apps. And it even has a GPS and a compass!

But travel requires that the iPhone be offline quite a lot more often than when used as a daily device. The reasons are several. Countries don't have data networks, let alone 3G data networks. They may not even have ubiquitous wifi, let alone ubiquitous, free wifi which is the norm in the LA area at least. Even ordinary internet access may be restricted or expensive.

I learned all of these lessons the hard way. Newly arrived in Aukland, New Zealand I had some time to kill before the next leg of my journey and sought out a coffee shop and a quiet corner to take care of some iPhone unlocking. Frankly, I had never considered doing this before my big trip, as I'd been pretty satisfied with the default service of both AT&T and the Apple Store applications. But, I wanted to be able to use my phone as a phone here, so I set about learning about the process.

This took much longer to understand than I expected; it appears that this is still a very fringe activity for a very mainstream device. The best resource for hacking the iPhone 3GS was on iphonehacks.com. This has a lot of detailed instructions and good links (although I may have had to find a different link for the ipsw file IIRC). In addition, one of the steps ended up costing me about NZ$25 in coffee. :) Here are the steps, in brief:
  1. Jailbreak the device. This allows you to install non-Apple approved applications on the phone.
  2. Unlock the device. This allows you to use non-AT&T carriers.
  3. Install the new SIM card.
  4. Enjoy and send metta to the clever programmers who made this possible. And send metta to apple for making a nice device.
redsnow is the name of the program that jailbreaks your device. For most people this is a minor inconvenience. ultrasnow is the name of the unlock program, which itself is an unauthorized application. Cydia is another unauthorized application that is used to install ultrasnow. The wrinkle with the iPhone 3GS is that Apple made some change to OS 3.1 which makes it harder to jailbreak, so you have to downgrade to OS 3.0, then do the jailbreak. An extra step, but no biggie. [If someone had written just that paragraph I would have been saved a lot of furrowed-brow time. I hope someone finds that useful.]

One step seemed simple enough: to restore 3.0, just download a file from Apple. And so I started. When the download just stopped, I was a bit taken aback. But then I realized, ah, they meter the internet here! This file was 300MB and the coffee shop had a 50MB limit on internet usage (using these neat little paper cards with codes you had to type). Problem solved few lattes later (the guy was kind enough to give me two cards per coffee) I had the file. But by then I had to leave, and didn't want to mess something up by rushing.

At my final destination I set about completing the jailbreak. Dutifully following instructions, I did it! Now, time to unlock. Ah, but here is the wrinkle: Cydia requires the internet to download ultrasnow, and there was no wifi here! And of course, no data network. Without data my iPhone had turned into a fancy digital camera, able to sync to my computer only.

I still haven't completed the unlock because of the lack of wifi. Yes, there may be a way to download the package and install it manually. And if worse comes to worst I'll do that.

The moral of the story is: jailbreak and unlock your iPhone before leaving on your trip! Then you can easily pick of a pre-paid SIM card, pop it in and be happy. I'm not sure I would actually do this, but there have been several times a wifi router would have really come in handy for both my iPhone and my computer.



As a postscript I'd say that the iPhone has one standout feature for basic travelling: the video camera. Not only is it very good quality, it is neatly compressed and ready to upload. The videos on my compact are HUGE for their size. The iPhone 3GS is a big let-down, however, when it comes to battery life, and nothing sucks down the iPhone's battery like video. It is best used in short spurts (like flickr's "long photos"). And when you're overseas this actually means you will bring: a charger, a wall adapter, and a cable. I'm super glad I got the battery extender from Mophie before I left. $80 well spent.

The iPhone is also a big let-down for almost every other travel application. The voice recorder is excellent for journaling, but doesn't geocode and clips are hard to share (use Evernote instead). You can read books and watch movies on the thing, but that's not too common for me. There is no really good way for someone to give you their contact details, or to jot down a bunch of tips someone is giving you. It's good for keeping lots of contact information around, but only if the battery didn't die. It is, of course, a very good MP3 player. :)

The underlying reason for this lack, I think, is that most iPhone apps just aren't designed for feature-rich, extended, offline, and unplugged operation. They are designed for commuters who have 3G or Wifi all the time and keep it plugged into the computer they are working on most of the time.

Phones are easy to borrow. Computers are even easy to borrow. If I had the choice between having:
  • handy small atlas, a cheap pad of paper, and a pen
  • iPhone 3GS
And I was on the road, I would choose the former. Now that I think about it, it's pretty easy to borrow a pen, too.

Meditating, Still

No comments:
My enthusiasm for the meditation technique of Vipassana has been renewed by this wonderful experience, this place, and these selfless people, and I am more determined than ever to maintain my practice.

iPhoto sucks, 2009 edition

6 comments:
iPhoto still sucks. A quick google for "iPhoto sucks" gives a variety of hits

First, let's review the primary reason why iPhoto still sucks: it doesn't use the file system. It stores everything in a huge, monolithic file called, by default, "iPhoto Library". This is a HUGE interoperability problem:
  • Other programs can't read, modify, delete iPhoto photos. 
Anytime all of my data is glommed into a single, multi-gigabyte clump I start to worry about data integrity issues - I don't want a single bit flip to make my entire library go bad!

There are some alternatives:

Perhaps the biggest new tool on the scene isOrganize Picasa for Mac (Requires: Mac OS X 10.4.9+, Intel CPU, 256MB RAM, 100MB available hard disk space). Picasa is Google's free, previously Windows-only entry into the desktop photography organization space. It's a very good program, except that it crashes all the time, and use the Windows version extensively on my Sumi, my Thinkpad T43 running XP. Picasa works with both file-oriented photos and iPhoto's custom file-system (however, Picasa is read-only on iPhoto library).

Another alternative is Adobe Bridge. "Adobe® Bridge CS4 is a powerful, easy-to-use media manager for visual people, letting you easily organize, browse, locate, and view creative assets." Bridge also has primitive import capabilities - it will get your photos and movies off your device, but it doesn't do duplicate detection or offer the option to delete source files when you're done. It's a very low level utility, but does have very sensible folder naming conventions.

There is another program that comes with OSX called Image Capture which is very primitive but at least offers to delete source files when you're done. This is great when you need to delete data from your iPhone and don't want to click delete 200 times. Image Capture is very nice, but it doesn't separate data according to the date it was taken, unlike Bridge.

Sharing.

Eventually, any content of value is going to be shared. But how? Where? For photos the four major options are: Flickr, Picasa Web Albums, Facebook, and Dropbox. For videos, there's basically just YouTube and Dropbox (although Flickr does allow for short videos to be posted).

I have the most experience with Flickr. You can pay to have a Pro account ($25/year) which allows unlimited uploads at any resolution. Flickr has a highly developed community of photographers (although they are playing around with video, it's still primarily about photos), and some really nice sharing options (like embedding slide shows in your blog). Unlimited storage is pretty cool but in practice you don't want to be posting crap so you don't really use all of it. The only reason to go Pro is to make sure you get full resolution. You can get photos to Flickr in 3 ways: through the web, through the Uploadr, and through email. Email is the best option, because it's the most flexible (you can email from Picasa or the iPhone for example).

Picasa Web Albums is newer and quite compelling, especially if you use Picasa. The integration with the desktop client is extremely good, and lets you sync edits and add watermarks automatically. Photos default to private (although you can share public photos as well). Honestly, if the Picasa Mac client was more stable, I wasn't already invested in Flickr, and Facebook wasn't such a tempting alternative I'd be using this product.

Facebook Photo Sharing is something that I really want to learn more about. I've seen other people sharing photos, tagging people in the photos, and commenting - both of which are great features. But I have questions. For example, is it possible to post public photos so that non-facebook users can see them [answer: yes, but only via URL]? Is there a way to upload more than one photo at once (e.g. a desktop uploader?) [answer: yes, there's a Picasa Facebook Plugin] Is it possible to upload via email [yes, but not to an album]? Are tags supported you can only tag people]? Is it possible to download your photos once uploaded [only by right-clicking]? What are the maximum filesizes supported [looks like about 600px]? Is the original maintained (e.g. is it suitable for archiving?) [no]. Basically, this is great for snapshots with people in them.

Dropbox is a very basic option, best used for long videos that won't fit on YouTube (which is limited to 10minutes, I think), for audio recordings, or for anything else that's not a photo or a small video. The great thing about Dropbox is the flexibility: it's really just a net accessible file system. You don't get any nice things like tagging or flash viewers or anything. But on the plus side you can share whatever you want, no matter how big, as easy as a file copy. Very good for audio and video.

My Process, or, What I do

When I take photos with my Nikon D90 (a "semi-pro" DSLR) I almost always sync with my Mac by just putting the SD card into a reader connected to the Mac - this is both faster and more battery efficient than connecting the camera up directly with a USB cable (although it's probably harder on the SD card and camera). You can configure which program runs to sync photos: I'm using Adobe Bridge currently, but both iPhoto and Picasa can do an import. (I use Bridge because I like it's file naming better, but I do miss duplicate detection). I import into a sub-folder of Photos called D90 - it turns out it's handy to organize by device. Then I boot up Picasa which detects the new photos, and do my basic editing there. Occasionally I start up Photoshop. Then I post to Flickr via Picasa's built-in email interface.

For my iPhone 3GS I sometimes post directly through the phone: you can email photos and videos, or post videos to YouTube or to Facebook (with the Facebook iPhone app) over wifi or 3GS. Otherwise I sync photos and videos (but not audio, alas) with Adobe Bridge, as with the D90. Unfortunately I haven't figured out how to do a bulk delete on the iPhone Camera Roll! The immediacy of getting data off of the device and onto the net immediately is wonderful, if a little slow. I am certain that this is the way of the future. Audio is quite tricky, alas. The iPhone 3GS offers a new "Voice Memos" app (it may be available on any iPhone 3.0 phone). Audio is only sync'd via iTunes (see the Voice Memos smart list). Then you have to export as MP3 files, if you want to share (right click, "Create MP3 Version" - the iPhone records m4a audio.) Another option is to email the audio file, but this is of limited utility unless you only want to share with one other person. [An interesting alternative to Voice Memos audio is Evernote. Evernote is time limited (10min) and very low quality compared to voice memo but it does OTA sync with the Evernote servers, is geocoded on save, and you can store text alongside the audio and you can share the audio if you want.]

Flip Video has it's own proprietary syncing application. Unfortunately it is modelled on iPhoto: data gets plopped into a monolithic application which then needs to be exported. If you just want to burn DVDs and send to YouTube you may never need to export. Of course, I find myself using the Flip much less now that I have the iPhone 3GS. [Is it possible to use Image Capture for the Flip?]

Making Art

My true goal is to use this data to say something about the world, to share an insight about the world. The best photography can certainly stand on its own, and a title and/or description is enough. For that, Flickr and YouTube are enough. However, more often than not I find myself wanting to say more, to embed these images and videos and audio into a more comprehensive document, to make a multimedia essay. Flickr and YouTube, along with a blog (like Blogger) is perfect for this. Both services provide nice Flash viewers for the content, which can be embedded in the post (see "Short Trip, Important Lessons" for a simple example).

Conclusion

The best bang for the buck, in my opinion, is using Bridge (or Image Capture) to get the photos off your camera into an actual filesystem, then use Picasa to upload to Flickr and YouTube, and then use Blogger to write great posts, embedding assets as needed. However, there's a bit of a marketing problem. You can link people to your post from Facebook. However, this has the important drawback that a) people can't be tagged and b) it seems like people are not often willing to look at links. People like photos, but they like them native to Facebook.

Working offline is tricky. If you don't have an internet connection then you can't upload your resources, which you can't embed in your essay. In this case you can fall back on classic HTML authoring techniques: make a folder for your essay, placing all your assets in that folder alongside an index.html file. When you are online, put the assets up first, adapt the post for the new URLs, then post the essay. (I've never seen that kind of functionality in an offline blog authoring tool, so you have to do it by hand.)

But, overall, avoid iPhoto because it makes everything else harder.

Selling my motorcycle. [SOLD]

No comments:
Alas, I am selling my motorcycle. It's been a great bike and a lot of fun. But I won't be able to ride for some time and it's a beautiful summer and I don't want to see it go to waste.

Asking $4400 - which is a really great price for this bike in great shape and all the extras. Call me at 562 331 7169 if you're interested or want to take a test ride.





General information
Model:Triumph Thunderbird Sport - Yellow
Year:1999
Category:Naked bike
Crashes:Rear-ended in 2005; professionally repaired to stock by OC Triumph, Santa Ana. This was a minor accident and did not affect the frame or any other major systems. There are two small scratches on the exhaust.
Upgrades:
  1. Upgraded cam shaft
  2. Upgraded to off-road exhaust
  3. Hand-warmers
Accessories
  1. Corbin Leather Saddle
  2. Genuine Triumph Windscreen
  3. Genuine leather Triumph Panier
  4. HJC Helmet
  5. Leather riding gloves (large)
  6. Bike cover
  7. Extra set of rear-view mirrors in black
Service History
April 2009 did a major preventative maintenance:
  1. Full tune up
  2. New wires and plugs
  3. Fork seals and oil replaced
  4. Carbuerator cleaned and adjusted
All other maintenance records are available.
Engine and transmission
Displacement:885.00 ccm (54.00 cubic inches)
Engine type:In-line three
Stroke:4
Power:82.00 HP (59.9 kW)) @ 8500 RPM
Cooling system:Liquid
Gearbox:6-speed
Transmission type
final drive:
Chain
Physical measures
Dry weight:224.0 kg (493.8 pounds)
Wheelbase:1,580 mm (62.2 inches)
Chassis and dimensions
Front brakes:Dual disc
Rear brakes:Single disc
Speed and acceleration
Top speed:165.0 km/h (102.5 mph)
Power/weight ratio:0.3661 HP/kg
Other specifications
Fuel capacity:17.00 litres (4.49 gallons)


Short trip, important lessons

No comments:
As a test run of a longer, world-spanning adventure, this 10-day trip to DC and NC has been a success. I've met with obstacles, adventure, and even peril on this relatively short excursion. And, something I didn't expect but should have, I've had a lot of new ideas about how the world works. Travel is not just an opportunity to experience new things, but it's a chance to observe what remains the same.

The Mechanics of Travel
First things first: lessons on the mechanics of travel. By tickets early. Check the tickets carefully or you will end up at the wrong gate, or at the wrong time. TSA hires morons to both write and implement security policy - just get through it quickly and try not to think. A map is the most important thing in a new place. Do not rely completely on technology to replace maps, phone, camera, etc: batteries run out and signals don't go everywhere, even in big cities. Also, it's tricky to use multiple apps on an iPhone. Even if you get a big room, don't unpack everywhere. Talk to strangers. Eat well. All problems go away with sufficient money: remember that travel is primarily a cost optimization problem, not a survival problem.

Relax, but keep moving forward. Be adventurous. Sometimes it's lonely on the road, but it passes.



Seek out local advice, but take it with a grain of salt. Often locals don't know as much about the area as a good guide book (I've learned a lot about my hometown through guide books!).

Washington, DC: shattering a caricature
Washington, DC is unique in that it is the nerve-center for the world's most powerful nation, a place through which trillions of dollars flow and momentous decisions made every day. And yet, for all that, it is still a city. People need to eat and live and laugh. The trash must get collected. And it's a city in the midst of a great deal of natural beauty: one can get lost in the woods within easy walking distance of the capitol building. I think I had grown to think of DC as merely the steps of the Capitol Building, and the Oval Office, and some vague "inside the beltway" place. But it is a real city with a real heart. Like DC, many places exist only in caricature, and I hope to change that.

Raleigh, North Carolina: alive and real
For me, the principal reason to visit North Carolina are the important people who live here, my family. It has been a great pleasure and privilege to stay at my sister's family's beautiful home and reconnect with my nieces. This will always be my chief (and happy) memory of this place, I think. But another facet of this place will always stay with me, I think: I have never been in a place so dense with life. Everywhere is endless life. It is almost oppressive in it's liveliness, as if there is no room for thought because that would take away from the bustling business of getting on with it. And yet the pace of human life here is undeniably slower than either DC or LA. I like the fact that, for the most part, the people here are concerned with what's in front of them, rather than the unreliable (and dangerously distracting) abstractions that preoccupy more "sophisticated" people.




The Why of Travel
Living alone for even a few days in a strange city creates a feeling of loneliness that I didn't expect. In the past I've traveled either with friends or, when traveling alone, to friends. And this is perhaps the most interesting effect of travel: when almost everything else changes, what is left is who you are. Identity in the absence of acquaintances and familiar places is a curious thing: without the reinforcement of others, identity becomes truer.

But who are you? This question can most easily be approached by asking the question, "why am I here doing this right now?" While this is always a good question, it seems particularly poignant on the road. "Because I can" is certainly a valid answer: flexing your freedom is a reasonable thing to do, I think. But what is really in this for me? Is the benefit of a changing world worth the cost of discomfort and instability?


My own answer is this: "because I don't know what I will find." I am firmly in Rumsfeld's "unknown unknowns" territory. In a way, I am using myself as a guinea pig in a grand experiment and dis/comfort has little to do with it. I don't really know what I hope to find as I travel the world, but I have a great deal of confidence that I will find it. Perhaps it will be a strong set of insights, or ideas, or inspiration that I can use directly or indirectly to help others through my professional work. Or perhaps I'll stumble onto a culture or people that resonate strongly and beckons me to become a part of it. Or perhaps I will fall in love and start a family. These are only possibilities, and chances are whatever I find will not fit neatly into any category. If this short trip was any indication, the lesson is bound to be profound.




The value of silence

No comments:
There is irony in writing about silence. To promote something with it's opposite is rather cheeky. But in meditation today I was reminded of it's key importance. When you sit and try to think only of the breath, for example, the mind revolts because the breath is a prison. The reality of breath is less far less interesting than the experiences the mind can produce for itself.

But there is value in staying in this prison for a while. Within this prison very little is happening. It is peaceful - with the key exception of the revolted, and revolting mental reaction. It's true that some matters of real interest can arise, observation of unusual and subtle sensation. However,  it is essentially sensory deprivation. This forces the cluttered mind to clean itself up, to deal only with what is right in front of it. This is a very useful skill for those moments when one really needs to pay attention, for example when learning a new skill or sizing someone up. "Now" is the only time your mind receives new information.

Once you begin to pay attention to the prison, it is not quite what it seems. The breath is complex. The mind seeing the breath is complex. Against the backdrop of a chaotic mind this complexity is lost, but against a backdrop of relative peace this subtlety shines and is fascinating. And it is shocking how quickly and violently "normal" thoughts can break into this new-found idyllic world, literally tearing it apart.

Speech is almost always part of disruptive "normal" thoughts. A more subtle form of speech occurs, some call it "noting" - this is the process of simply naming what you find. It can also occur that questions arise "What is this?" or "Am I doing this right?" or "Is this really a sensation?". These mental verbalizations don't seriously disrupt the experience. However, words do prevent forward progress.

With practice, it is possible to eliminate all verbalizations, even the subtle ones. This is done by simply realizing when you're doing it, and stopping. Even in mid sentence. If one sets a special intention to eliminate words, it becomes relatively easy to do in only a few sittings. And one finds the meditations more meaningful and interesting.

Security wisdom from years ago

No comments:
The security of a signal is inversely proportional to the distance between the sender and receiver.

There are only two fundamental ways to control a signal: control the box or control the pipe. Clever encryption schemes make controlling the pipe impossible - therefore there will be economic and political pressure to control the box.





Is money really the reason to eliminate the death penalty?

No comments:
For years I've been against the death penalty for the simple reason that, if it ever turns out the judicial system made a mistake on a particular case, the sentence is irrevocable. That is, the death penalty implies a level of judicial reliability that is unattainable. My opposition to the death penalty is opposition to the idea of the infallibility of authority.

John van de Camp (former DA of LA and AG for CA) wrote an interesting LA Times opinion piece claiming that the death penalty costs California $125m/year, and that it should therefore be eliminated. My reaction to this was a complex mix of happy surprise, doubt, and disgust. His claim is that California could save one billion dollars in 5 years.

Put in such stark terms, the elimination of the death penalty seems like a no-brainer. The generally conservative people in favor of death penalty also tend to be fiscally conservative, and this becomes "easy money".

But I also have a hard time believing van de Camp's numbers. Why would it cost an extra $90k per  prisoner to have them on death row? Where does that money go? Could that possibly be true?

If it is true, van de Camp's article becomes less of an argument against the death penalty and more an expose about the inordinate costs of doing some as simple as killing people. I mean, I don't want the state to kill people, but I also don't understand why it costs so much to do it.

In truth, I think that van de Camp is right. In a way I'm glad the state is so incompetent that it makes this decision easy. I'd prefer it, of course, if the state was both competent AND wise. But if incompetence paths the path for wisdom, so be it.


[Caption]

On Photography

No comments:
I really like it when people like my photography. For example, someone favorited and asked me to share this beach ball shot.a beach ball, yay! by you.

And I've had other photos requested for books and the like.

But lately, my output has reduced significantly. A big part of this was the theft of my camera equipment. However, even having since replaced it, I've noticed the puzzles of light, color, focus, depth-of-field, subject don't seem to hold my interest. I certainly appreciate other people's work a lot more these days - I am particularly impressed with technical, commercial photography (which, I know, doesn't get a whole lot of love. but I don't understand why. Making things look like their Platonic ideal is interesting, difficult, and beautiful). However, I am less drawn to the art than I was.

And now I am leaving on an extended trip around the world. Photos (and perhaps videos) are expected. That is why I'm renewing my Flickr pro account. However, I'm also going to return my fancy D90 gear (thanks Costco!). I just don't want to lug a lot of heavy equipment. Some of my favorite travel photography was off of a P&C camera - and I know why: the odds of the camera being there is inversely proportional to it's size and weight.

Perhaps most importantly, documenting the experience should never ever eclipse having the experience.

So, with my beat up old SD400 (and water-tight enclosure!), I hope to apply what I've learned about photography, and increase my output once again.

Where to discuss songs?

No comments:
I often seem to wonder about the meaning of songs, and would like to talk about them with others. Consider the track "Dragon Queen" from the latest album from Yeah Yeah Yeahs, It's Blitz! It's a catchy track, but there are some indecipherable lyrics in there, and it sounds very much like another popular song which I can't quite identify. I think it would be fun to argue about the lyrics and identify the funk track that Karen O and friends are lifting.

Allmusic has the data on this track - how long it is, who made it, etc - but offers no forum for discussion.

Where should such a form exist? Should it be a feature of an existing service (like allmusic), or should it be it's own thing? Should songs have a canonical URL?

Some songs are important enough to warrant a wikipedia article, but Dragon Queen is really not one of them, I think. And besides, wikipedia is not appropriate for critical discussion. So for existing services, I think Wikipedia is out.

A great place for online music discussion would be Allmusic - they already have all the facts handy, all that's needed is a new discussion feature. I'm not sure what their revenue model is, but traffic is always good. Last.fm would be a nice place for this kind of musical discussion, too. Of course, if Google could somehow collect all the blog posts, tweets, and comments about the song from all corners of the web, that would be very impressive! YouTube is another option for music mecca, but the song has to have a video associated, and frankly the quality of youtube comments is so bad I wonder if this would be worth the cost.

There are so many options for musical discussion, it's surprising it hasn't really happened yet.

[Update: it turns out that Last.fm is the place. It has all of allmusics info, and you can edit entries for artists, albums, and tracks, and forum discussions. For example, here is the page for Dragon Queen. Last.fm calls comments "shouts", and their OSX thick-client doesn't support them, which is why I missed them on my first look at Last.fm.]

Sending the wrong message about torture

No comments:
Obama Rules Out Charging C.I.A. Agents in Interrogations - NYTimes.com
The interrogation methods were among the Bush administration’s most closely guarded secrets, and what was released on Thursday afternoon marked the most comprehensive public accounting to date of a program that some senior Obama administration officials have said included illegal torture.

And Obama won't prosecute. This sends the wrong message to soldiers and operatives: that you don't need to use your judgment when carrying out orders. As long as you're just doing your job, you won't be held accountable. This is the wrong message, and I'm disappointed in Obama.

Hi-Tech organization tips?

No comments:
I've been working assiduously through a wonderful book called "The Complete Idiot's Guide to Organizing your Life". It offers some wonderful advice and specific techniques to help define your goals, and then unclutter and streamline your stuff, your time, and your relationships to support those goals.

The techniques, though, are not very high tech, and I think it's a worthy goal to adapt the book's advice to a modern suite of tools. For example, in building a "Life Management Center" (or the "helm of your ship", the author talks about filing systems primarily geared toward paperwork, and also focuses on using paper-based planners (in particular using the alphabetical section as an all-purpose database).

Instead of a paper planner I want to use my iPhone. With one exception, the todo list, the iPhone is a great tool.

I think there is a great deal of opportunity to write a book (or perhaps a series of posts) that applies these lo-tech concepts to hi-tech tools.

LiveScribe vs. Windows Journal

2 comments:
Bought a LiveScribe pen yesterday. Here's what I wrote about it when I first discovered it:

ARM 9, 2G Flash RAM, IR sensor in the tip, stereo microphone, OLED display - and a ball-point pen! $200. Position and velocity data apparently via coded dots on special paper (a mildly unfortunate requirement), can digitize notes associating audio with them for later playback. Desktop software does hand-writing recognition making notes searchable (this last feature is similar to Windows Journal). You actually draw the pen's interface if you need to interact with it; there are no buttons on the thing. Interestingly the company is going to ship a (Java) SDK for the device. Very interesting indeed - with a little custom software I'm thinking this could be an amazing tool for client consultations, or for marking up any printed material. Neat but probably useless demos include a piano you can draw and then play, and a foreign language dictionary that will pronounce a word you write in english in several different languages. Tablets are still better for illustration, though.


My tablet's battery has been flaky, it's WiFi hasn't been working right, and I gave my (very nice) voice recorder to my ex-girlfriend, so I decided to buy it for use as a note-taking tool. I've been using it pretty heavily for the last two days, and here are my first thoughts.

This pen is perfect for taking notes in a meeting. The ability to record audio along with your notes is very powerful. I'm still getting the hang of this style of note-taking. Being able to store your notes and audio on a PC for backup, search and review is potentially useful, but I fear data-duplication. Luckily the desktop tools are read only so it's easy to treat the PC as a viewable backup, and the notebook/pen as the actual data.

The pen is okay for creating and sharing simple expository videos. Unfortunately you can only share these with the Windows version of Livescribe desktop.

The tablet still wins for illustration and expository videos (just draw and talk, capture with Jing). It is not quite as convenient as you would think, though - you have to have some "dot paper" for the thing to work, so you need to have a notebook and a pen. Indeed, you can't use the pen as a simple voice recorder on it's own, because you have to have dot paper to make it start recording! I'm also concerned that eventually the paper buttons will become obscured and unusable.

A more serious issue with Livescribe is integrating the data into the rest of my tool set. The data is not file-oriented. One is forced to use yet another tool to search and access proprietary data. (Windows Journal is slightly more file oriented). You can export PDF and AAC files from the Mac client, but this is a) inconvenient, b) duplicates data, and c) loses information about the capture (you couldn't recreate the video, for example). The closest thing to a "true backup" is, ironically, the SWF files used on the community site.

An interesting tool, but in no way revolutionary.

Exploring the Blogosphere

No comments:
I am finding so many interesting people! It's quite exciting!

Via Case I discovered Buster McLeod's Enjoymentland - one man's exploration of happiness and satisfaction (with handy tips on loosening your brain with three random words, theories like "it is enjoyable to take your own advice", and an interest in fresh produce). From there I learned about Jane McGonigal's Avantgame - one woman's exploration of why gaming makes us happy (via a post on "game-ifying" her attempt to write a book). In addition she is a very accomplished, attractive person living an apparently wonderful life. (And she has an identical twin sister Kelly who is an accomplished yoga teacher and writer (and also a PhD)).

Frankly it feels good is to know that these people exist, that they are thinking, creating, and sharing themselves in all their quirky esoteric glory. I get the sense that anything is possible, that if I take the time to accurately describe my dream, patiently work toward it every day (while keeping my workspace neat!), that I really can achieve it. And meanwhile I should feel free to unabashedly blog about my own preoccupations no matter how odd they may be.


These are the tools of our lives.

No comments:
Tool proliferation (and contraction) is a part of my life. I am an early adopter, partly because of my job, and partly because of my personality. I enjoy the new, and sometimes the new can be quite valuable.

The distinction between software, hardware, website, and locally installed tools is not very important in the long run. From the mind's perspective, they are all equivalent: tools focus behavior, sacrificing generality for effectiveness. (This definition is as true for a screwdriver as for a word processor.)

Here are some tools I've been using for some time, in no particular order:
Evernote Basecamp Freshbooks Goodreads BetterWorld Dropbox Gmail Livescribe Namecheap Linode GCalendar GNews GReader Hulu Mail.app Adium Visio MSProject MSWord Photoshop Flash Flex Eclipse Netbeans Ant Maven Ivy EnterpriseArchitect JavaScript Firefox Safari ScribeFire Zotero Zing Gaim Skype Ubiquity TreeTabs Growl Terminal Bash Last.Fm Delicious Facebook Yelp YouTube MySpace Amazon NewEgg Meetup Q10 Costco VMWare Mercurial Git CVS SVN iPhone iTunes Twitter FriendFeed Firebug Blogger YahooMovies Kongregate CounterStrikeSource TurboTax NikonD90 Xcode WindowsXP OSX Wireshark Ableton Mbox2.

There are many tools I haven't listed, but these are the ones off the top of my head. Some of these tools overlap each other. For example, I have more than one mail application, browser, IDE, programming language, note-taking and build tool. Some of these tools are relatively new to me, and I'm still using them. Some of them I hardly use at all, others I use daily. Some I used to use a lot more, but now hardly at all. Some are for business, some for pleasure.

Some of these tools are platforms for other tools - but that is not really important. Indeed with Firefox, the nesting can go deeper: Greasemonkey and Ubiquity are Firefox plugins which can themselves be extended further.

I think that tools say a lot about a person, but not everything. For example, I like good beer, good coffee, occasional yoga and a daily swim. There are few tools that would indicate these preferences (although a fancy tea set, a yoga mat and goggles/speedo would be a good hint!) But interestingly, tools give you an excellent idea of what that person likes to make. And what someone likes to make is more important than what they like to consume, in my opinion.

You could infer a lot of (correct) things about my professional life from my tool list. For example, that I do a fair bit of programming, in Java (and you might probably guess HTML CSS and JavaScript). The writing tools may give a hint that I'm experienced enough to get asked to write specifications. You could also tell I'm a blogger and a journaler. Although you may miss the fact that I'm an amatuer writer of fiction (Q10 is the hint there), you would probably get that I'm a fairly serious amatuer photographer (D90, Photoshop), and musician (Ableton, MBox2). But you probably wouldn't be tricked into thinking I'm a pro photographer or musician.

But of course I may omit certain things. For example, I didn't list my pool cue, bow, soccer cleats or my huge WoW TCG collection. Admittedly these are relics of past activities, but it points out the risk of self-selecting a tool list. Perhaps a separate "tools in storage" could help one create an activity history for someone.

The "tools of our lives" tend to cluster around particular activities, and this seems to be the most natural way to organize the tools. Activity drives tool usage, but occasionally the reverse happens. If I want to ride a motorcycle, I need to buy a motorcycle - the tool supports the activity. But sometimes a tool falls into my lap and I start using it. For example, Facebook is a great tool for staying in touch with friends, and so I may do more of that activity. Last.fm is a great tool for discovering new music, and I might spend more time listening to obscure tracks. I might be tempted to call these promotional tools in that they promote certain activities by making them easier to do. Hulu/TV Watching is another promotional pair. These are tools which actually shape the time-budget of your life, and so you must be careful of these. These tools can open your eyes to new possibilities, but they can also distract you from the activities that matter to you.

Many tools are geared toward eaking out productivity enhancements. These tools assume you already have a way to do something, and offer an alternative method which is faster, cheaper, or produces results of higher quality (or all three). I would consider e-tailers to be in this class of tool: they often make things easier to find, to order, and to pay for than traditional retailers. Most software-making tools are in this class. I would call these productivity tools. Essentially all software libraries and frameworks fall into this category. A physical example would be an electric drill.

There is another class of tools which offers insight into the world. They tend to be passive tools, that let the user look at things from a new angle, or provide information that would ordinarily be inaccessible. A newspaper is a classic example, or Google News. But also more technical tools like Wireshark or Firebug or LambdaProbe. IDEs like Eclipse or XCode also have many features of this sort, providing summaries of information. Insight tools help you understand the world in a way that is useful to you. A physical example would be a flashlight.

Tools can sometimes be hard to distinguish. Is TreeTabs (an excellent Firefox plugin) an insight, productivity, or even promotional tool? There is a case to be made for all three: insight because it lets you see which tabs are related to each other, productivity because it uses screen real-estate better and is more readable, and promotional because it tempts you to use far more tabs than before (with the unintended side-effect of making Firefox a lot less stable - but that's another story).

The same sort of question can be asked of certain IDE and framework features. IDEs make physical artifacts relatively easy to manage (via search) and create (via refactoring tools) and so they unintentionally promote needless artifact creation. Many frameworks also promote the use of many very specialized physical artifacts to accomplish a single task, which has many undesirable side-effects.

Splitting the Atomic User Interface

No comments:
There is a war waging in the technosphere between those who favor thick clients (or rich clients as they are now called), and those who favor thin clients. Thin clients, and the server-mediated UI frameworks which support them, meet a singularly important requirement - to be understood by other programs, especially search engines. A large part of the utility of the internet is search, and search is only possible because web spiders can understand the simple structure of HTML and those internal relationships expressed as hyperlinks. These spiders cannot understand rich clients. Another increasingly useful part of the internet are mashups, where one application is used to decorate another with useful information. This, too, is rendered impossible by indivisible, atomic rich clients.

Indivisability, or atomicity, is what you get with a binary image, or a Flash SWF, aJava applet, a Canvas element, or a big hunk of generative JavaScript (like GWT). These elements are basically inscrutable by other programs. The DOM comes to an abrupt stop, and so does all ability to index, manipulate, or extend. When one of these elements expands to consume the entire page, the utility of the internet goes down a little bit because now there is information locked away, inaccessible. The entire page becomes an atom, and completely inscrutible.

And yet, these atomic technologies enable some truly beautiful interfaces, and in some cases are a joy to program with, so we don't want to give them up. Most applications should just use them and be happy, because 80% of searches are informational (as opposed to navigational or transactional - see http://live.psu.edu/story/29879), and most of these programs are transactional (that is, getting the user to fill out a form).

For informational rich clients, it's more complex. The bottom line is that you have to expose the information in the traditional way, too. This is less "cloaking" and more "exposing" internal state to the programs that need the info. Tacking on a trivial, non-beautiful HTML exposure of your data should be pretty easy, especially if your app is done in the SOFEA style. You have each page redirect to your rich client internal anchor. This is a valid use of a server-side framework.

This approach makes (almost) everyone happy. The data and it's relationship to external sites is exposed to search engines and mashups. The only person who is unhappy is the one who wants to use your UI in a mashup, along with the the data. But in the end, this is a minor impact. The importance of UI reuse is much less than the importance of information reuse.

Another approach is for the atom to finally be divided - for the web spiders to break the UI atom and release it's power. Unfortunately, this demands a great deal of computational effort on the part of the spiders, and is not scalable. If Google uses 20 megawatts today, expect this to increase an order of magnitude to break all the UI atoms out there, repeatedly. And then expect some information to be lost or misrepresented. From the mashup side it's a better picture - it is possible to analyze a running Java Swing program, for example, and expose a containment hierarchy as a DOM structure. No doubt a similar possibility exists for Flash, etc. Of course, JavaScript already exposes itself as a DOM structure, so it's a bit ahead of the game.


Two disturbing comments from Obama and a ramble about Afghanistan

No comments:
Obama made a comment about the economy today that tough times are a "great opportunity". I agree, but I think that's a message that requires a subtle discussion or it risks sounding like an empty platitude. A platitude coming from someone as smart as Obama is chilling news indeed - it sounds like a last resort when all other options have been exhausted.

The second comment about the Taliban is more serious: Obama is considering opening dialogue with moderate Taliban. I feel that to do so would be a critical error. The Taliban is a sworn enemy of the US, had harbored al queda, and needs to be eliminated. Granted, this is an emotional response, and I don't know the actual situation in Afghanistan. I know for certain my reaction is colored by a recent reading of The Kite Runner which depicts a Taliban which is wholly evil, a force of thuggish brutality and chaos, and which contains no moderate elements. Of course, that was a work of fiction and I may be mislead. But still, that is my instinct.

This is different than having dialogue with Iran, which by all accounts is run by Islamic militants no less brutal than the Taliban regime (both are Shi'a, BTW), but hasn't yet attacked US soil. To be sure things are as tense as they could be - Iran is constantly threatening Isreal, a close ally, and threatening the US as well. Iran has a history of attacking Americans in incredibly cowardly ways. But - and this is a huge but - Iran didn't bring down the twin towers, or directly harbor those that did. So sure, send a diplomat to talk to Iran. But send a soldier to 'talk' with the Taliban.

I am no expert on Afghanistan, but it seems that the problem is a real lack of focus. Armys are best at beating other armies in relatively short conflicts. It seems that the people of Afghanistan have been badly beaten down by first the Russians, then the Taliban, and the survivors are bound to be scarred, fearful, and unwilling to trust. And interpersonal trust is the key to a stable system. Nothing can get done when everyone is scheming to cheat their neighbor. And such people may not have the sophistication to understand the old "the tide raises all boats" sort of argument.

It seems to be that the West would be well served by introducing a new sort of business, the nation building business. Given a set of resources, a certain culture, a tricky security situation, can you build a nation? Obviously the business would be well served by expatriots of the country in question, and success is measured in how quickly and completely stability is achieved. Incentives should be in place for employees to move to the target country, and integrate into the society. Nothing motivates someone to achieve peace than the prospect of living in a warzone. Competition could occur as different companies take responsibility for rebuilding different nations. As they would be directing vast sums of government treasure, they would need to submit detailed plans, and to detailed audits of their activities. They would need to be very high tech to remain high-functioning despite the scrutiny.

One possible solution is the Genghis Khan solution. In his day, Temudjin's homeland of Mongolia was ruled by many small khans, or tribal cheiftans. Temudgin gradually won the loyalty of ever-larger groups of warriors by essentially offering them better working conditions (staying alive) and better compensation (a bigger cut of the spoils). Other clans would join him because they saw that their odds of winning battles and feeding their families would improve if they joined rather than fought.

Rebuild-afghanistan.com could offer the Afghans the same choice Temudjin offered his fellow Mongols: join us, or your odds of surving and feeding your family go down. Let us tell you of the prospect of long term prosperity, a time when the fighting will end, and the land will flow with milk and honey. Our culture is your culture. We are muslims. We have families. We speak Farsi and eat kabob and fly kites in the winter. We are fierce warriors, and we are used to winning. So either join us and live a life of plenty, or run to the hills and take your chances against our military. It's your choice.

The problem of course is that the west is viewed as evil. Demonstrating goodness is bound to be met with skepticism or violence. It is easy to imagine building a hospital, for example, and having it bombed. The irony is that you must build the 'good stuff' close by to be appreciated. And yet when it is close it is vulnerable, and it only takes a small group of people to decide to destroy it. There are always small minded khans who have only enough cleverness to manipulate their friends to maintain their power and authority. It is tribalism of the meanest kind, and those khans won't give up their power willingly, and they are happy to believe (and support) any story that helps them maintain their positions. I'm not sure if there is any solution other than to replace such people with leaders loyal to the overtaking regime.

Finding such leaders is the tricky part. The irony is that such replacement leaders must be selfless - they are giving up a lot to take up the mantle of tribal power. Those with leadership ability are rewarded extremely well in the west, and yet don't have to face the prospect of murder - the job pays better and is less challenging. To give up the rewards and assume the risks of tribal leadership can only come out of selflessness. (of course some people might be drawn to the raw brutality of that sort of existance, but I imagine they would be in the minority.)

Psychologically the opponent must be given something to think about rather than opposition. If opposition to authority is all they ever known, then it will be a difficult habit to break, even if the authority is demonstrably not evil. After all, if you get up every day and are driven by an abiding hatred of something, rather than say, ambition or even laziness, it's a different lifestyle. It's an easier life because you have a singular purpose: to destroy something. And too your own well-being and even that of your family can be ignored, and any discomfort blamed on the opposition. When you are faced with the prospect of building something, it's much harder. What to build? is a hard question because, by definition, the thing doesn't exist yet. It requires imagination and courage to build. But destruction only requires the basest literal thinking, and a gun. I think this was the point Goerge Orwell was trying to make in 1984. It may be that the tribes of Afghanistan (and to a lesser extent the Iraqis) are stuck in this sort of viscious cycle.


Book Review: The Kite Runner

No comments:
The Kite Runner The Kite Runner by Khaled Hosseini


My review


rating: 5 of 5 stars
I cried 4 or 5 times reading this book. It is an incredibly heart-wrenching tale of cowardice, remorse, loss, good, evil, and ambiguous redemption. There are heroes in this book, but they do not succeed in the traditional way. Against violent opposition, saintly people die. It's enough to make you really want to believe in heaven.



This book is also a badly needed humanization of Afghanistan, a reminder that there was a strong community living there before the Russians and then the Taliban destroyed what was there.


View all my reviews.

Photo processing service needed

No comments:
Basically I need a service where I can mail in my film, have negatives developed, scanned, and then uploaded to Flickr into my account. A 5MB scan or higher would be good, with no correction. I don't care about getting the physical negatives back. Does a service like that exist?

Book Review: The Brief Wondrous Life of Oscar Wao

No comments:
The Brief Wondrous Life of Oscar Wao The Brief Wondrous Life of Oscar Wao by Junot Díaz


My review


rating: 5 of 5 stars
What an amazing book. I don't normally go for Pullitzer Prize winners, Oprah Book club stuff, but this book was amazing. The book is not fantasy or science fiction (although you could argue there's a dollop of urban fantasy) but there are quite subtle inside references throughout to LOTR, Dune, the Watchmen, and Akira. This was just the icing on a vibrant, multi-lingual narrative that was so juicy Jonot could have kept me interested describing how grass grows, in real time.

Of course, the actual story was much more intense than the growing of grass. The central character, Oscar, is perhaps the ultimate nerd, the ultimate ne'er do well outsider, and Junot goes to great lengths to put him in his time and his circumstance, and manages to pull in 3 generations of his family and the terrible history of Trujillo and the Domincan Republic, and the life of DR immigrants in New Jersey.

The narrative begins and ends with Oscar, but Junot does something only the best authors can - he interrupts his narrative, sometimes quite abruptly, introducing new characters who manage to hold one's interest even more than the last characters. What makes this even better is that the new characters are often younger versions of supporting characters in previous pages, and this time seen in a very different (always more sympathetic) light. It's as if he's explaining "how they got that way". This is particulary true of the mother, Beli, who is first presented as a terrible force in Oscar's life, hard and relentless, and later painted as a little girl, conceived at the tail end of her great families fall, taken in by monsters, saved by distant family, and destroyed by her powerful ability to love.

I feel like I should say "This book changed my life" but really, it hasn't. I am relieved to report that this book does not have any life lessons, except perhaps for the oldy but goody that you should be grateful for what you have, especially something we take for granted, political freedom. Bush may have been bad, but let's face it, he was no Trujillo. I think that our own complaints sound very tinny and small next to the brutality in this book.

Live your life, speak your mind, and maybe you can write a book like this someday, my love.


View all my reviews.

An exciting time for Books

2 comments:

I think this is an exciting time for books - to be a reader, an author, a publisher, or a retailer. There is a new focus on learning, which means reading. Brick and mortar retailers have wisely made the bookstore a "destination" rather than a place to convert greenbacks into stacks of bound paper: bookstores are way more comfortable and fun than in my childhood. Online retailers have made any book accessible, and has given new life to the used-book market.

And it turns out that books, and the people who love them, are a grand opportunity to network with books. It's like the days of Usenet rec.arts.sf.written, but much better. In particular, I get a great tool that helps me describe what I read, and what I thought, and based on that description can connect me to others. Usenet never did that.

And internet retailing didn't stop with Amazon. People with great heart, skill, and determination are giving Amazon's book business a run for it's money.

Spreading out, focusing in

No comments:

It seems that the internet has recently exploded with new services. Some of them are very compelling. Using them seems simple enough: sign up, start using it. Goodreads is my new favorite tool of this sort.

However if you repeat this often enough, a few serious weaknesses arise. Most glaring is the need to remember usernames and passwords for each service. These are a hassle to remember. Each service has it's own interface, which is a double-edged sword - on one hand different data requires a different interface, but on the other it's a lot to learn. Also, each service has it's own data - your own content, and social graph data. This doesn't become an issue until you want to switch services or, ironically worst case, using two services side-by-side.

Data-duplication in a Web 2.0 world is a nightmare.

That's why Web 3.0 is going to be about focusing in. Aggregation is the first step. And indeed, perhaps that's the way to go - aggregate and integrate until your happy.

Idea: Movie age disparity finder

No comments:
It's weird how the movies pair really old guys with super young girls. I want to do a survey to see if the gap is trending up or down (I think it's trending up, big time). Inspired by Liam Neeson and Famke Jenson in Taken (12 years difference).

Some of the information is out there: character name, actor name is on imdb. Actor birth date is also on IMDB, wikipedia, or other sources. What's harder is to know who is romantically linked to whom. I might have to ask the world for input on that one.

To make it more fun, you can tell the site which characters you wished would have hooked up (but who didn't). It's a nice, fun, drag and drop exercise. A quick poll of teens at the coffee shop seemed to like the idea.

The rise of internet bartering

No comments:
That was odd. I wanted to install Stuffit 9 Premium (which has some nice features like segmentation) which is ordinarily $50 (but which somehow comes with the Mac?) and Smithmicro said it was free. But I had to accept an offer. This offer was brokered by a company called Trialpay - and I could select anything from a credit card sign up, a subscription to the Economist magazine, or a trial of "Blockbuster Total Access".

Actually, I think this was extremely well done. Early attempts at this sort of thing were incredibly crude and offputting, often forcing the user to go through many pages of worthless offers. In this case they only had 6 pretty good offers.

The rise of great expository videos

No comments:
I've been seing more and more really great exposition on the internet, especially through videos. Speed drawing is perhaps my favorite (and it's a very interesting and informative exercise to consider what it would take to create a "Speed coding" video!), but I've seen some very effective teaching videos (this one about recycling, the enviroment, and ecology from Japan).


History of the Internet from PICOL on Vimeo.

Now here is an interesting video. I really like this style of exposition - iconic, abstract, always in motion, with cool spacey music in the background. And of course a nice British accent doesn't hurt. The subject is rather interesting, too - the very early technical development of the Internet. But what is most interesting is the attempt to standardize the iconography with "PICOL icons". What's not clear is if this is just the author, Milah Bilgil, to "standardize" something, or if this attempt is real. Of course, standardizing the iconography isn't enough - would be authors also need good, inexpensive tools to play around with this stuff. It's not clear to me if Flash is overkill for this sort of thing, or if its "just right".

A really neat thing

No comments:
Sometimes it is hard to transform non-linear thoughts into linear text. This is one of those times. I've been struggling with the concept of "smoother" transitions from concept to implementation in software, such that information is not lost in the transition. Take, for example, the use of unusual typefaces in a web page. If you create a raster, you've lost information - the original text.

The other day I ran across SIFR, which does in-place rasterization of type. This is consistent with smooth software development along ever decreasing entropy. Interestingly one of my favorite sites, hulu, uses it.


Drag and drop of page elements - the ubiquitous use of absolute positioning!
http://www.roxer.com/
http://javajosh.roxer.com/ocjug (with domain support!)

Oh, and here's one that uses sifr, called doodlekit. (really great site design, but requires a native plugin to work, which I am loathe to install. See the techcrunch review that puts it side-by-side with some other tools, including Google Pages). What's shocking is that they charge so much for their service. $14/mo is really too much for a one-time use of a tool, and occasional other uses. The free version sucks because it plops ads on your page. I basically think this is not a viable thing).

But I love the idea of drag-n-drop through-the-web design.


How to design this code?

No comments:
I want to write a JavaScript function that effectively "widgetizes" a section of the DOM that contains other widgets. For the most part these widgets represent some sort of input from the user. In particular, text boxes, selects, and other Widgets. I've kind of done it, but there are a few niggles, some of which are rather philosophical. In the spirit of the interwebs, I'd like some input.

Here is the code so far. Still needs onchange support, and...
  1. How should the application programmer select the composite node? Passing an ID as a string is easy, but not very flexible. I'd rather accept an arbitrary DOM elt. A jQuery programmer is going to want a plugin, which means using an arbitrary selector. [Update: Resig recently posted a bit of code that had to deal with this exact issue. He accepts both. It remains to be seen what this means to make this into a plugin.]
  2. How should I determine if focus is trapped "inside" the composite? Currently I'm tagging all descendant elts with a unique tagging class, but I find this modification of the DOM distasteful. Am I being too picky - does it really matter if elements have an extra class? Is there a way, with jQuery or with basic JavaScript, to ask if a particular elt is an ancestor of another elt? One interesting possibility is to use the "offsetParent" property - apparently divs become offsetParent by default, although this approach might fail under certain layout circumstances.
Thanks.

The truth behind medical paperwork

No comments:
Someone I know asked me to join her at her therapy session today, primarily to discuss communication styles. I agreed. The councilor greeted me kindly, said how much good stuff she had heard, and then handed me a (rather thick) sheaf of papers to fill out. Needless to say, I was nonplussed. I smiled and asked her why it was necessary for me to fill out this paperwork, explaining that I have an aversion to such things, and after all this was a one time thing. She said it was for her "integrity" because this paperwork is required by her various associations. She also said that her lawyer said she must have it filled out. She questioned me about past experiences with paperwork - playing the 'why' game with me. At one point I asked her what she would do with the paperwork when I filled it out, and she said "Oh, I'll file it away for 8 years and then throw it away."

So she wants me to do work that she'll then throw away. How respectful of my time and efforts!

The truth is that paperwork serves only two purposes: to get the service provider paid, and to limit their liability. And because the payment often comes from a 3rd party (the insurance company), an inordinate amount of paperwork is required. Another, more egregious purpose behind paperwork is to limit the service providers liability. It is more egregious because lawyers have to guess how lawsuites might play out, and because they can go in many different directions, there's a lot of paperwork generated. Actually the more general way to put it is that paperwork should limit the eventual harm suffered by either party (although in some cases it increases harm, such as imposing punitive late fees).

Repetative, unnecessary paperwork one of the worst symptoms of our medical system.

One should justify paperwork, rather than justify not having paperwork. It's not easy to fill out a complicated form, especially if it's packed with technical jargon. The requested information is often not at hand, and even if it is, one has to painstakingly write it neatly in the boxes. Also, the action is asymmetrical, meaning that the service provider doesn't have to fill anything out for you, but you have to fill stuff out for them. It is demeaning because, as in my case, you are asked to do work that will eventually be thrown away. Paperwork is the worst kind of work - it's just rehashing known information into new blocks, and agreements that can't be fully understood.

In this case there are privacy concerns which are substantial - what if I apply for medical insurance and the councelers billing department submitted my "claim" for pscyhological treatement such that my premiums got adjusted?  Or what if the billing department decides to bill me for the visit by accident?

It makes me very sad that otherwise rational people let bearucratic habits trump their common sense. The fact is that I should have been able to sit in with my friend that one time without filling out any paperwork whatsoever, because the only potential harm was to my privacy, and I felt sufficiently covered by confidentiality priviledge.

Why it isn't so surprising that "furniture" is the keynote speech at the Java Symposium

No comments:
At first when I saw it on the schedule I thought it was a joke. Sure, the Java Symposium isn't exactly the biggest or best conference, but keynote speech about furniture? Really? But after thinking about it for a while, I realize that the issue is actually important enough for a keynote, even though I disagree with Neal's thesis. So why is furniture is the subject of Neal Ford's keynote at this year's Java Symposium? He will talk about "the frustrations of modern knowledge workers in their quest to actually
get some work done, and solutions for how to guard yourself against all
those distractions." He's going to rant against cubicles, save the everyday Joe Programmer from his frustrations, and I think that's great.

But I'm not sure if I agree that a shared workspace is causing Joe Programmer's troubles. Sometimes I like being in a shared space. Sure, if I am hot on the trail of a great idea, and thick in the implementation, then yes, by all means, I want an office and a closed door. But alas, the opportunities for such development are relatively sporadic. The reason is that, once the code is done, working, and checked in, you get to describe it, support it, test it, explain it, defend it, tweak it, deploy it, demo it, profile it, document it, and discuss it. These other activities require communication and an office actually gets in the way of those tasks.

Communication is the core benefit of being in a shared workspace. But sharing energy is another. The energy of the place can keep you going in the middle of the day when you might be sagging and loosing focus. It's kind of like working out in a room of people vs doing it yourself. Working in an office means you get some good peer pressure to at least pretend to work when you're sitting at your desk. This is why I, and many people I know, enjoy working in a coffee shop. In fact, I'll even dub this "The Coffee Shop Effect".  (Of course, it works the other way around, too: if everyone is depressed about something, like a bad quarter, it's easy to get pulled down with everyone else. Luckily in a coffee shop people are usually jacked up on caffiene, and there is no shared earnings report, so that's nice.).

I also want to point out that being in an office doesn't necessarily reduce distractions: IM and email have a way of ignoring physical barriers. I've yet to meet a product or project manager that shied away from opening the door at any time. Of course, it's possible to close the digital doors too, and coworkers no matter their title need to respect one's space, but an office alone doesn't solve these issues. E.g. it takes more than changing around furniture to cultivate a nice atmosphere.

So basically I think that companies should provide both types of environments. There's a huge economic pressure to keep expensive programmers focused and productive for more hours in the day, but there is a certain maximum (for myself it's only possible to be in "the zone" for a max of 4 hours per day - when I go past that and look at my work, I have to admit it's not great). And for semi-focused work, a shared space is actually better and more fun.

The rise of expository videos

No comments:
I've been seing more and more really great exposition on the internet, especially through videos. Speed drawing is perhaps my favorite (and it's a very interesting and informative exercise to consider what it would take to create a "Speed coding" video!), but I've seen some very effective teaching videos (this one about recycling, the enviroment, and ecology from Japan).


History of the Internet from PICOL on Vimeo.

Now here is an interesting video. I really like this style of exposition - iconic, abstract, always in motion, with cool spacey music in the background. And of course a nice British accent doesn't hurt. The subject is rather interesting, too - the very early technical development of the Internet. But what is most interesting is the attempt to standardize the iconography with "PICOL icons". What's not clear is if this is just the author, Milah Bilgil, to "standardize" something, or if this attempt is real. Of course, standardizing the iconography isn't enough - would be authors also need good, inexpensive tools to play around with this stuff. It's not clear to me if Flash is overkill for this sort of thing, or if its "just right".

Just go see Wicked

No comments:
http://www.wickedthemusical.com/img/wicked_splash.jpg

(We had front row, center tickets at the Pantages with the original cast! The principles are great singers AND great actors - sitting that close you can see the real tears on Elphabas face. The story is really nothing like the book, but it's amazing all the same.)

The true cost of evaluating EC2

No comments:
Back in July I was evaluating Amazon's cloud computing platform, EC2. I figured, why not? It's only $.10/CPU hour. Starting an instance, connecting with a browser, SSHing in would cost me less than a cup of coffee, and would be good practice. The experiment went along, I deemed EC2 too difficult to provision and use for my purposes, and forgot about it.

Today I got an email from Amazon saying I owed them about $7 for web services. I vaguely remembered seeing this before. I always thought that it was saying that I owed $7 for that one time I tried the service out: way too much, of course, and something I kept meaning to call amazon and find out about. Today I read it more carefully: turns out I've been billed about $7.50/month since I tried the service out. (Finding this out was much harder than it should have been: AWS billing and usage interface is truly awful. I ended up just doing a search in gmail for "amazon web services billing statement" and summing the amounts.)

Concerned, I used Amazon's contact form (they don't have an actual email address). I received a form letter back explaining how to cancel EC2 and S3. This was odd for a couple of reasons - first, I didn't ask how to cancel anything, I asked to understand why I had been charged for the last 6 months. I also asked for instructions on how to figure out how much they have actually charged me for. Not having my questions answered, my first instinct was to reply to the email. Turned out that the "from" address doesn't accept email. Then I read carefully and clicked on a buried link within the email itself that "no, this did not answer my question", and clicked on link that asked them to call me. Much to my delight (and surprise), I was talking to a service rep within 2 minutes (via a neat 'click to call' service called estara from atg). An apologetic, very nice women (Tessa) was completely unable to address me issue, she told me she'd have to forward my request to the web services team, as she wasn't able to help me.

Lessons: I've already "cancelled" EC2 and S3 although since I had nothing provisioned I'm not sure what that means. Hopefully it will stop new charges, at least. I realize now how dangerous it is to allow Amazon to have my credit card number, and I've removed all banking and CC information from Amazon. If I had seen a growing amount due over the last few months I would have realized sooner something was wrong. But because they just pay themselves with my CC, it didn't register that I was getting a receipt, not a bill, all this time. Second, I'm concerned that someone may have my Amazon information. Third, I have to check my bank and cc statements more carefully. Finally, if I play with EC2 again it's going to be on a different Amazon account.

It's still a mystery exactly what Amazon was billing me for: $7.50 is enough for 75 hours of a small instance, a wierd number. When I find out I'll update this post.

Update: 6 Jan 2009 I finally received a response from "Luke":

Greetings from Amazon Web Services.

I have been notified of your recent inquiry regarding your AWS charges. I have taken a look at your AWS account. These charge is due to a non-attached Elastic IP address associated with your account. Elastic IP addresses that are allocated to your account but are not associated with an EC2 instance will accrue a $0.01 charge per hour. You can view your Elastic IP addresses with this command:

> ec2-describe-addresses

Any elastic IP addresses that you associate with your account remain associated with your account until you explicitly release them. To ensure our customers are efficiently using elastic IP addresses, we impose a small hourly charge when these IP addresses are not mapped to an instance. When these IP addresses are mapped to an instance, they are free of charge. You can use the EC2 API command line tools to release the Elastic IP address with this command:

> ec2-release-address <ip-address>

I also see that you have closed your AWS account. These usage charges have ceased as of your account cancellation. Please note that any applicable charges for January 1 and 2 will be collected at the end of the month.

Regards,

Luke



Wow! What awful customer service on so many levels! First, their emails look like invoices, not charges. Second, they don't explain anywhere what the charges are for. Third, when a customer goes to great lengths to find out what's going on, they don't offer to reverse the charges that obviously should never have been charged. Fourth, they never did answer one of my basic questions: how can I find out for myself what I'm being charged for? Fifth, they don't apologize or take note of the horrible messaging that started this whole mess. The icing on the cake is the last sentence, assuring me that I'll still be billed for the two days in January I didn't use the IP - gee, thanks, Amazon.

I've responded with another email asking for a refund and complaining about their messaging and customer service. For God's sake, do NOT evaluate EC2 unless you really know what you're doing!

Month, Amount
7 $1.32
8 $6.51
9$7.42
10 $6.53
11 $7.45
12 $7.42
Total: $36.65

[Update: they refunded my $36.65. But I found a better bookstore, Better World Books.]