Archive for September, 2006

Google Reader doesn’t suck!

Google just launched a major revision of Google Reader. I guess they realized that it was just about the worst RSS feed reader ever made. It looks like they completely threw everything from before in the trash an rewrote it from scratch. Which was 100% for sure the right thing to do.

I used to use bloglines for reading feeds, but I got a little tired of some of the bugs. Then I switched to the desktop-based NetNewsWire, which is awesome. The key to that is that you can synchronize your feeds so that you can read stuff at home and at work. But synching is not as good as a web-hosted thing.

So I’m going to try Google Reader for a while. If it lets me speed through feeds at even half the speed of NNW, then I’ll stick with it.

Yegge on Agile Programming and Working at Google

Steve Yegge has a great post about Agile Development and what a load of crap it is. It then kind of shifts into “what it is like to work at Google.” It’s kind of an odd segway, but that’s what makes Yegge so much fun to read.

It almost makes me want to go an apply for a job there, but nothing is worth the commute to Cambridge. Nothing.

Update: thinking about it (the “Google Way” of motivating engineers), it seems to me that it is a perfectly plausible and interesting way of developing software. However, for anyone to actually replicate that process would be quite difficult. Essentially, you need to start off with a massive, nearly limitless cash flow to fund the 95% of projects with insane incentives that will fail. Then the 5% that succeed with 100 fold return on investment make up for it.

It sounds like they have created a startup incubator without all the hassle of pitching to VCs, and all the other headaches that come with starting a company, including the mundane stuff like finding office space, buying bandwidth and computers, getting data center facilities, etc.

The other part of it you need is the initial talent magnet. For Google, it is their smash-hit products (search, gmail, maps) and the reputation/fame of the founding engineering team. I’d say those are their only really big, industry dominating hits.

Only a few companies in the world even have the chance to pull off a process like this. Microsoft certainly could do it: they have the cash, and they have the talent, for now at least. The only thing working against them is that there are an awful lot of smart programmers who would never want to work on Windows, and you probably would need to do that if you worked for Microsoft.

It would an interesting private equity play. Suppose you were Blackstone, and had $4 billion (or $15 billion) lying around. Could you buy some successful startup, with a great team, and Google-ize it? Basically simulate the crazy cash flow that Google has to build up a meta-incubator tied by some common theme. The problem is that there would be a clock: unless you get a smash hit to replace the simulated cash cow in a few years, the money would run out and you’d have to shut it down.

Yahoo! could probably pull it off, if they wanted to. The big problem there is that there net income is only in the $100-200 million range, and their R&D expense is already around $200 million (quarterly). There’s just not much room to say “free food for everybody.” I think the main thing would be that the Hollywood types that run Yahoo! would need to start recognizing programming talent the way they recognize Hollywood talent. Seems unlikely.

Online community just jumped the shark.

Well, it’s probably already been jumped several million times. But this one really got to me.

This is from a marketing survey I got, presumably because I bought a Honda water pump and registered the warranty online.

Screenshot 55

Sigh.

How to setup a local DNS server (idiot’s version).

I like to maintain my own DNS on my home network. So I can give all the machines fixed IP addresses and nice names. It makes file sharing between machine easier, and, of course, lets me ssh around more easily.

The problem is that I’m too much of an idiot to figure out how to set up a bind/named config from scratch. I don’t do it very often, and each time it seems like bind has radically changed the way it works. So I spend hours cobbling together a named.conf and zone files, and finally it works.

This time, I went looking for a GUI DNS config tool, just to get myself going. I want to get the thing started, then I could edit the config files myself to change and add A records and CNAMES. I ended up using gbindadmin. As a productivity/maintenance tool, it’s terrible: you can’t change A records or CNAMES once you put them in, for example. But it got my config going in just a few minutes, and that’s what I was looking for.

Now that I have a new bind running on my ubuntu machine, I can decommission my ancient slackware server and use it for something else. Or at least wipe it out and bring it up with ubuntu or centos.

DIY SMART disk reporter.

Most (all?) SATA drives have self-diagnostics that report hardware problems. There are a number of freeware utilities available to monitor your disks for problems via this feature.

Here is a do-it-yourself SMART reporter. First create this script, and name it bin/macmaint or something.

#! /bin/sh
email=you@example.com
host=`hostname`

diskstatus=`/usr/sbin/diskutil info disk0 | grep SMART | awk '{print $3}'`

#debug
#echo $diskstatus

if test "$diskstatus" == "Verified"; then
    #echo "disk ok"
    /usr/bin/true
else
    #echo "disk very bad"
    /usr/sbin/diskutil info disk0 | mail -s "Disk problem on $host" $email
fi

Next, add it to your crontab, like this.

% crontab -e

05 * * * * bin/macmaint

This will run once/hour, and email if anything goes wrong.

Mac Pro unboxing


Mostly this is a test of blogging from flickr.

Note to self: KVM over remote IP

We have a Raritan IP KVM solution at work. It sort of works, but mostly it sucks. The remote client gets wedged up or disconnects a lot, usually when you are in the middle of a critical reboot or something. Plus it is super expensive (like $3000+).

What I want is a remote IP solution that connects into an existing simple KVM.

This Belkin unit looks pretty promising. The user manual claims to support Netscape and IE browsers, which means FireFox probably works too.

http://catalog.belkin.com/IWCatProductPage.process?Product_Id=278385

But everything like this is so expensive! This one is $700.

I need something for my wife’s office, so I can remotely hard reboot their super-crappy phone system, which gets SQL errors after a while.

Are there any other cheaper solutions that work? A critical success factor is that the remote client works on all browsers and platforms, unlike Raritan.

RRDtool is way cool

A while back I mentioned that I was looking into RRDtool as an alternative to gnu plot.

Well, I did and it is very nice. It took about a full day of hacking to fully understand the concepts behind the tool and get it working the way I wanted. But still it is much easier to work with [than gnuplot --ed] when it comes to time-sampled data. I was able to churn out a nice monitor, and I even made a konfabulator/yahoo widget out of the

resulting jpg file:

Screenshot 53

Powerbook back to Tiger

Remember how I switched my old powerbook to Ubuntu?

Well, I switched back. The finer points (WPA support, good power management)

just made it not worth it.

I did a clean install of tiger, and turned off spotlight and dashboard. It’s

reasonably usable now; I’m going to try hard to avoid installing

anything but the bare minimum on the machine.

So far: only Firefox, Developer Tools and Darwin Ports.

Parallels and Mac Pro

I tried out the update to Parallels for Mac yesterday. The good news is that it doesn’t panic my Mac Pro instantly. The bad news is that it does panic it at least some of the time, and the worse news is that VT-x support is apparently disabled by the boot ROM on the Mac Pro. So everything I tried ran pretty slowly.

This is apparently a problem that afflicts certain Mac Intel Minis, and there are some instructions for adjusting the nvram to enable VT-x. But that’s not something I can really fool around with; if my Mac Pro becomes unbootable, it would not be fun.

I think it’s worth waiting a bit before Parallels is fully baked on Core 2 Xeons.