Last year I posted a few items about my Joomla template toolkit and other development tools I use to get things done. A few things have changed in the last six months in terms of how I go about creating and deploying templates and so I thought a few days in to the new year it might be a good time to revisit my must have apps for template development.
Some of the changes to the apps that I use came about because I needed to find a tool that was able to do a certain task, while other apps are in here just to help shake the work flow up a little. I think there is a healthy tension between using apps that you know well to help with productivity and changing to new apps to avoid getting stale in your workflow.
Who knows what I will be using in 6 months time from now but the following applications are crucial to me now.
1. Assembla for Project Management
Last year I used Basecamp pretty much extensively for keeping track of bugs, road maps and other todos. It actually took a while to realise we had outgrown the simplicity of Basecamp and that we actually needed something a little more rigourous. So a few months ago we started to use Assembla as the core work space for managing todo's, tickets and the svn. There are some things I miss about basecamp, especially a lot of the ajax stuff for adding items to todo lists etc, but the integrated tickets, messages, svn and other tools like ftp deployment make Assembla a much better tool for managing template deployment.
2. Versions for SVN.
Im sure there are more feature rich apps out there for managing your subversion repository but Versions was the first app I tried and I have stuck with. The Versions website is one of my al;l time favourite site designs as well.
3. Kaleidoscope for file comparison
I had previously been using textmate to do file comparisons and while there are some limitations such as not being able to do a folder comparison I find the Kaleidoscope interface very friendly. What's more it integrates seamlessley into Versions and so it means managing local working copies and comparing them against server versions quick and easy.
4. Phing for packaging.
Phing is such an amazing tool it's hard to figure out where to begin talking about it. It's basically a build tool that has proven to be indispensable when it comes to maintaining our quickstart packages or even just zipping templates from the svn repository. Thanks to Daniel Chapman from Ninja Forge I have a handy little finder icon that I can click once that triggers Phing and tells it to build the template and quickstart zip. The basic idea in my phing script is that it merges the latest Joomla version, with the latest K2 version, with the latest version of all of our extensions used for that template, then combines that with the template files and sample images and sample data and creates the final quickstart zip. It's almost a case of hitting a button then grabbing a cup of coffee but the script is so quick there is rarely any time to do that.
There is actually a very helpful tutorial for working with phing in the Joomla workflow but the Phing manual is pretty easy to understand for you to create new scripts.
5. Textmate for text editing
A few months ago I stopped using Smultron (or Fraise which is Smultron reborn) and moved over to Textmate. The primary reason for this was the file comparison feature but since I dioscovered Kaleidoscope I rarely use that feature now. I'm sure that I am only using a small percentage of the features that Text Mate offers and at the end of the day I could probably take or leave it. It's certainly a killer app but for what I use it for it doesn't offer too much more than Smultron does.
Some things haven't changed though ...
There are still some apps that I doubt will ever leave my dock.
CSS Edit - Hands down my favourite css editor.
Transmit - Beautiful and simple ftp client
MAMP - Local Server for OSX
Fireworks - I'm sure you know this one.
Snap n Drag - Capture Screenshots
Little Snapper - Full page screen grabs
Things - Todo list management
Now that I've bared my soul what is in your toolkit? What are the apps that you can't do with out when making websites or designing and creating Joomla templates?