Everyone in any industry or career has a set of tools they use to do their job. My job is a little odd in that I have my hands in development as well as systems. A developer can say I use these sets of tools while a sysadmin has different needs. I have them all.
So, inspired by posts awhile ago by Westi’s Windows WordPress toolbox and Mark’s Mac/Unix based WordPress toolbox (both of which describe workflow for using subversion and creating patches), I give you my WordPress-and-sometimes-not-Mac-and-Linux toolbox.
Zend Development Environment
Since most of my development is in PHP, it makes sense to me that a year and a half ago I would go with an IDE that was developed for PHP guys. ZDE gives me integrated SFTP, remote and local debugging tools, Project management tools, regex-based search/replace, collapsible code, smart bracing, etc. It even provides inline syntax helpers. The problem with ZDE is that it is a java-based app that is often slow and kludgey and is fairly expensive at $299. Recently, I’ve been checking out Coda which does just about everything I would want in an IDE integrating tools for both “web designers” specializing in HTML/CSS and javascript, but also coders who tend to use system tools as well. However, TextMate looks particularly good as it integrates directly with subversion which I use for WordPress and b5media stuff.
Terminal
Naturally, the keystone of any systems administrator is shell and Mac comes with built in SSH with the Terminal. Generally, at any given time, three SSH windows are open – some remoted to one of our servers and at least one on the local system which is built on Unix itself. I can’t live without the Terminal and in some cases work quicker and more effectively from the command line than from a GUI.
Fetch
Fetch is my FTP client of choice. I say FTP client, but I rarely use FTP for anything as it is a highly insecure protocol. Fetch, however, provides SFTP access and rarely drops connections to servers. Somebody told me that the dog icon that represents Fetch is scary, but I don’t care.
SmartSVN
SVN, also known as subversion, has become a critical part of our infrastructure. It is a change control system which allows all our developers work without screwing each other over. It also makes it easy to roll back changes that take collateral damage. Lately, I’ve been using svn more from the command line, but in the event I need a GUI, I’ve found SmartSVN to be great on Mac (though patches it creates contain absolute paths which don’t work very well when submitting patches to projects with different absolute paths). On Windows, the best svn client around, in my opinion, is Tortoise.
There’s more little things around here or there but that’s the bulk of it. What do you use?