March 2012
I hardly ever use WordPress’ visual editor. As a web developer, it just feels more natural and efficient for me to compose pages and posts in the HTML panel, manually adding the markup I need to give me the control I want.
But because WordPress makes publishing to the web so accessible to a wide audience of varying technical aptitude, I get how important the visual editor is. In fact, it was a fairly non-technical client that first pointed out to me that the visual editor on their site had stopped working after a recent WordPress upgrade.
A little research turned up lots of posts in the WordPress forums from people having the same issue, although I don’t remember any specifically attributing the problem to an upgrade. I just assumed some file used by the editor had gotten corrupted somehow and that it was an isolated incident. I found a solution suggested by someone in the forums, it worked, and I moved on to other projects.
Over the last few weeks however, I’ve upgraded around half a dozen other WordPress installations for clients and they’ve all had the same issue. After the upgrade, the “kitchen sink” (the visual editor toolbar) disappears and the tab that switches between the Visual and HTML views doesn’t do anything. You can’t view the page or post content in the Visual mode.
The original fix still works but it involves adding a line of PHP to the wp-config.php file. Not overly complex but also probably not something your average WordPress user wants to try to do themselves. Luckily I found another solution that solves the problem and actually has some added benefit as well.
Enter the Use Google Libraries plugin. Again, I’m speculating that the visual editor issue is caused by some file that is incompatible with some aspect of the newest WordPress version (3.3.1). Because of the functionality of the visual editor, it’s most likely a javascript file that stops working. The Use Google Libraries plugin allows your site to use Google-hosted common javascript libraries rather than WordPress’ local (to your server) copies. This appears to solve the visual editor issue because the problematic file is no longer used, a working copy from Google’s CDN is substituted instead. Problem solved.
The added benefit of using Google-hosted javascript libraries is increased performance. Google Libraries CDN is popular because of the performance advantage, so there’s a good chance that your visitors have already visited another site that uses them. If they have, those files will already be in their browser cache and don’t need to get downloaded again. Your site loads faster. If your visitor hasn’t already cached copies, the browser will need to download them. But Google Libraries files are compressed so file sizes are smaller and download faster. Your site loads faster. Lastly, any files you can offload to another server is less work yours has to do. Your server is faster.
So if you’re having problems with the visual editor after a WordPress upgrade, or if you’re just looking for an easy way to get a little performance boost, try the Use Google Libraries plugin. Search for ‘use google libraries’ from the Install Plugins control panel page or browse to http://wordpress.org/extend/plugins/use-google-libraries/ and download it directly from the WordPress Plugin Directory.
March 2012

The IGI website redesign is another collaboration between myself and James from the House of Bogue.
The newly redesigned site not only features a fresh look but entirely new back-end administrative functionality as well.
James’ art direction included an updated logo and much more professional, modern look for the site.
To improve functionality, the new site was built using the WordPress platform. Previously, content was contained in static ASP pages and required not only specialized software to connect to the web server and make changes to the markup but HTML knowledge as well. WordPress provides a web-based control panel that can be accessed from anywhere and allows content editing with no more knowledge than is required to create and edit a document in your word processing software.
Other updates include more simplified navigation, search functionality, JavaScript interaction, and integration with IGI’s social media accounts.
August 2011
The first phase of any of my projects begins after the initial contact with a prospective client. We’ve talked (depending on geography, either by meeting in person or conversations via phone, instant message, Skype, etc) and they’ve expressed an interest in my services. Usually I try to get as much detail about the project as possible during this interaction. First, I want to qualify them according to a few criteria: is it the type of work I do? Does the expected start time and duration fit into my workload? Is their budget reasonable and does it align with my rates?
Sometimes at this point I find out the client doesn’t have a budget, or they’re reluctant to tell me what it is. This isn’t always a deal breaker, but it could be a warning sign. No budget could mean a few things:
- The client isn’t familiar enough with the process to have even a rough idea of what things cost – not a huge deal but will probably require a little extra hand holding throughout the process.
- They haven’t thought enough about the project. This can make extra work for me in the long run. If the client can’t clearly define exactly what they want, I’m trying to hit a moving target. It will be particularly important to nail down, and agree to, specific requirements before beginning. Otherwise these types of projects tend to get larger and larger (scope creep). Again, not a deal breaker but it will be important to keep things on track. I have a questionnaire that I use to try to get clients thinking more in-depth about their project.
- If they have a budget but won’t disclose it, they’re probably shopping around by price. If I can determine that’s the case, I usually say “thanks but no thanks” and move on. I’m not trying to position myself as the lowest cost provider so it’ll likely be a waste of time. I can spend hours researching solutions and putting together a proposal, only to get it tossed out if I’m not cheapest.
What They Really Need, Not Just Want
Once I know my skills, availability, and rates fit with the prospect’s general requirements, it’s time to get into more detail. Prior to writing a proposal, I give my prospective client a copy of this web design project kick-off questionnaire.
The questionnaire is a living document that gets edited and the questions asked are specific to each client’s project. They make a good starting point to get them thinking about their project in terms they can more easily communicate to the developer. What they tell me helps me need their needs better. For example: if the client anticipates that their initial content will quickly be outdated or needs frequent updates, my solution should probably include the ability to modify that content.
Sometimes clients come to me with very specific requests. They saw something somewhere and really liked it, their competitors have it so they need it, or they read or heard that technology X is “really hot right now”. Sometimes there are legitimate reasons behind these requests but other times what they think they want isn’t what they actually need to solve their real problem. The questionnaire can help me get to the bottom of that, uncover their goals, and tailor a solution to meet those goals. Not just keep up with trends and fads.
Eating My Own Dog Food
If you’ve ever heard that saying, then you know it’s a good idea to use your own products and services to show clients what you can do. That’s one reason why I’m keeping this journal of my own redesign. When the series is complete, I’ll have documented my process and have a much needed redesign of this site. The next post will cover my answers to the questionnaire and nail down requirements necessary for the proposal.
Additional Resources
Paul Boag from the UK firm Headscape has some excellent articles on the web development process and getting the most from the client and designer/developer relationship:
My kick-off questionnaire is based on the Freelance Switch article How to Extract the Facts with a Web Design Client Questionnaire. Martha’s excellent post contains some additional questions as well as explanations of the relevance and importance of each answer.
August 2011

