Mavericks and Apache/MySQL

I finally upgraded my office machine to OS X Mavericks, and as a result had to reconfigure both Apache and MySQL.

This post covers most of the relevant info for dealing with Apache: remapping your default web directory, enabling PHP. This post deals with setting index.php as a default document if a directory is requested.

MySQL was a bit trickier. I had installed it using Homebrew, so I had to uninstall MySQL, upgrade Homebrew, and then reinstall MySQL.

One random note: Launchbar’s ClipMerge feature stopped working, and it turns out that was because Mavericks resets the Accessibility options. I had to go to System Preferences > Security & Privacy > Accessibility and allow Launchbar to control my computer.

Using Adobe Edge Inspect with Local Virtual Hosts

At Bluecadet we like to review responsive prototypes and site builds using real devices. One of the tools we use is Adobe Edge Inspect, and it’s always worked well for previewing sites on public URLs. We happen to do a lot of development on our local machines, however, and we’ve never been able to load those via Edge Inspect. Despite the cryptic “Localhost Support” in the product bullet points, we couldn’t find much documentation out there on how to actually do that.

This blog post is old (it still refers to Edge Inspect as “Shadow”) but proved to be extremely helpful. The missing piece turned out to be xip.io, which allows you to map an IP address to a domain name. That domain name gets added as a ServerAlias entry in my Apache virtual hosts config:

    <VirtualHost *:80>
        DocumentRoot "/Users/bcideveloper/Sites/localproject"
        ServerName localproject.local
        ServerAlias localproject.*.xip.io
    </VirtualHost>

So now when I browse using Chrome to the xip.io url the connected devices can load the site running off my local server, provided all the devices are connected to the same local network.

Nicely Said

Nicely Said is the new book on writing by Nicole Fenton and Kate Kiefer Lee. It’s fantastic and you should go get it.

Writing about writing is not an easy task, but Nicole and Kate have managed to craft a book that is practical, funny, and full of empathy, the kind that stands as a living example of its own advice:

Good content is clear, useful, and friendly.

I appreciated the consistency of the book—I never felt like I was reading two radically different authors crammed together. It felt like a cohesive work that exemplified how you can have a consistent voice and tone for an organization or collaboration.

Nicely Said moves quickly from the general (research, planning, process) to the specific (developing your voice and tone, writing for user interfaces/flows, style guides). As a developer writing isn’t my primary job, but it’s one that I’m doing more and more frequently. So I appreciate how Nicely Said is both broad enough to be inspiring, but also specific enough that I can use some of the suggestions right away. Through it all, Nicole and Kate balance practical tips and examples with humor and kindness.

Kindness may seem like a strange word to pluck out of a book that deals with the power of words, but there’s a sense of generosity that pervades the book. It’s hard to put my finger on it, but it feels a lot like a friend telling you how they approach their craft, instead of a dry manual. It’s only now that I write this that I get the double meaning of the title—that writing clearly and effectively doesn’t preclude being pleasant and welcoming.