The Weary Word­Press Dev

Publisher: TJ Fogarty

Modified: 2018-03-13

This isn’t a post defend­ing Word­Press”, or say­ing you should give it a shot. It’s more about the gen­er­al respons­es and atti­tudes I’ve expe­ri­enced as some­one who’s put a decent amount of time into using the soft­ware, and build­ing sites and apps with it. I total­ly get that some peo­ple don’t like it, and that’s some­thing I under­stand and appre­ci­ate. You can down­load the ZIP file, put it on a thumb dri­ve and kick it into mov­ing traf­fic. It’s dan­ger­ous, but I see what you mean. 

The weari­ness stems from defend­ing the deci­sion to use Word­Press, rather than the soft­ware itself. Why is this some­thing I should jus­ti­fy to oth­ers when it’s get­ting the job done? For me, in most cas­es, it wasn’t even a choice. I don’t mean this in a bad way; it can be less about want­i­ng to use the lat­est and great­est, and more about pay­ing the bills . The client can ask for it because it’s free and so reduces over­all costs. Or maybe it’s some­thing they’re famil­iar with already, thus sav­ing more costs on train­ing and sup­port and gives them con­fi­dence in the end-result. You’re solv­ing prob­lems for some­one else in this case, and so not always scratch­ing your own itch. If you’re so inclined you can sat­is­fy this on the front-end where JavaScript and CSS offer up a whole heap of new and fan­cy ways to experiment.

I haven’t touched a Word­Press project in months after my move away from agency work, and I’m not par­tic­u­lar­ly hap­py or sad about it. It’s some­thing I have in my toolk­it should I need it again (you’d be sur­prised how many sit­u­a­tions arise where you can become The Word­Press Gal/​Guy”), but beyond that life moves on and I’m sure I’ll work with it again in the future.

Let’s step back for a moment, though. Imag­ine you’ve entered the world of web devel­op­ment, and you’ve tak­en sta­t­ic sites as far as they can go. You fig­ure that you need a con­tent man­age­ment sys­tem. Maybe you’d do a search for Best CMS for begin­ners”, and dig through the arti­cles and lists. The vast major­i­ty of these are going to be PHP-based, because most servers come with this as stan­dard; espe­cial­ly cheap­er shared host­ing pack­ages (I’m men­tion­ing cost a lot because it’s impor­tant). You also have the likes of XAMPP and MAMP that give you every­thing you need to start work­ing with this stuff on your own machine. PHP isn’t the most dif­fi­cult lan­guage to get start­ed in either; you can rename a file exten­sion from .html to .php and now sud­den­ly you can do things like dynam­i­cal­ly set the year in the foot­er with <?php echo date('Y'); ?> which for a begin­ner is a pret­ty nice fea­ture to imple­ment. With that it makes sense that the most pop­u­lar open-source CMS solu­tions are built with PHP, and guess which CMS you’re going to see sug­gest­ed most often. Word­Press! Ok, let’s roll with that. Next you’ll see the count­less free plu­g­ins and themes avail­able. If you can think of it, there’s a plu­g­in for it. You can argue that the qual­i­ty of code for themes and plu­g­ins may not always be the best, but do you care at that stage when with a few clicks you have a CMS up and run­ning with a good look­ing theme and pow­er­ful func­tion­al­i­ty, for free? That’s pret­ty incred­i­ble for some­one just start­ing out. 

I felt empow­ered the first time I built a Word­Press site (it’s still live), because I was only some young fel­la who didn’t have the first clue about con­tent man­age­ment sys­tems or PHP, and I was able to build some­thing that could be main­tained and updat­ed by the client. I wasn’t inter­est­ed in find­ing out what I should or shouldn’t be using, or what the inter­net thought, because this was more than enough at the time. Work was demand­ing, and this solved many prob­lems. If I couldn’t crack it myself, there was a mas­sive, and help­ful, com­mu­ni­ty at hand to steer me in the right direction.

With the count­less themes, plu­g­ins and ways of doing things, it’s hard to nail down a con­sis­tent struc­ture or guide in terms of best prac­tice. A rel­a­tive low bar­ri­er to entry cou­pled with pop­u­lar­i­ty is a dou­ble-edged sword. Prob­lems I’ve encoun­tered are most­ly due to projects I’ve inher­it­ed where the code is spaghet­ti and things seem to work by coin­ci­dence. I’m sure on my ear­li­er projects I’ve left the same mess for future devel­op­ers to han­dle, but you live and you learn. For exam­ple my ini­tial impres­sions of Joom­la! were man­gled because of a build that no-one could make sense of to the point where the client want­ed a Word­Press blog along­side the Joom­la! instal­la­tion. It doesn’t mean that’s my opin­ion for­ev­er. If you use it, hap­py days, I’m sure you’re out there solv­ing prob­lems with it. The bad expe­ri­ence I had doesn’t make you wrong.

That’s not to say Word­Press is only for begin­ners or peo­ple try­ing to make a quick buck, absolute­ly not. I’m by no means a Word­Press pro, but I’ve worked on a few large and com­pli­cat­ed web apps with a Word­Press back-end and it does the job just as well as any­thing else, espe­cial­ly from a client per­spec­tive where they can man­age con­tent them­selves. I’ve been saved a few times from shift­ing sands with a one-click install for a plu­g­in that instant­ly solved emerg­ing prob­lems for a client.

As you progress you start fig­ur­ing out what you want from a CMS. This is where some peo­ple part ways. Maybe it doesn’t fit your require­ments any more, and you have more of a say in the tech being used. Per­haps the client wants more con­trol and they start­ing installing a bunch of stuff that breaks the site, and you’re tired of spend­ing hours debug­ging. It’s more about strat­e­gy in the last case, but that comes with time. What­ev­er way it goes, the brows­er still ren­ders HTML and so we all con­verge on the same out­put. It doesn’t mat­ter what stack you’re using.

It’s tough see­ing a Word­Press relat­ed arti­cle with com­ments like Craft does this bet­ter”, or Dru­pal has had this for ages” when the per­son is try­ing to share some­thing cool they’ve found or cre­at­ed. It may not be the approach you’d take, and that’s fine; maybe it’s not for you. For the oth­er thou­sands of devel­op­ers using Word­Press, how­ev­er, it can be chance to learn and branch out into oth­er aspects of devel­op­ment they were unsure of. When I was work­ing with Word­Press I was aware of the neg­a­tive opin­ions sur­round­ing it. I decid­ed to keep using it because I could build cool things with it. It didn’t mean I was obliv­i­ous to oth­er choic­es out there, it just meant I was com­fort­able and con­fi­dent enough in my abil­i­ties as a devel­op­er to get the job done.