May 2010

I got called a “luddite” again the other day. This time, it was in reference to the fact that I choose not to own a “smart phone”. I have a very dumb phone, and it still has more features than I want.

I want Fennec to succeed and I’m proud to do the occasional bit of hacking in support of it, but in my own personal life, browsing the web on a telephone just isn’t something I’m interested in. Nor is running “apps” on a telephone. I want my phone to make calls and maybe — maybe, only at certain times of my choosing — to receive incoming calls. (That’s why I leave it turned off most of the time except when I want to make a call). I grudgingly learned to use text messages just because that’s the only way to communicate with certain of my family members.

I would actually rather not have a cell phone at all; the fact that I own one is a concession to my family.

Most of the new gadgets that have come out in the past five or ten years hold no appeal for me, because they’re all predicated on the assumption that you want to have internet access everywhere you go without lugging a laptop around. I’m sure that’s an important thing for a lot of people, but personally I’ve never found carrying a laptop to be some kind of huge burden. If I want to do some hacking I bring it along, and if I want to disconnect and decompress my brain then I leave it at home. I’m content with these choices, so I’m not interested in any kind of smaller non-laptop internet device.

Besides, I don’t really feel comfortable with any computer or computer-like object unless I can run Emacs on it.

There’s a good post by Hang at Bumblebee Labs (a blog that is well worth reading, by the way) titled The Silicon Valley "Bubble". Hang argues that the real difference between Silicon Valley and the rest of the world is

In the valley, people are willing to adapt their behavior to fit the software.
Everywhere else in the world, people adapt the software to fit their behavior.

I think there are a lot of other weird things about Silicon Valley besides this, but Hang’s definition sums up my attitude towards cell phones and smart phones. See, I’m not a Luddite: I’m just very picky about what technology I’m willing to adapt my behavior for.


BumpTop makes me sad.

BumpTop is a 3-d, physics-enabled desktop environment, where you can smack icons into each other like billiard balls, throw documents into messy piles, pin sticky notes to the walls, etc. “just like in a real desktop!”.

I’ve actually met a guy or two who worked on BumpTop, and they were good people who were obviously smart and hardworking, so I feel kind of bad dissing their software. But they missed something really obvious, which is that the “desktop” in GUIs is a zone of zero productivity. You don’t get work done there. You don’t receive useful information there or even play games there. It’s a place you go to launch an application if you can’t find it in your Dock or Start Menu, to search for a file if you can’t find it in the Open dialog box, or a place you go to manually rearrange your filesystem if you’re obsessive about that sort of thing. Interacting with the desktop is generally a last resort after other, faster methods of getting to your data have failed you. About the only useful thing you do there is copy files between disks.

Therefore, you want to minimize time spent on the desktop and maximize time spent in applications having fun or being productive. I believe the way to “improve” the desktop is to eliminate the need for it by making it easier to instantly access any of your data in any of your applications.

Dressing the desktop up with goofy animations and physics is completely beside the point. You can make it act more like a physical desktop, but why? The fact that my physical desk is covered with messy piles is a bug, not a feature. BumpTop is a case of taking a computer metaphor too literally, as well as a case of doing something just because you have the technology for it. It looks cool, but I have yet to hear anyone, even its creators, describe a single compelling advantage to using it. So it makes me sad that skilled programmers have put a lot of time into this thing.

Anyway, BumpTop has now been bought by Google, so good for them, I guess. There has been a lot of speculation that Google wants their expertise for developing some kind of multi-touch interface for Android phones or tablets. I wish those guys well and hope that their next project is something a little more practical.

Here’s a video with interviews from ROFLcon on the topic of “What makes a meme go mainstream”.

They use the phrase “internet culture” a lot. It annoys me a bit how they lay claim to “the internet culture”, as though culture meant nothing more than in-jokes. Most cultures have their in-jokes and shared references, of course, but what the ROFLcon folks are talking about is really the culture of just one corner of the internet — anarchic, anonymous image-posting discussion boards about nothing in particular — which generates a steady stream of silly jokes about how “longcat is long”.

To me, internet culture is something much bigger and broader and more subtle than that. A culture is a whole set of values, values that you can generally assume other people in the culture share with you even if they’re not explicitly mentioned. I think that internet culture comprises values like “I have the right to comment on, criticize, appropriate, and recontextualize anything I see.” And “My personal page about my garden and my political opinions has just as much right to be up on the web as does.” And “Nobody else gets to decide what information I do and don’t have access to, or what I should and shouldn’t be able to say.” And “If I can’t send a direct personal communication instantly to anyone on the planet, something is wrong.” We’re in a pretty exciting period right now, where these values are blending with, and in some places coming into explosive conflict with, various national cultures around the world. Think Iranian protesters posting videos of police brutality, or Chinese bloggers ridiculing Chinese censorship laws. Nobody knows how it’s all going to turn out or what new forms of expression will arise as a result of this period of rapid change.

If “internet culture” came to mean nothing more than “Epic FAIL” and Pedobear references, I would be very sad. I’ve got nothing against 4chan memes per se: I have been known to use “I can has” speak in casual conversation, and I even own an “all your base” t-shirt. It’s just that there’s so much more to internet culture than that stuff, you know?

(Digression: I’m a little sad already that “meme” has come to mean “joke that gets reposted a lot”, or “quiz that all your friends are reposting to their livejournals”. When Richard Dawkins made up the word, he was trying to start a conversation about the dangers of groupthink and self-reinforcing, self-propagating ideologies. It’s like how “avatar” — originally meaning the incarnation of a Hindu God! — has been downgraded to mean a tiny square picture next to your name on a message board. People are taking big ideas and defining them down to the level of what the technology currently supports.)

So anyway, question for discussion: Do you think there’s such a thing as “internet culture”, and if so, what do you think are its core values?

The benefits of code review are many. Not only does it help spot potential bugs, unhandled edge cases, less-than-perfectly-readable code, and architectural suboptimalities that the original developer may have missed; it also gives the reviewer a chance to learn about parts of the ode they don’t normally work on, and gives both parties a chance to learn new tricks, learn better style, and generally improve their coding skills.

The only problem is, doing code review right is hard. It’s a lot of work. If only our tools could make it easier…

And that brings us to the topic of this week’s Design Lunch, where Clint Talbert is going to talk about streamlining our code review process by integrating Bugzilla with one of two code-review tools: either Splinter or Reviewboard.

Clint will be looking for feedback on which tool to choose, on what workflows it needs to be able to support, and other aspects of the code-reviewing user experience.

As usual, the Design Lunch is 12:30pm Pacific time this Thursday, in Ten-Forward in the Mountain View office, and anyone is welcome to call in or to watch on