My Development Environment

After I leave HP, I'll be doing development on at least four different machines: my lightweight Windows XP laptop, the desktop XP machine at my girlfriend's, Pyre (a single-processor Linux box), and the CS department's CDF lab machines. I've been keeping a log of the tools I've installed; here they all are.

A Linux-like environment for Windows, which brings with it a lot of other tools (like SSH and GNU Make).
The Java IDE we're using for Hippo. I also have its plugin for Checkstyle (the Ant and JUnit plugins came with Eclipse), and will be installing Spindle, a Tapestry plugin, soon).
An open source SSH client for Windows and other platforms.
Yes, I still use it for quick-and-dirty text editing, particularly when I'm logged into the Linux command line via Putty.
My preferred browser, partly because of its tabs, and partly because so few hackers write Mozilla-specific exploits.
Microsoft Messenger
One of the biggest annoyances on the web today is the way different instant messaging systems refuse to talk to each other. I tried using Trillian, which speaks multiple protocols, but (a) it kept locking up on me, and (b) I could only run one protocol at a time, which kind of defeats the purpose. AMSN is an open source multi-platform client for MSN, so using it doesn't lock me into any particular OS.
An open source SCP and SFTP GUI. Very nice interface; I often leave it running in the background.
An open source alternative to Microsoft's Word/PowerPoint/Excel trio. I haven't been impressed by OpenOffice's UI or stability yet, but it's free, and runs on Linux and OS X.
Apache Web Server
Yeah, its configuration files are a pain, but it's easier to use than IIS, and at least I don't have to figure everything out twice.
A Java servlet container; we use it for running Hippo.
Our version control system of choice. I still use CVS to maintain my personal web site, but expect that I'll move to Subversion at the end of this term (once I know how to avoid its sandtraps).
An object-relational mapping system for Java; we use it in Hippo.
A lightweight pure-Java relational database that we sometimes use with Hippo.
The "real" database we use for production deployment of Hippo.
A web presentation layer built on top of Java servlets; we use it in Hippo.
My current favorite language; I build a lot of little tools in it, and will be using it in the book I'm writing for the Pragmatic Programmers.
The old-fashioned text-mode mail reader which I use on the CS machines. Why a text-mode mail client? Because the only way I could access the department from behind HP's firewall was via Putty.
A very cool spam filter which plays well with Microsoft Outlook. Haven't yet figured out how to hook it up to Pine, but I'm working on it...
The GNU Image Manipulation Program, which I use on those rare occasions when I'm feeling artistic.
A free real-time chess client. My brother and I used to have accounts, so that we could keep track of our games. These days, I log in as "guest" and play unrated lightning games when I should be rewriting Java cryptography code.
I don't actually have this installed on my personal machines, but it runs on the other server, which a few of us use for personal stuff.
A rather clunky PHP application for managing on-line chess games. I have five games going with friends right now; I lose more than I win, but I always enjoy playing.
Movable Type
A popular web logging system. Like SquirrelMail, it runs on our personal server; it also runs the Pyre blog.
Pretends to be a printer driver, but creates PDFs.

Two tools I wish I could keep using after I leave HP are:

The best version control system I've ever used. Our group at HP has been using it for almost four years, and my boss figures it saves 6-8 developer weeks per year for a team of about a dozen programmers. If Subversion had copied Perforce a little more closely, the world would be a better place today...
Microsoft Visual Studio 6
The only entry in this list without a URL, because Microsoft no longer offers it. I haven't used Visual Studio .NET on a real project yet, so I don't know how it measures up, but VS6 was fast, reliable, and had a great debugger. Eclipse has a long way to go to match it...
comments powered by Disqus