Monday, August 31, 2009

Easy installation is a form of elegance

Often my work tasks are relatively easy: read requirements, use my previous experience and perhaps some new research to identify the best tools/frameworks to use, do a quick design, and get the job done. In order for this to be a quick and efficient process, it is important to be able to install software tools and keep them up to date - while taking a minimum amount of my own time.

I am currently running Ubuntu on all of my servers and customer servers, and it makes it faster to just remember how to do things for one distro. Using apt-get is fine for stable software installs, but when evaluating new tools it is usually best to get the most recent stable releases.

I am evaluating both Tokyo Cabinet and Cassandra for a task right now, and needed to install Cassandra. Evan Weaver, who works for Twitter, has written a Ruby gem that downloads the Java code for Cassandra the first time you try to start Cassandra:
gem install cassandra --no-ri --no-rdoc
cassandra_helper cassandra
Love it - a major time saver, and elegant :-)

Kirk Haines has a good writeup on using Cassandra with Ruby.

BTW, another time saver is to build your own Amazon Machine Images (AMIs) that have all of the tools that you usually use pre-installed. Starting a new project takes virtually no setup time, and after modifying an AMI for a customer, let them copy it in addiiton to delivering docs and source code.

No comments: