A Quick WordPress Plugin: There Can Be Only One

It’s been over seven years since I last built or maintained a WordPress plugin, thanks in large part to the great community of WordPress plugin developers who share their hard work for the community as a whole. Yet, I finally ran into a situation that wasn’t handled by an available plugin. I patched this in my custom functions.php file with some help from code that I found here (thanks Craige!) and have cruised along for a good while, but I wanted to strengthen my solution while giving back to the WordPress community.

(TLDR – the WordPress community is awesome, and I published this plugin: There Can Be Only One)

My Goal

There should always be one (and only one!) sticky post visible at the top of my home page.

The Setup

I post many links and images on my site, which means the majority of my front page is made up of links elsewhere, and anything that I write is quickly lost in the stream. Sticky posts help to address this, allowing me to designate that a post should be shown at the top of my home page, regardless of whether it is the newest or not. Awesome!
[Read more…]

QLStephen »

A plugin that extend OS X’s, adding the ability to view plain text files that don’t have an extension – think README, INSTALL, CHANGELOG etc. from downloaded programs.

FitText – A plugin for inflating web type »

From the makers of Lettering.js comes another awesome jQuery type-focused plugin: “FitText makes font-sizes flexible. Use this plugin on your fluid or responsive layout to achieve scalable headlines that fill the width of a parent element.” Yet again, @trentwalton, @davatron5000 and @raygunray release a killer utility that developers, designers and users alike will benefit from.

The timing of this release meshes perfectly with my redesign of Refresh Austin.

Switching to Chrome: Essential Extensions

The Web browser is the most important tool to my profession, yet I continued to use a memory-intensive and often times, slow browser day in and day out. Firefox is great for many reasons, but it’s no longer good enough.

Enter Chrome

In the last two years Google Chrome has matured quickly and the community has ported all of the functionality I need. So for the last couple of weeks I’ve put Chrome through its paces, using it as my default browser at work and home. I’m very happy with the results.

For those of you contemplating the move, here are the extensions I’ve installed, and some quick notes on the browser.


One quick note – given how young the platform is and the size of the community compared to that of Firefox, there are a lot of rough edges. I expect these will be taken care of with time.


1Password support is a requirement for me given the amount of sites I use on a daily basis. The great people at Agile Web Solutions have us covered though. The extension is new and not as full featured as that available for Firefox and Safari, but it covers about 90% of what I need.


While I don’t run AdBlock on every site (I like to support content creators), there are some sites where the ads are so distracting it makes it hard to read their content, which is where AdBlock (as well as the excellent Readability bookmarklet) shine. The Chrome version functions just like its Firefox sibling.

After the Deadline

Automattic’s spelling and grammar checker is amazing and should be baked into every browser. Perhaps then the writing quality of the Web as a whole would improve.

Awesome Screenshot: Capture & Annotate

A great utility for grabbing the entire page or a selected portion. A must-have for anyone who reports bugs or keeps bits of great design for future inspiration. I do both.

Chromicious (Delicious Bookmarks)

I prefer this extension over the official (beta) Delicious version for one important reason – the save dialog is a separate window, allowing me to copy and paste snippets of the page into the description. The official version uses a drop-down drawer, which is wiped as soon as you click anywhere else.

Neither extension includes the handy bookmarks sidebar that’s available in Firefox.

Clip to Evernote

I use Evernote as a repository for interesting designs and products on the Web in addition to a general note tacking app. The plugin makes it simple for me to quickly import the current page and it also provides quick access to my other notes.

While it uses the same drop-down drawer as the one I dislike for the official Delicious extension, it doesn’t wipe the content when you click elsewhere.

Eye Dropper

A useful color picker. This functionality is already baked into the Web Developer Extension (below), but I like the quick access that the separate extension provides.

Firebug Lite for Google Chrome

I go back and forth on Firebug List as so much of its functionality is already available in Chrome’s Developer Tools. Luckily it doesn’t noticeably increase memory usage, so I’ll keep it around until I make a decision.

RSS Subscription Extension (by Google)

This should be baked into the browser. The entire purpose of the extension is to add the small RSS notified to the address bar, simplifying the process of subscribing to a feed.

Web Developer

Another great tool ported from Firefox to Chrome. The extension includes many utilities that make the life of a Web Developer much easier – everything from a color picker, guides and a ruler to the ability to enable and disable CSS and JavaScript on a page


I love the fact that I’m able to keep extensions in sync across computers. If you aren’t aware of this feature, open the app’s Preferences, select Personal Stuff and follow the directions to enable syncing. It saves a lot of time and effort.

Rough Edges

  • Some sites seem to forget that I’m logged in when I use Chrome, though they will remember me for weeks while using Firefox. There aren’t many, but the fact that our bug tracking system (Jira) at work forgets me is very frustrating when I’m attempting to file a ticket.
  • I find it odd that Chrome didn’t adopt the long-standing View Source keyboard shortcut (CMD/CTRL-U). I remapped it in my OS given my muscle-memory automatically hits those keys when I’m debugging a page.
  • Another keyboard annoyance is that the F5 key isn’t mapped to reload a page. Again, my fingers are used to hitting CMD-R and F5 to reload a page. While it’s not a requirement to have two different ways to force a reload, it can be very convenient.
  • I hit an odd issue with fonts on my home machine recently, the cause of which I still don’t understand. While I resolved it, I’ve noticed other font rendering issues since, even after cleaning up my font installs on this machine.

Random Bits that Make Me Happy

Here’s a quick brain dump of little touches that I love about Chrome:

  • Chrome makes it easy to resize textareas, making long-form input easier in apps and forms.
  • The unified address/search bar works beautifully. The Firefox implementation is pretty good, but Chrome is noticeably better in terms of ease of use and recognizing my intent to search over my intent to navigate straight to a URL.
  • Chrome is fast. Very very fast.
  • Extensions are written with JavaScript, making them very easy to create and modify. This also widens the scope of extension-developers.

Do You Use Chrome?

If so, what cool things am I missing? If not, what’s holding you back?

jQuery.Html5form »

HTML5 includes form validation as part of the spec, so once it's fully supported we won't need to use JavaScript to validate form input. Sadly, this is only supported by Webkit browsers at the moment (Safari & Chrome). This plugin addresses the gap for the other major browsers with a single line of code.