There are many tools I use on a day-to-day basis to get things done. John Long posted a similar list on his blog, and I thought it would be interesting to make a similar list for myself. Without further ado, here is my toolset:
Scratch pad. To start things off, my development environment would be incomplete without a good scratch pad. I love whiteboards, but I find they’re most useful when collaborating with others. On my own, I tend to jot down notes and make sketches in a little notebook I keep beside my computer.
My computers. I have one of the 24” iMacs, and a 13” MacBook. Both tools serve invaluable purposes in my daily routine. I got a small laptop for its portability. This serves me very well when I’m mobile. It works great for code editing, but makes graphics editing difficult. When I’m at home, I use my iMac whose wide screen is perfect for any task.
Vim. Where would I be without my beloved Vim. Many people have tried to woo me away from Vim with fancy IDE’s and nifty graphical editors, but I always return. I’ve been a diehard Vim user for over 10 years now, and I’ve yet to find anything with which I am more productive editing code. My .vimrc has been tweaked to perfection (largely untouched for 6 years), and the mouseless commands are ingrained into my psyche. I have MacVim installed on my computer, but almost all of my editing is through Terminal both for remote servers and local editing.
Terminal. I hail from the Linux community. Linux has been my native language since 1997, and I’ve only recently switched to Mac. This is probably why I feel most comfortable in the Terminal application. Give me a Terminal and a web browser, and 99% of my development needs are met. There is a beautiful efficiency one can achieve in the console and the mouse just gets in the way.
Ack. A recent, and now invaluable, addition to my toolbox is Ack. This little script makes light work of searching through a code base for a particular string. It is now one of the first things I install whenever I get access to a remote server somewhere.
Firefox and Chrome. Since most of my work is as a web developer, I obviously use a browser as part of my core toolset. Let me just say that I love Google’s Chrome. It is lightning fast and appeals to my minimilist nature. For most of my browsing, I use Chrome. Still, nothing rivals the tools available in Firefox for debugging. While webkit’s inspector features are nice, they don’t hold a candle to Firebug. When the Chrome Firebug extension is developed as polished as the one for Firefox, I’ll switch to Chrome and won’t look back.
Lineform. I’ve been searching for a good vector graphics editor for the Mac. I’ll probably have to break down and buy Illustrator because there really isn’t much good out there. I do have Lineform which usually is sufficient to meet my needs, but is not polished and does not have a lot of bells and whistles. Anyone know of a good vector graphics editor that is affordable (e.g. not Illustrator)?
Pixelmator. It is the same situation with a graphics editor. Coming from the Linux world, I am most comfortable with The Gimp. Since the Mac version of The Gimp is painful, at best, I have been searching for a good native graphics editor. I’ve settled on Pixelmator. Again, this meets my needs most of the time, but I do find the interface a bit frustrating.
Gmail. I use Gmail for email, task management (sending email reminders to myself), and as a storage for ideas. I have several labels used for different categories of ideas. Whenever I have an idea I want to remember, I email myself and file it in there. As the idea develops, I keep replying to that conversation. This works great for jotting quick notes that I want to remember. I also store screen captures of designs I like in a label in Gmail. This collection of images is often the source of inspiration for much of my web design work. And, of course, I use the keyboard navigation for most of my interaction with Gmail. The day I discovered Gmail had Vim keybindings was the day I fell in love with Gmail and have never looked back.
Adium. Only because nothing better exists.
What about you? What is your current toolset?