My Development Stack
In both my everyday's work and own development, these are the tools I can't do without. I do mainly work in a LAMP environment, coding from Mac platforms - just hover the icons to know my thoughts about.
Macromates Textmate is definitely a swiss-army knife - keen and compact editor but featured with functions for everybody's needs. After a couple of years dealing with Eclipse [even on Windows before], I had enough of the SLOW ide startup, or even of the massive time needed to scan the whole project.
With Textmate all I need is to drop the project folder over the application icon, then the wholething is kindly managed by the program - from deep folder tree analysis, on which the lightning Search in Project feature is based, to the strong handling of all programming dialects due to the many bundles it is delivered with.
Textmate is just the best 40 [!] bucks I've ever spent on a piece of software, it has no drawbacks at all folks.
When it's time to deal with the remote realms of FTP, there's nothing better than Panic Transmit: while good free and ol' Cyberduck provides a lot of useful features, it's commercial concurrent is so appealing and performant - it has a 2 column local/remote split view, remote editing is very quick, and the sync feature saves you AGES when it's time to update the production environment: I could test locally and deliver to remote teammate almost on the fly, and without caring what to upload every time - blissful.
It handles AmazonS3 services and WebDAV resources as well - again, 35 definitely worthy bucks.
I've never been a true fan of MySQL, I always thought of it as a necessary evil [being wrong maybe], but you can't help dealing with DB design in the [cheap] web-data-layer. After a short hell with PhpMyAdmin [who doesn't remember his or her first time with!] and a longer purgatory with Navicat, I've stumbled upon heavenly Sequel Pro: full Cocoa-fashioned, it simply does what you expect from a MySQL GUI application: save you time when creating, editing or optimizing tables and records.
It fully supports SSH connection, and it has a very solid look. Talking about bucks again, it's free.
I finally got into how important and powerful versioning is, both in solo and team context. Having not just a safe backup of all you work, but a recoverable picture of every stage of your projects mean you can always have nice coding dreams.
After a first SVN experience, I am mainly into git now, and SourceTree nicely fits my needs: it has a nice GUI, it is totally easy to understand, it worked perfectly with my github repos since first try, it is free. Dare to complain?
You can't claim yourself to be a developer if you don't get that overpower feeling when you do thing from CLI in front of other inexperienced users [even if you could have got it faster via GUI of course]. iTerm 2 is Terminal on steroids, it provides lots of useful features over the basic shell client, which you have to understand deeply in order to have full control of you machine, even if you are not a hard Unix fan.
Honorable mentions go to other stuff I do use, in random order:
- Xcode: for MacOS /iOS development;
- CocoaRestClient: take a REST[ful] - minimal HTTP client;
- Reggy: so cute regexp "prototyping" tool!
- Jumpcut: clipboard interactive history made real.
- Marked: a nice markdown fellow.
- Omnigraffle: my pick on charts / diagrams [UML/flowcharts].