John Hooley

John Hooley

I'm the author of the popular online guides:

  • How to Fix a Hacked Joomla Website (
  • Speed Up Joomla (
  • Joomla Best Practices Checklist (

I also write on business for the freelance web developer on my blog at Knight Errant (

I've contributed to the Joomla project as a bug squasher, JUG leader, JCM author, and extension developer.

Social Profiles

My first car was a Geo Metro and to save a couple bucks I would change the oil on it myself. It's not hard to do, however I didn't have any real tools beyond a crescent wrench and a robo-wrench. I would try not to strip the plug in the 6 inches of space under the car using the crescent and then catch the oil in milk jugs that I sliced the tops off of. Then, I would attempt to unscrew the filter with the robo wrench. This had a 50-50 chance of mangling it and spilling oil as I torqued it. These tools made the job a 45 minute trial where I would bloody my knuckles, get covered in oil, and end up cleaning puddles of it off the street. Eventually, I wised up and bought a ratchet set, an oil wrench, and a pan to catch the plug and all that oil.  The difference was magical: it became a 15 minute job without swearing, blood loss, or environmental catastrophes. And it was all because I used the right tools.
Monday, 06 June 2016 00:00

The Fall of Joomla

Four years ago at a Joomla Day New York I demoed the latest updates to a Joomla extension I had developed with a client. They had commissioned a Wordpress version of the same extension from a WP developer and shared with me the install stats for both (which connected to the client's service). The installs were overwhelming Wordpress. It blew me away and I began to watch statistics for the popularity of the platforms and discovered that WordPress was devouring Joomla's market share. When I built my first Joomla 1.5 site, more sites on the Internet were powered by Joomla than any other CMS. Today, WordPress powers five times as many websites as Joomla does.
There are terabytes of poorly written code in the Internet's Joomla population.  This is because of the nature of Joomla as an extensible application. It's wonderful because anyone can create a solution for it and it's horrible because anyone can create a solution for it.  Because Joomla sites interweave the efforts and knowledge of hundreds of developers across space and time the highest virtue that its code can aspire to is cleanliness.  If you've never heard of code referred to as clean, what it boils down to is simply code that is easy to read, write, and maintain. In this article, will look at why elegant code should be avoided and three simple principles to writing good, clean, Joomla code.
Tuesday, 05 April 2016 17:31

Stretching Configuration.php for Git

My company worked on a web application that was basically an extension of the Joomla 2.5 core a few years ago.  We took over the app from another development company that had gotten stuck (we never would have modified the core.) It was being deployed to AWS and the original developers altered the configuration.php file to return different values from their local environments based upon environmental variables set by Amazon's cloud servers. When I saw this I thought, "There has got to be a better way."
Thursday, 03 March 2016 00:00

Qualifying for Premium Projects Only

Have you ever had someone approach you to complete a project and spent days on interviews, emails, and research in order to develop a proposal only to have them push back on price? They want a Facebook clone crossed with Kickstarter and you discover too late that they only have a $500 budget. It can make you want to pull your hair out when your prospect goes from excited only to suddenly vanish once they see the cost of what they're asking for.
Wednesday, 02 March 2016 21:00

10 Minutes to Protect Against Disaster

February 9th was Safer Internet Day. Google offered Gmail users an extra 2 GB of space to perform a quick security audit on their account. The tasks were easy: a quick review of the account recovery information and the connected applications. Even though it took only a few minutes and many will never realize it, the audit will have a big impact for thousands of users who dodged a bullet with their name on it.  Small things can make a big difference. It's the magic of preventative care.
The first four years I was in business, I had a reccurring problem where I would go through cycles of being overwhelmed. I would be trucking along, knocking out projects, and a previous client would reach out to me with an urgent need for help. I would pause whatever I was working on, get them taken care of, and get back to work. Periodically though, several urgent client requests would arrive back-to-back when I didn't have a spare moment to look at them. My bandwidth would quickly get maxed out and I'd end up working weekends trying to stay on top of everything.
Friday, 01 June 2012 00:00

Hurt Me Plenty

I've been playing Doom 2 quite a bit lately. It's an old first person shooter, released in 1994, in which the player navigates through a hellish landscape fighting monsters.
My wife and I recently moved to Nagoya, Japan and we decided to write a blog to chronicle our experiences. I threw one together using Joomla! and, though I'm a developer and know better than to attempt any real design, I'm not entirely without a sense of style.
Thursday, 01 December 2011 00:00

Closed Source Complications

Imagine that you purchase a car from your local dealership. After driving it for a few weeks, you realize that there is something wrong with the floor heater vents and they only come on if you switch the heating from floor, to defrost, to floor, and then honk the horn twice.