Strong opinions, weakly held

Macs for Web development

There’s a new trend in Web development tools that seems to have arrived first for Mac users, but that I suspect will find its way to Windows and perhaps even Linux as well at some point. When you deploy Web applications, they generally rely upon system level services like a Web server, a relational database, and perhaps an application server. On computers running some Unix-like operating system, this means that the files all live in system directories like /usr, /var, and /etc. On Windows machines, you find yourself installing applications like MySQL and Apache as Services.

That’s fine for servers, but what do you do if you just want to run these applications on your laptop so you can do some development? Installing all of these packages just so that you can test out some PHP scripts or run a Rails application is a lot of work and adds significant cruft to your system. Things can get even more complicated when you start installing libraries from PEAR for PHP or Gems for Ruby. (This is one area where Java has an advantage over most other application platforms — it’s easy to let your libraries live with the applications that use them rather than installing them at the system level.)

In the Mac world, there’s a trend toward building all-in-one application packages. I first encountered it when I was having trouble getting Ruby on Rails to work on my Powerbook. Someone pointed me toward Locomotive, which is a self-contained application that has everything you need to start building Rails applications. Then one of my coworkers turned me on to MAMP, a similar package for PHP, Apache, and MySQL. I would expect to see a similar package for Tomcat soon, and then my life would be more or less complete.

These self-contained installs of servers, libraries, and everything else you need to kick start your Web development are a strategic advantage for OS X. I can get a new developer going on a Mac in 15 minutes by explaining to him where to get Locomotive and how to check out our application and run it. As someone who spends most of their time developing Web applications, I can’t really imagine going back to Windows at this point, and that’s not as much due to Apple as it is to the people developing incredibly useful free software for OS X.

From the comments: xampp is a cross-platform project that provides a self-contained environment for Apache, Perl, PHP, and MySQL.


  1. Actually the trend started, unsurprisingly, on Windows, where one is less likely to already have these services, and compiling them is significantly more difficult.

    The first one I remember seeing was ApacheFriends, which is now xampp.

  2. I just downloaded MAMP and am starting to look around and see if it might be a solution for maintaining all the various combos of the Apache (1.3.x or 2.x?), PHP (4.x? 5.0.x?, 5.1.x?) and MySQL (etc) that I test against in an easily contained fashion.

  3. I did this for the Plone installer for Mac OS X back in 2004 (this design continues in the current version). It installs everything you need… its own Python and Zope builds, and the Plone bits. I’m glad other environments are doing the same.

  4. I’ve been installing a dev setup on my [iBook | PowerBook] for a few years now, and never had an issue using the latest Entropy PHP install and the latest MySQL OS X install, running alongside the version of Apache that’s preinstalled on OS X. Sure, that gets me Apache httpd 1.3 rather than 2.0, but I’ve been fine with that so far. MAMP does look intriguing, though…

  5. Great stuff, but to Jason’s comment it’s easy to get PHP/Apache/MySQL running separately on OS X. Rails, however, is a touch more difficult.

    And good gaw, if you come across something like this for Tomcat, please post about it. I’ve been wanting to do more Java, but Tomcat and the setup has been scaring me off.

  6. Dear Apple,

    You’ve come a long way, baby!

  7. ChasH, Rafe, XAMP does offer a Tomcat installer add-in for the main XAMP install. According to the notes, it includes Tomcat 5.5.15 and requires the SUN J2SE SDK 5.0.

  8. My apologies. I didn’t read Rafe’s notes carefully. The XAMP Tomcat installer is Windows only. Sorry

  9. That would be great move. Though do not think that a revolutionary one.

Leave a Reply

Your email address will not be published.


© 2019 rc3.org

Theme by Anders NorenUp ↑