Saturday, July 29, 2006

Subverting Source Control (and the Rise of Functional Languages)

Now that Google has ported Subversion to their infrastructure, it must be about time for it to go out of fashion. I hear that large corporations are using Subversion quite extensively internally, which has got to be the kiss of death. So what's next?

Predicting the future is a dangerous business, but I'm quite interested in Darcs. It's entirely decentralized -- each installation stands entirely on its own, with no explicit branching required. The article linked above makes it sound fantastic. I guess I wonder if that's practical for large projects with lots of history (thousands of files, tens of thousands of transactions, large binary artifacts). But as much as Subversion makes branch management easier, it's still branch management. Arguments about who merges what to where rage eternally. And it's too easy to lose important version commit comments.

Oh, and it's written in Haskell -- a purely functional language. It sounds like a dare: write a program whose sole concern is state (of the source repository) in a language which thinks state is a dirty word.

Now playing: Raindrops Keep Falling On My Head.

Technorati Tags:

A New Mac

When my hand-built two processor AMD machine bit the dust earlier this year, I resigned myself to navigating the maze of modern hardware to make a new one. After all, I make my living programming C# day to day, so I need a wintel box at home, right?

Well, I decided I was tired of million-watt heaters making too much noise under my desk. I’ve missed Unix for a while, wanted a small computer, wanted to do video and picture editing, already had a 23" Apple display... so clearly I need a Mini Mac!

I purchased a week ago, upgrading the memory to 2GB and buying an external firewire hard drive. This was mostly so I can run a windows virtual machine using Paralells software for the windows software I won’t be able to live without. Meanwhile, I’ll be living the alternate world of Mac and open source software.

The score so far

I miss my Home and End keys. I know it's a funny reaction to post first, but their loss was very disconcerting. I got used to Apple-Right and Apple-Left fast enough, which brings me to

You can have your Microsoft Natural Keyboard and eat it too. It only took one Google to figure out that my Alt key was now my Apple key. (Which apparently is properly called the Command key, and is a bit of Swedish iconography found after Steve Jobs decided there were too many Apples on, er, Apples.) The point may be moot, because for those addicted to the split keyboard, Microsoft is apparently coming out with a Mac version of their keyboard. Of course they won't be allowed to put an Apple on their keyboard.

Stuff really does just plug in and work. In a fine bit of showmanship, when I plugged my HP LaserJet into the USB port, not only did it just install, but it actually put a real picture of the printer on my machine. The external FireWire drive also just turned on, plugged in, and figured itself out. While I don't doubt that more exotic hardware would require a few glances at a manual, I loved not worrying desperately about whether to put a CD in before or after the "autodetection" in Windows, and whether I needed to lie to the computer, my devices, or myself about having drivers... but I digress. And when I wanted to find my Microsoft network shares? No problem. In fact, it's faster than browsing my (probably misconfigured) network from my XP laptop. All in all, the "it just works" claim is true for stuff I had lying around my house. Seems like the smart-aleck kid from Galaxy Quest is right.

It's so pretty. The icons are all vector-graphics, so they scale up and down beautifully. Steve Jobs was apparently smitten in college by a calligraphy class and it shows in the stunning font rendering on the mac. Windows is no slouch these days, but the whole damn desktop in OSX looks like it was professionally published. And yes, XP is largely stolen from OSX. Oh well.

The built-in software suite is great -- except iPhoto. I loved Mail, iTunes, Address Book, iCal, Preview, and friends. They were all quite easy to use, fast, and simple. I suspect two years ago iPhoto was very cool. But I have over 7000 pictures on a networked drive. Perhaps I could have forgiven iPhoto for taking an hour to import them all and taking two minutes to even start up... but Picasa just ate them for lunch. I'll be waiting for that to come out on the Mac.

Parallels Desktop for Mac seems to work. Now this is half the reason I bought the Mac: it now comes with Intel chips so I can still run Windows when necessary. I've just finished installing the Windows XP copy that used to be installed on the dead PC. It took about 2 hours to install all the patches and service packs, but it came through okay. I haven't done much with my virtual machine yet, but it does at least reliably boot. I did use the "Parallels Compressor" and was somewhat unimpressed. It doubled the size of my virtual hard drive and then caused Parallels itself to not restart until I rebooted the Mac. That's not supposed to happen!

Plaxo works on the Mac!. Thank goodness, because I didn't want to deal with yet another contact manager. Kudos to Plaxo for writing a robust synchronizer. I deleted ten contacts on my Mac, looked over to my XP box and saw Outlook flickering with updates before I had even done anything!

The Mac likes to go to sleep. It sleeps and wakes up in less than two seconds. Now that's cool.

It's quiet!. The silence is deafening after the old XP helicopter I had under my desk. I know I paid a performance price by buying the Mac Mini, but the dual core chip makes up for a lot, and the peace and quiet in the house are well worth it.

It's fast enough. I was worried about performance -- after all the Mac Mini is essentially last year's laptop stuffed into a sexy desktop case. The extra RAM seems to help a lot.

Now playing: Rubina by Joe Satriani

Hello, World!

After some fits and starts, it's time to get a blog going. I get too much benefit from the blogs out there, and have too many opinions queued up to not have one myself. Besides, I have a couple of weeks to myself as Amy starts her two week language immersion course in Sancerre, France!

Now playing: Rococo Variations, op.33 - Variazione VII. Allegro vivo by Tchaikovsky

Technorati Tags: