My Development Environment
September 13, 2004 – 11:57 amAfter 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.
- Cygwin
- A Linux-like environment for Windows, which brings with it a lot of other tools (like SSH and GNU Make).
- Eclipse
- 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).
- Putty
- An open source SSH client for Windows and other platforms.
- Emacs
- Yes, I still use it for quick-and-dirty text editing, particularly when I’m logged into the Linux command line via Putty.
- Firefox
- 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.
- WinSCP
- An open source SCP and SFTP GUI. Very nice interface; I often leave it running in the background.
- OpenOffice
- 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.
- Tomcat
- A Java servlet container; we use it for running Hippo.
- Subversion
- 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).
- Hibernate
- An object-relational mapping system for Java; we use it in Hippo.
- HSQLDB
- A lightweight pure-Java relational database that we sometimes use with Hippo.
- Postgres
- The “real” database we use for production deployment of Hippo.
- Tapestry
- A web presentation layer built on top of Java servlets; we use it in Hippo.
- Python
- 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.
- Pine
- 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.
- SpamBayes
- 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…
- GIMP
- The GNU Image Manipulation Program, which I use on those rare occasions when I’m feeling artistic.
- BlitzIn
- 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.
- SquirrelMail
- I don’t actually have this installed on my personal machines, but it runs on the other third-bit.com server, which a few of us use for personal stuff.
- WebChess
- 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.
- PDFCreator
- Pretends to be a printer driver, but creates PDFs.
Two tools I wish I could keep using after I leave HP are:
- Perforce
- 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…
2 Responses to “My Development Environment”
I’m using the free version of Trillian, and I have no problem keeping multiple protocols open at the same time - I have AOL, ICQ and Y! on right now.
By - irving - on Sep 13, 2004
yeah, trillian is suposed to be aboe to connect to multiple accunts at once, and it is. i am currently using trillian also, no problems… im on yim msn icq and aim atm, so im sure it works :-p
By yurivish on Sep 14, 2004