I was asked by a junior developer I’ve recently started training which tools I used regularly when developing, so I decided to document this information here, in case it’s useful to anyone else. I have lots more software installed than this, but I’m only going to concentrate on those tools I use for my development work.
Hardware
I use an Apple MacBook Pro as my main development machine. I also have a Mac Mini, which is sometimes used as a testbed server or client, depending on my needs at the time.
When working from home, I usually have an external 19″ monitor connected and run my browser on the right-hand side monitor and my IDE (or whatever else I may be using) on the left-hand side.
Software
I use the following pieces of software:
Operating Systems
- OS X 105.5.5 – Naturally!
- Windows XP SP2 – In a couple of VMWare Fusion 2.0 VMs, purely to host MS SQL Server 2000/2005
Browsers & Plugins
- All the usual browsers, although Firefox 3.0 is my weapon of choice.
- Web Developers Toolbar
- Firebug
- ColdFire – If you’re a ColdFusion developer, these three plugins are essential
Servers
- Apache (from the XAMPP package)
- ColdFusion 7.02 (or 8.0, depending on the clients platform)
Databases
- MySQL – running natively (from the XAMPP package)
- MS SQL Server 2000/2005 – running in separate VMs
- Aqua Data Studio – Not a database itself, but a wonderful tool for managing databases, especially in an hybrid environment, where you may have more than one type of DB, or where you are transitioning from one DB to another
Editors & IDEs
- CFEclipse & Aptana, running on the Eclipse platform
- Textmate – for adhoc edits
- CSSEdit – easiest way to maintain stylesheets
Graphics
- Adobe Fireworks – Great tool for preparing web graphics
- Pixelmator – neat little graphics tool – much less ‘busy’ than PhotoShop
Source Control
- SubVersion – Version control system of choice
- Versions – SubVersion client
- SubClipse – Eclipse plugin
Development Resources
- Ant – Great tool for automating deployments and testing
- jQuery – Cool JavaScript library – makes JS development much simpler
- qForms – Wonderful JavaScript form validation library
Note taking, Administration & Documentation
- Circus Ponies Notebook – Really useful for keeping all those notes which normally live in .TXT files or on Post-it notes – I keep a separate file for each project
- iWork Pages ‘08 – No, I *WONT* use Word to produce your spec/report/docs! B->
- NovaMind Pro – Mindmapping tool – absolutely essential!
- OmniFocus – Todo list manager
- OmniGraffle Pro – Used to create Visio-like diagrams for documentation
- OmniPlan – MS Project compatible Project management suite
Communications
- Adium – MSN/ICQ/GTalk-compatible IM clent
- Skype – VOIP client
- Spark – Jabber client
- MS Remote Desktop Client – For when I have to remotely access Windows servers for clients
- Vine Viewer – For my more enlightened clients who use VNC, as I do on all my machines at home
- Thunderbird – Email client of choice
- Transmit – FTP client, with synchronisation capabilities
Other Tools
- Dropbox – used to synchronise the code on my two Macs together
- Guiffy – file/folder comparison tool – similar to Beyond Compare, but not as good. I have been known to use BC on one of my VMs, as it’s a far superior tool (apologies to the author of Guiffy, but it just is!)
- Quicksilver – provides fast access to docs & apps without using the mouse – normally the first piece of software I install on a new Mac
- Mozy – offsite backup tool, used for my docs and code
- ARRsync – Secondary backup tool – mirrors the same folders as Mozy, but to a server I control, rather than into Mozy’s ‘cloud’
This list isn’t a ‘best of breed’ collection necessarily, just the tools that I’ve found that work for me. If anyone has any recommendations about anything better than anything I’ve listed, please feel free to comment.
Leave a Reply