Redirecting post IDs to search engine friendly URLs when WordPress is in a new directory

In this instance, I had a client site with static HTML files in the root and a WordPress blog in the /wordpress/ folder. The old site was using the classic ‘website.tld/?p=123’ URL format, where ‘123’ is the ID of the post.

In the rebuild, the point was three fold:

  1. Get all the static HTML pages into WordPress and editable;
  2. Give the blog posts a more useful SEF URL structure; and
  3. Move everything into the domain root (not down in a /wordpress/ folder).

Luckily for me, WordPress does a good job at matching that ‘123’ ID with the new ‘/2015/12/20/fancy-post-stub/’ structure all on its own—if only the query was looking in the correct directory! Continue reading →

Setting Decimal Precision in Sass When Compiling With Grunt

When you’re extending an existing Sass-enabled template in your local environment, you may notice your fresh instance of the template doesn’t quite match up with the demo template. For example, your line-heights, column widths, and other dynamic measurements are just different enough to drive you mad. If you use your browser’s inspector to investigate, you’ll likely discover your dev environment is rounding your computed measurements to the default of five decimal places. This is a common hiccup with Bootstrap, for example, where a base line-height of 1.428571429 becomes 1.42857. Continue reading →

Using Terminal aliases to easily switch project environments

If you work for an agency, chances are you have multiple development environments. Some clients have you mirroring their engineering team’s setup, others you created to your preference, and yet more are relics of past configurations you’ve forgotten about.

In this situation, I have a hard time remembering which project needs a “bundle exec guard” versus an “npm start” to get my SASS compilers, linting tools, and other gems going. Lately, I’ve been enjoying the use of bash aliases to both act as a more organized system of inventory, and to maintain my sanity when toggling between development environments. Continue reading →

Mobile Only: How to build and launch a website from your phone

As a thought experiment, I wondered if it was possible to design, develop, and launch a custom website from my phone, without touching a tablet or computer.

Spoiler alert: I could.

In fact, not only was it possible to build a website from my phone, but I was able to do it in less than a couple hours of research and work, using only free apps. The following post will give you the step-by-step on how to launch your own mobile-only website.

For this experiment, I used an iPhone 4 running whatever the last version of iOS was it supported. I didn’t use any external displays or input devices. Continue reading →

Mobile Only: Rise of the computer-free web designer

Around twenty-five years ago, I was resting my right hand onto my first computer mouse. A cognitive bridge formed between an external input device and an Apple IIe monitor, positioned on an upright plane. I utilized that unnatural mental model to create digital pictures in MacPaint, followed by Kid Pix. Little did I know, that intimacy with the mouse and its keyboard sibling would be foundational to my career as a website designer all these years into the future.

With that, I’m humbled and amazed that within the last five years, my lifetime of personal computer training has been upended by today’s handheld, touch devices—and that within the next five, our industry of “desktop” designers and developers will be eclipsed by tweens designing and deploying websites from their wrists. They’ll publish as such, because they’ll have not formed the same cognitive bridge as we contemporary adults did.

By 2020, many of our interactive design competitors will have never owned, touched, nor seen a personal computing device as we know them today.

The age of the designer in a task chair will have effectively rolled out the door, into obsolescence. Ludicrous? Science fiction, even? Let’s review the trend… Continue reading →