The Smile Exchange is the brainchild of Mark Colgan as a way to “pay-it-forward”; recognizing people for their good deeds and inspiring others.
James from House of Bogue originally approached me about developing the project after he signed on to do the design. The idea behind The Smile Exchange sounded interesting to me. It certainly wasn’t your average brochure-ware site, and I knew that the features and functionality they wanted would take me a little outside of my comfort zone and challenge me. So of course I said yes.
Because of the completely voluntary nature of the site, we knew we needed to eliminate as many barriers to entry as possible. With that in mind, Facebook users can connect with one button click and be interacting with the community in seconds. Registration for non-Facebookers was pared down to just the essentials: username, email and password.
While Mark has lots of plans for growing The Smile Exchange, the initial release is all about getting the basics right. The design and functionality focuses specifically on the most important aspect: to make writing and sharing updates as simple as possible. Easy ability to share updates on Facebook and Twitter help spread the word and the ability for smile traders (members) to connect and share with one another helps build a sense of community. We’ll use member feedback to determine where things go from here.
Consider joining and posting a good deed to inspire others or just browse and be inspired yourself.
July 2011

I think “the cobbler’s children have no shoes” is a pretty common saying regardless of what field you’re in. If it doesn’t sound familiar, it’s a rough translation of a Spanish proverb. The idea is that someone with a specific skill is often too busy assisting others that their own affairs go unattended.
Maybe it’s a designer’s attention to detail/quest for perfection or the rapidly changing nature of technology and trends but it’s always seemed particularly apt for web designers. We regularly complete (hopefully) amazing client work while our own websites become outdated and neglected. I know I’ve spent weeks redesigning my own website, working in fits and bursts between paying client work, only to get bored or tired of what I’ve done before I even get around to implementing it. Likewise, I know that I should be creating content for my own site while helping others find their voice. But it just doesn’t seem to happen that way.
Matt Kersley has an interesting solution to this dilemma. He’s published an undesigned version of his site with the idea that as a web designer, he’s now represented online, very publicly, by a crap site (his words, not mine). And that will sufficiently motivate him to finish as soon as possible.
Although I’m not necessarily as brave as Matt, the idea did inspire me. Of course, instead of just copying a great idea, I needed a little twist to make it my own. So I decided to kill two birds with one stone and write about it as well. It sounded like a good opportunity to educate potential clients on my process and maybe get some feedback from others on how/why they do things differently. At the end of the project, I should have the redesign I’ve needed for a while and hopefully some interesting content as well. Win-win.
I expect the process, and subsequent posts, to cover some of the following topics: requirements gathering (what are my goals for the redesign? What do I need to do differently this time to accomplish them? What needs to be added, removed, or changed?), the design process (how will the site look and act to accomplish the goals and meet the requirements we set?), prototyping and implementation (the actual building/development), feedback and follow-up (what metrics for success did we decide on in the requirements phase? What are the results? Did the redesign accomplish our goals?).