Getting the Whole Thing Done (comments on Google Wave)

I was excited to see some of the videos around Google Wave. And what I think they've done brilliantly is to build enough of what we used to call a "Demo", based on real tech. They've very simply picked one of the "right problems" to solve, and they've actually dealt with all the details required to get something done.

Most software projects are robotic foster children, cobbled together by program managers who mostly think of their jobs as copying what other people have done to have "feature parity", and engineers who think of user experience as a necessary evil. It's not an experience that balances the best of user needs with the greatest technology you can dream about.

You can be an innovator in one piece of the puzzle and forever whine that you were ahead of your time (I've done it), build a great technology that nobody uses, or insist that things should work a certain way but never build them. But the people who get it done work harder and slay a lot of beasts along the way, not by copying what others do, but by really trying to finish something new, they should be commended.

One of the things I've noticed is, when you start with the right problem and really do some work on it, you enable a new way of doing things. Consider that Flickr started as a gaming platform, and ended up solving some problems that enabled a new kind of community. These things are a different slice against the problem space, and a way of not letting the technology limit what can be done.

Our Hello product, which never made the hurdle to being on the Web, also did some incredibly novel things on a tech level. The idea that conversations were documents with all kinds of media, that you could merge participants into...yeah, that's very familiar to me.

I do believe that these things can only happen on small teams that really own a problem. They can't be told no, they can't have a surrogate parent dictating UI standards or technologies to be used. Because for the most part, these top-down choices keep you in the box that was there before.

Once you've seen this happen a few times, you understand that there are some technology paths that lead to magic. When you find yourself considering a technology that if you built it, you could use for 10 different applications, without spinning off into a 200-page spec or a mess of edge cases, there is magic there. The things you can keep simple, and still see the path forward, those are the great ones, those are the real enabling innovations that spur ten years of growth.

Similarly, to make good products, you have to have a belief that certain things should be both possible and easy for people to use.

To use a little example, we built drag and drop into the browser in a dozen proposals and demos and never got critical mass around distributing it. Drag and drop into the browser was one of the first conversations I had with the Blogger guys when we were talking about Picasa and Blogger/Google working together in 2003, and it got really shipped after 5 years. Man, I could tell you a dozen neat tricks for communicating with a webpage, but they're not something you can use, and that's not good enough.

The "Demo" piece of this is the belief that this should be easy and possible, and the will to make it happen. Attaching drag and drop photos into Wave, and making it important to the experience, and getting over that hurdle to convince everyone that it's obvious that it should happen. That Demo is an important act, because it sets a path for everyone to follow.

Technology innovation and user experience is this story that is very hard to tell as you're doing it, but is completely obvious in retrospect. Once someone innovates, it's obvious to everyone else that it always should have been that way, but it isn't obvious when you're doing it. So I do have some respect for the people who can put their arms around the whole problem and get something done.

I don't usually quote Larry Ellison, but I'll make this exception:
There are really four phases. In phase one, everyone tells you you're crazy and it's the stupidest thing they ever heard. In phase two, they say, "There is some merit to the argument. It's still crazy, but there's some merit to it." Phase three is, "Well, we've done it better than they have." And phase four is, "What are you talking about? It was our idea in the first place."

Earthquakes, from the Wackshit Citizen Science Department

Lorna has an art studio about 60 feet from our wireless router. So mostly it works, and on 98 out of 100 days she streams iTunes music from my computer, and she paints with her music playing.

But one day a couple weeks ago, the music would.not.stop.skipping. 3 hours of it. We reset all the routers, looked for secret settings in the firmware, tried to move things around.

"Rebuffering..." declared iTunes. And "rebuffering..." And "rebuffering..."

Finally, Lorna got fed up, bad mood, can't paint without music. Decided I could, should, and would fix it, and walked across the yard.

Arriving in my office, she found me looking a little bit shaken. We'd just had an earthquake, a quite big one.

She hadn't felt it. That was funny.

And iTunes worked again.

But we didn't think much of this until a couple days later, when we were talking, and, do you think? They could have been related? Maybe EM interference? No way? But the timing?

WE HAVE TO TEST THIS!

So I wrote some scripts to download stuff continuously from her Mac, out back. Measure the bandwidth, graph it.

So! Here is our little internal toy monitor thing: http://quake.herf.org/

How weird that you can monitor my wireless remotely. But now you can. Just what you wanted.







Today, there was an earthquake, and we didn't notice much on our little monitor (screenshot nearby). But it wasn't a big earthquake, so there's still hope.

And maybe, one day, it will catch something, and besides, I have to keep everyone entertained somehow.

Ramdisk for Photoshop OMG FAST

I happened to have 4GB of RAM lying around from a recent server rebuild (don't ask...)

So I stuck it in my XP box, giving me a total of 6GB. Brilliant thing to do for a 32-bit OS that only supports 2GB, right?

Well then you get this thing called Ramdisk Plus.

And you make a 3GB Ramdisk in "unmanaged" mode, which XP mostly doesn't notice because it doesn't care.

And then you tell Photoshop it can use that disk to swap. And oh boy, it does.

Here's perfmon showing 6000 writes/sec at about 500MB/sec while running "Add Noise". It does more than that if you ask nicely.