Tim's Blog

The Programmer's Rut


I originally chose to learn PHP because it was the language most of the companies located near me (marketing agencies building websites in WordPress, Drupal, Laravel) used and therefore the language I was most likely to find a job with.

I tend not to engage in conversations online discussing its flaws because, in light of them, I like writing with PHP. It's simple and because of that it's easy to build things with. Of course in the six years I've been writing it there are aspects I've grown to dislike (go fuck yourself fopen) just as there are parts of Javascript I don't like, having written it for just as long.

It's the language I reach for if I have an idea of something I want to build on the server, especially when I want to move quickly and that's because unashamedly it's the language I'm most familiar with. This is self-perpetuating: I'm most familiar with it because I use it the most, including in my day job.

I've had many false-starts learning other languages, like Python for example, which seems to have become the defacto programming language for many London tech startups, probably due to its prevalence in machine learning, while only a small number of companies still use PHP (with a handful of notable exceptions: Facebook, Slack etc.)

I haven't had the need to learn Python as much as I have PHP even though I can appreciate its redeeming qualities; For many of the applications I'm likely to use it for (web apps, APIs etc) there isn't a discernible difference in performance and therefore it feels like a different route to the same outcome. It's because of this that I'm not likely to use it on a regular basis, which makes it considerably harder to learn to a high degree of proficiency.

And so I find myself in somewhat of a rut, where learning and practicing other languages becomes increasingly difficult. While I can't see myself struggling to find work in PHP any time soon, I must ask myself, "Are there problems I'm interested in working on that can't be solved with PHP?"

I’m Tim White, a Software Developer from Bournemouth, UK. When not thinking about my latest project I like to cook, run & read.