A few years ago I swore I was done with being a PHP developer (for money). It no longer made me happy and I wasn’t being challenged enough. I was doing HTML, CSS, JavaScript, implementing site designs in PHP, tweaking existing PHP code, fixing bugs … very few interesting/worthwhile problems to solve that hadn’t been solved a million times before (another CMS implementation?!). It was custom development, not product development. With product development there’s more room for long-term quality, so one gets to feel more attached to the work; it can be more fulfilling.
I felt I was at a dead end with that career path. I decided to quit working part-time in order to focus on school. Then I decided to move to a better city and finish college at Florida State. The decision to move came only a few months after I had quit my job. While telling my old boss of my plans he said he’d pay me $30 an hour to work for him again, this time remotely, since the guy that had replaced me didn’t quite work out. I needed the money and wanted to have something solid lined up, so I took it. So much for focusing on school or switching career paths.
So as I see it I actually was at a dead-end with that career path, and still mostly am. Since then, I’ve started a few more of my own PHP projects (to explore more technical topics than what I was paid for), but I’m not satisfied. It’s been two years, I’ve graduated from college, and I still haven’t written any multi-threaded code, nor any drivers, nor code that interacts with hardware in some non-trivial way, nor have I poked at alternative OSes. Those were all things I was contemplating a few years ago when I was “done with PHP”. I really wanted to work on something low-level, with less UI work and more difficult algorithms to design.
I can’t stand having 60% of the work day tied up with: copy-and-paste chunk of code, then tweak for new field names, then make sure to update the correct database fields, add validation, ad nauseum. I now understand 100% why people might say that web development isn’t programming, or how PHP has facilitated their decline as a programmer.
But it’s not PHP’s fault. It’s just that line of work. Web programming is mostly the blue collar work of software development. If you’re drunk or high, or whatever, it doesn’t matter, you can still do your job because you won’t be operating any heavy machinery.
So now I’m shakingly anxious to move to another town with like-minded people, sane recycling practices, respect and love for greenspace, and more opportunities. But I’m getting worried. I’m seeing several job listings that want Windows multi-threaded programming experience in C++ and am more-or-less kicking myself for not picking up similar experience along the way.
And now I’m presented with another choice:
Do I jump over to something more technical that I see showing up on job listings, just so I can get a job in Seattle and move?
Maybe. Maybe not. I don’t particularly want to code in C++. It’s not a language I can be happy with; I’ve done enough in C++ to know this. Do I write something kickass in Ruby on Rails? Probably not, RoR work isn’t much different than PHP work. Plus, I’m trying to ditch the “web programmer only” label, right?
What about saying “fuck you” to the half-step and going straight for something I can really buy into for years to come? Yikes. That’s risky. I’m not seeing any job listings for “niche operating system, compiler, driver and language tinkerer with a keen desire and not much real experience”. Aye.
I need to clarify some things. I’m not saying I don’t ever want to write PHP code again. Nor am I saying I don’t want to do web programming at all. However, PHP and web programming should never again be the only thing that I’m qualified to do for money, so I need to broaden my experience. I’ll never be a “one language, one technology” programmer. I’m incapable of being that loyal to one thing because I always find room for improvement and always hope for something better.
I just want to:
- Make things better
- Make better things
- Have a personal interest in what I’m working on
- Use tools with an aesthetic quality I can get behind
- Use tools that help more than hurt (otherwise I’ll spend three years writing better tools)
- Be around developers that fancy working on OSes or developing their own language one day, rather than the simpletons that want to create a website and make some money off advertisements
- Do something I enjoy at a company I care about
It’s time to try something new (that I love, and be really damn good at it).

