A friend asked me a few days ago what I was using to develop a project I have been working on in my spare time.  This then lead to the question of what tools I used on my Mac to handle the development.  So after a little thinking, here was my answer.

At our office we primarily use Django, which I love.  For my personal/outside of work projects I have been using Flask.  Flask is a bit lighter weight and quite portable.  This is important because I have been using AppEngine for a couple of recent projects and Flask plays quite nicely on AppEngine (here is a blog post explaining the basics of how to make it work, I have modified slightly to used the packages in zip files instead of uncompressed).  Overall this is the basic stack:

On my Mac I use a number of software packages to make life easier:

  • iTerm2 - Replaces the absolutely CRAPPY terminal that comes with Mac.
  • Coda - just recently started using this for code/text editing.  I still find myself using TextMate and even vim for some things, but overall I like Coda.
  • LESS.app - Just makes running/managing Less that much easier.
  • AppEngine SDK - Again, makes life easy when dealing with AppEngine.
  • CyberDuck - I know that Coda has FTP built in, just haven’t started using it yet.
  • Homebrew - how anyone could live without this package manager is beyond me.
  • Chrome, Firefox, Firebug - Browsing, testing, debugging things.
  • AquaData Studio - for those times I am not using AppEngine.
  • Remember the Milk - helps with my tasks.
  • Mercurial / BitBucket - This is where I keep all of my code, I HIGHLY recommend mercurial for version control (git is also quite nice, as well as github).

So there you go, my basic stack.  There is more software for sure, but this is the majority of my day to day use.  Recommendations are always welcome.