Tuesday, July 08, 2008

some tech bits that are making me happy

At Linden, we had a white board which contained all the technologies that had not yet screwed us. At one point, it had a lot of different technologies, applications, and programs, but over time they were erased until we were down to grep and less. Such is the way of software development. I've been using a few bits of technology that are new to me, both during my teaching/consulting/speaking time and now as I spin up on new technology at EMI, and four have been added to my wall.

The first is TextMate, a coding text editor for OS X. Although it has a couple of quirks -- hitting tab with a block of code selected replaces the block of code with a tab?! -- it is lightweight, handles lots of languages and scripts well, and plays nicely with the command line. I suspect that I could get XCode to do everything I currently use TextMate for, but somehow XCode seems too heavy weight for Ruby, Haskel, JavaScript, and other small, light coding tasks. Yes, I realize that if I was a Real Geek (tm) I would just use Emacs or Vim, but I am secure in my geek cred.

The second is Git. We used CVS and Subversion at Linden and Subversion was my default source code manager, but after mucking around with Git, I have a bit of a crush. I've listened to the Siren Song of distributed source code control before, but after [name redacted] failed to play nicely with the Second Life code tree, I had myself tied to the mast. However, two years later, progress has been made. Git seems to Just Do What I Want, including properly handing file deletion. I haven't yet thrown a large project at it or shifted directories all over the place, but so far Git has been fast, stable, and perfect for my needs going forward. Even better, it integrates nicely into TextMate! Been playing with GitHub -- an online service that makes you glad to be living in a world governed by Moore's Law -- but don't have enough data yet, other than the interface being very clean and easy to use.

Third, I have high hopes for Basecamp. Two days of data entry later, nearly all my thoughts on how to tackle EMI technical challenges are crystalized, partitioned, and shared. Basecamp is very fast, has just enough features, and is cheap enough to provisionally move onto the wall. Lots of other project planning and tracking software leads me to assume that Basecamp will eventually dash my hopes, but so far it has done a good job of delivering on what it promises. More reports to come.

Finally, I've switched to using Fluid for various Google app domains, Basecamp, Github, Facebook, Blogger, and Google Calendar. Fluid is a "site specific browser", one of those web terms you probably haven't heard of yet. You might hear about it in the future, but more likely by the time it gets to the mainstream, OS X will have just integrated it into the OS. Fluid makes web sites act a lot more like desktop applications and other than not playing well with gmail + gchat has been working very well. It has a couple of really nicely thought out features. For example, when using Basecamp, I've found it useful to have two browsers open -- rather than on tabs -- because you can't always get all the info you need to refer to on a single page. When you reopen the Fluid basecamp app, it remembers how many pages were open, their screen positions, and where you were. Slick!

So there you go. Four technologies that have yet to screw me, which is pretty high praise. We'll see how long they remain.


clintschaff said...

Thanks. I used to BaseCamp but recently switched gears to CentralDesktop. Curious if you have tried CD and how you think it compares to BaseCamp...

cory ondrejka said...

Why'd you switch, Clint?

zakiulla said...

The moors law is working very good in this decade and may be after,
but some day it will be off line in the comming generation.

hope fully it sticks to the practicle in the future, i would like to know more about Fluid, can i use
this in my ongoing project for the face book, will it be help full to me?
M into a new project of developing application's for the face book. you can check it out here.

Brad said...

No longer need to use Fluid now that Google Chrome exists (http://google.com/chrome). Chrome runs all web browser tabs on their own process so that if one crashes the others stay alive.

sex999 said...