Software Engineering in WordPress, PHP, and Backend Development

Category: Articles (Page 163 of 258)

Personal opinions and how-to’s that I’ve written both here and as contributions to other blogs.

Confessions of a WordPress Developer

For the last five or so years of my self-employment, a lot has changed. And I’m not talking about the technical landscape. I mean, that’s always changing, right?

But I’m talking about the way that I manage my time and the way that I get work done.

Unfortunately, the Internet has adopted this culture that allows everyone to share how they manage their time and then try to distill it into some type of step-by-step process that can be used by everyone.

That’s not the point of this post. I don’t operate that. I rarely subscribe to that advice, and I’m not going to be that guy.

Furthermore, I tend to ignore (and even reject) posts like that. We have many different personalities and so many variables that contribute to what we’re able to do, when we’re able to do it, and how we’re able to work that I don’t think it’s possible to actually distill something into a formulaic process.

Instead, I think it’s worth simply sharing ideas on what’s worked for ourselves and leaving it at that. This doesn’t mean that there aren’t some things we can borrow from others – because there is overlap in our personalities – but it also means that some of these posts are nothing more than informational pieces. And that’s fine.

So with that lengthy disclaimer out of the way, I thought I’d share some of the things that I currently do in order to manage by day-to-day tasks to get things done.

Anyway, here’s my first set of what’s to likely be more in posts that deal with confessions of a WordPress developer.

Continue reading

On WordPress Theme-Specific Plugins and Theme Lock-In

When it comes to working with WordPress themes and plugins, there’s a general rule of thumb that most experienced designers and developers follow:

Themes are for presentation, plugins are for functionality.

Sure, there’s a little bit of blurring of lines, but this is the goal for which we strive when working through our code. And yes, there’s a lot that can be said (and has been said) about themes that include a ton of features, options, bundled plugins, and so on, but that’s not where this is going.

Instead, I’ve been thinking about how this relates to general theme development, niche theme development, and using WordPress as a platform for application development.

Continue reading

The Challenge of Over Solving a Problem

When building solutions for others, there are certain problems that we face that – although they’ve been solved – can still be a challenge for us to deal with.

For example, you’ll often hear programmers complaining about regular expressions or maybe you’ll hear someone complaining about working with timezones.

Moment.js

I’ve been heads down on the latter for sometime now in a project and even with solutions like Moment.js, there are subtle nuances that must be taken into account when dealing with dates and times.

There are plenty of other examples, but the point that I’m really working towards is this:

When we’re focused on problems that have a number of subtle nuances, I think that we often tend to overlook some of the simpler things that can be done to address the issue.

In my case, I’ve been in the trenches with timezones, offsets, and other subtleties that come with working with dates and times that I’ve tried to over-solve a problem.

Continue reading

Code Quality Is Not a Feature

One of the things that I think is easy to forget about working within the WordPress space is that we’re often talking to a circle of [many of] the same people. By that, I mean that developers are largely talking to other developers (and likely some designers), designers are talking to other designers (and likely some other developers), and so on.

I mean, I have no expectations that anyone who reads this blog is outside the scope of someone who writes or wants to write WordPress code.

And though there’s nothing inherently wrong with this – I mean we’re naturally all about creating groups and communities – I think that it can negatively influence how we may be marketing our products or even discussing our work with other people.

In fact, I’d argue that one of the biggest problems that we have as it relates to marketing our WordPress projects is the fact that we use phrases “clean code” or something similar when trying to sell others on our work.

Continue reading

What Are WordPress Theme Extensions?

Most experienced WordPress developers will likely make the case that themes are for presentation and plugins are functionality. I agree with this and it’s something that I try to take into account with each project that I work on.

That is, whenever I have a project that consists of some unique functionality, then I’ll build out said functionality into a plugin and then either advise the customer or the user of the theme to download the plugin (for which there are some great tools available for this) or I’ll include it in such a way that the theme will include it and activate it.

Honestly, I’m not a big fan of the latter – it assumes the user doesn’t already have a version of the plugin installed, it creates a dependency that’s harder to manage, and it’s activating something that the user may not want activated even though we may see it as something that’s crucial for the site to function properly.

This is something that could probably be argued ad nauseam and though that’d make for a lot of fun in writing up a blog post and chatting in the comments, that’s not the purpose of this post so I digress.

Instead, it’s to offer up the idea that perhaps there are shades of gray as it relates to building specific functionality for highly niche themes.

Continue reading

« Older posts Newer posts »

© 2025 Tom McFarlin

Theme by Anders NorenUp ↑