I remember the day I first decided to create my own WordPress (WP) Theme. It was a long time ago, back in 2010! HTML5 Boilerplate (H5BP) had just come out and I loved it. Loved it so much, in fact, that I wanted everyone to be able to use it, easily. And since I was developing most of my stuff using WP, like so many others, I thought: “Man, this would be a great mash-up!”
So I sat down, got familiar with the ins-and-outs of H5BP, deciding which parts made sense in a WP Theme, and started cutting them together. All went pretty well, pretty much all the options that I decided to add were hard-coded, but there it was. I sat back, exhaled, and thought, “this is cool!” At this point, no other H5BP-inspired WP Themes were out yet.
Then I got a really crazy idea and decided to reach out to Paul Irish (co-creator of H5BP). And was pretty floored when he actually bothered replying. :-) He offered kudos, said it was a nice idea, but asked why I chose to base the Theme on TwentyTen? “Uh…” was basically my reply. I had no reason, because there had been no real decision, it’s just what was in the most recent WP installation. It was Paul that recommended I use something less-cluttered like Starkers (Elliot’s original site is looking a little worse-for-wear, that Theme now lives on Github (hmm, interesting coincidence, huh??)).
I had not heard of the Starkers Theme yet, but loved the concept, so I downloaded it, then did the same cutting together process all over again. :-)
Then it was time to push my Theme to the WP world and see if it swam, or sank. This is also the time when things started to get dark: as soon as I actually had to talk with someone associated with WP… I should have walked away at that point, but Github was not what is is now, and I had worked pretty hard, so I really wanted to see my creation go live.
Naturally, with my Theme so heavily based on H5BP, my initial upload was titled “HTML5 Boilerplate”, and here it still sits (still with the TwentyTen screenshot, because I didn’t even know how to change that):
Note that it was never updated… That’s because the WP Police jumped on me for using the term “HTML5” in the title… “Well what are you going to do when HTML6 or something new comes out?” they asked. Yes, really: HTML6. I said that I would probably make a new Theme then, because this one is really built very specifically around HTML5. They protested and basically said if I wanted to upload to their repo I would have to remove such a “technology-specific” term from the title. And thus my “Boilerplate” Theme was born. Missing some of the fanfare, there, eh?
Over the years there were many, many more frustrating moments, from not allowing my first several upload attempts because I was using the HTML5 DOCTYPE, to blindly blocking any code block that makes reference to Google Analytics (even though it was a completely configurable, optional code block, and even though I pointed this out to them), to throwing a tizzy if any
git files were in the
zip file (why not just delete those files and continue with the upload?), and on and on and on…
At any rate, the Theme went live, eventually, did far better than I expected (sadly, with “suspension” comes the removal of all stats, but I know it was well over 40k the last time I looked), and was, other than dealing with what I refer to as “The WordProcess”, pretty fun. Each new update, however, made me cringe just thinking about it. Look at the distance between these dates!
Ironic that the last update to the WP Repo was 3 years to the day from my initial upload… Hadn’t realized that before.
In the end, the last straw for WP was a complaint about how I handled the optional inclusion of a local version of jQuery. First of all, they nearly blocked my last update because I even included a local version, insisting I use their version. I asked what if a developer doesn’t want to use the version of jQuery you’re shipping with, or wants to upgrade before you’re ready (my Theme allows the site owner to specific which version of jQuery they fetch from Google)? No answer. Then I explained that my code doesn’t force anyone to use my local version of jQuery, or any version of jQuery. Adding it at all is completely optional, done via the Admin page, but if you do choose to, the code first tries adding Google CDN’s version. My local version is only applied if that version fails for some reason (the way H5BP does it).
But no attempt was made to read the documentation, read the thoroughly-commented code, or simply send an email to the guy that built it. In the same 24-hour time span, one person complained, one moderator spoke to another, and my Theme was yanked.
When they threw me out like this I seriously considered just pushing the thing to Github and walking away. This kind of behavior really leaves a bad taste in your mouth. But more than a few people have come out of the developer woodwork and asked what happened. And it occurred to be that people actually do use this Theme (myself included), thus my original purpose is being served. So the hell with the WP Repo, let’s go party at Github!
To any Theme users out there, thanks for the continued support, I promise to get back on track as soon as possible and get another round of updates to you. Sadly, you won’t conveniently find out about those updates via your WP Admin any more, you’ll have to Watch the Github repo, or keep an eye here, I’ll always reference any updates as soon as they’re pushed.
Happy WordPressing (outside of WordPress),