So, I find myself back on a small Perch CMS project. Having recently tried Vapid, and having smack dab into some its designed constraints, I realized how much I missed Perch’s flexibility. This particular project is a small brochure site for a hair salon. While either Vapid or Perch would fit nicely for this type of site, I ran into some issues with Vapid while developing locally that convinced me it may not be quite ready for prime time. Perch it is.

But that means I need a local PHP development environment. I’ve typically used XAMPP in the past and I have no real complaints about it. Well, I don’t like the interface, but it gets the job done and it’s fast to boot.

MAMP Pro 4 for Windows

UI

I won’t mince words here. The app’s UI, transmogrified from the original Mac OS interface (but, unfortunately, not in a magical way), is an absolute mess on Windows. It feels cluttered and haphazard. Odd choices were made. Frankly, it’s Frankensteinian—there are new-style toggles alongside Web 2.0 gradient headers. Perhaps someday I’ll detail all that’s wrong with it.

Having said all that, its UI is still a significant step up from XAMMP, it’s nearest competitor on the Windows platform.

Functionality

But with regard to functionality, MAMP Pro 4 for Windows is … quite nice.

I’d heard that it was easy to create virtual hosts with MAMP. It really is. I love using virtual hosts to help keep my local development sites neatly organized and accessible at unique URLs—no localhost soup. MAMP makes it a painless 2-3 step process—all in the GUI, with no text editor required. Heck, you can even create a corresponding MySQL database for your local dev site and copy in a templated set of files to your site’s root directory all at the same time. XAMPP just can’t do those sorts of things.

Of course, XAMPP is free software. MAMP Pro 4, on the other hand, will set you back $79 USD. So, it needs to bring some significant advantages to the table. And it does. While the interface is relatively unappealing, it’s packed with a useful, easy-to-invoke feature set.