Times change and, as we all know, so does the web. Over the last year or so the tools I use to work on the web have actually changed a lot. From my IDE/Text Editor to the way I move files and even how I test sites my toolbox has evolved to something that, at least for me works pretty well.
So what makes up a web developer toolbox? If you were to ask 100 different web developers you would surely get 100 different answers however here is what works well for me.
I was a fan of FileZilla for a long time, but after seeing the speed of Transmit I was hooked. It is by far the fastest file transfer client I’ve seen on Mac and the only one that can reliable import and export site definitions without causing problems.
I don’t test everything locally, but for what I do MAMP PRO just makes doing so easier. I can test multiple PHP versions, Apache configurations, and more with just a couple clicks. Heck I don’t even have to edit my local hosts file as MAMP PRO takes care of it for me. Like all the tools in my toolbox there are alternatives, but none of them can make testing as easy as MAMP PRO can.
I do a lot of work with SVN and I use Cornerstone to manage all of it. From tagging and branching to merging and more Cornerstone just does is all better than the competition. I do wish it had an import/export feature for repository configurations but short of that it’s pretty much perfect.
It’s easy to lose track of what you’ve changed in a file and for when you do there is Kaleidoscope. This visual diff client makes finding differences in files easy and does so without anything except dragging and dropping the files I want to compare into it.
If, like me, you manage MySQL databases on multiple servers than Navicat is the tool for you. It can handle all aspects of database manipulation and, unlike other MySQL clients, makes backups, imports, and data transfers as easy as a couple of mouse clicks. For example, if I want to move a database from one server to another I can create an empty database on the second server and drag all the tables from the first server into the second. Navicat will take care of the rest. How much easier can it get?
This is one of the older tools in my toolbox and although I find it bloated and cumbersome for many tasks there is still no good alternative. I use Photoshop for all sorts of basic image manipulation and optimization and, unless something major changes, I will continue to use it for the foreseeable future.
Although the way I use Chrome has changed a lot lately it is still my primary browser. As a Google Apps user I had, for a while, used Chrome for everything from email to my phone. Now it’s primarily just a browser for me (I’ve moved to native OS apps for email and other functions) but it is still the fastest and cleanest browser I have used. I do keep Firefox on my computers as well but I rarely open it anymore. Chrome can pretty much just do it all.
*This is an affiliate link. I get extra free space if you sign up using this link.
As I have more than 1 machine that I use for development Dropbox has been a lifesaver. It’s a great feeling knowing that every time I save a file it will “just be there” on my other computers. No realizing I forgot something I needed, no worries about backing data up, and most importantly, no worries about the reliability of the app itself. I’ve used Sugarsync and others and while there are other services with more features Dropbox easily beats them all where it counts, in speed an reliability.
What can I say, it just works. I used Windows for years and for much of that time it seemed I spent more time keeping Windows running than I did getting actual work done. Sure if I had to I could use something else, but for me the reliability and ease of use of Mac is simply worth it.
For both hosting and testing I use Amazon AWS’ micro instances in EC2 to spin up on-demand servers for applications ranging from a standard LAMP stack to custom application servers. They’re fast, they’re reliable, they’re cheap, and, most importantly, I can configure an EC2 instance any way I want to. If I make a mistake I can rebuild the server in hours rather than days and I don’t need to keep any of my own extra hardware going.
That pretty much sums up my core toolbox. Of course like any good developer I have a host of goodies thrown in on the side, but that’s for another article.
What’s in your Toolbox?