When I started in this business, I made a conscious decision not to become a programmer. I knew I had it in me: if I could crack Latin, I could certainly crack PHP. But I’ve always recognised that I’m better ‘across the board’ than most people I come across in the field. There just aren’t that many people who can appreciate design and development and editorial and Westminster. And besides, if I decided I wanted to be a developer, I’d have to concentrate 100% on it.
And yet somehow, at some point during the summer of 2009, I started cranking out more and more ambitious code. My PHP efforts went beyond straightforward HTML templates with WordPress tags dropped in. I wasn’t scared to look at javascript. Next thing I know, I’m writing WordPress plugins and pretty advanced javascript/Ajax routines. I’m scraping web pages in their thousands, to get data in the form I want. All stuff I knew was possible, and probably understood on a superficial level – but here I am, doing it. Dammit. So how on earth did I get here?
A lot of it is down to WordPress, which acted as a gateway into the depths of PHP. You can achieve a heck of a lot in WordPress with fairly sketchy PHP knowledge – following the Codex‘s instructions, and not asking too many questions. But inevitably I found myself wanting to dig a little deeper: to understand why certain things did what they did, and to find out what other options were available. I realised I’d unconsciously picked up quite a lot of the basics, enough to understand the more complex concepts.
It’s also been the availability and maturity of certain tools: in particular JQuery and SimplePie. The former is the perfect route into javascript, making pretty advanced techniques seem as straightforward as CSS. The latter makes it laughably easy to work with RSS – opening the doors to all sorts of possibilities, where feeds are available. It’s also been extremely helpful to find a couple of CSS frameworks I’m comfortable with, namely YUI and 960.gs – simplifying the layout process and letting me devote my time to other aspects of the work.
Part of it, too, has been the challenges thrown up by several key projects. For example, there was a moment in the Lynne Featherstone project where I discovered an unexpectedly huge amount of unstructured HTML content to be imported. I’d never looked at screen-scraping in much detail: sure, I’d played around with it, but I’d never yet had a reason to get my hands seriously dirty with it. To my great relief, I came up with a (so far) reliable method for scraping entire websites into a format suitable for WordPress import… and I’ve had cause to use it on a couple of other projects already. Necessity, being the mother of invention, has added several such strings to my bow.
And I have to say, meeting some great people through the year – particularly within the WordPress community – has been a further encouragement. It turns out, developers can be relatively nice, relatively normal guys. Blimey, one or two of them might even qualify as cool.
I’m not ‘one of them’ yet, nor do I ultimately want to be. I’m still in awe of, and slightly intimidated by, the really good ones. I’m sure a real developer would look at some of my work, and laugh. But by and large, my stuff works as well as it has to work. And even if it doesn’t, we can call it a prototype until someone more skilled can come along and do it properly. ๐
Responses
Are you using XAMPP or similar?
Cheers for the perspective. I use WordPress every day although I haven’t done proper programming for years…
I’ve got WAMPServer running on my main machine (Windows XP). It doesn’t have everything XAMPP has, but frankly I’m happier not having all that extra stuff to worry about.
I’ve also got two portables – one full-size laptop, one netbook; both of these have Ubuntu on them, so I’ve just installed the components individually via Synaptic.
> if I could crack Latin, I could certainly crack PHP
What a great way of explaining programming using a non-technical metaphor!
Don’t joke. I’m the proud owner of an A-Level in Latin. A large part of it was studying Latin poetry – where related words can often be several lines apart, whatever it takes to make the words fit the rhythm/meter.
You have to develop the ability to scan large portions of text, looking for matching word endings etc… or you don’t survive. It’s a skill which is instantly transferable to computer coding.
I wasn’t joking. It was truly a great way to explain it. Code is often written like bad poetry too. Happy New Year – can’t quite believe the “Alan’s comment feed” link is still there – though I still subscribe to it.