Software Engineering in WordPress, PHP, and Backend Development

Category: Articles (Page 217 of 257)

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

Mastering WordPress: How Long Should It Take?

Recently, I received an email from a fellow developer who had finished reading a number of series of articles on WordPress, who had watched a number of WordPress tutorial videos, and was working towards mastering WordPress.

He went on to discuss his current skill set, his aspirations, and the type of projects he eventually wanted to take on as his career progressed.

Not bad, right?

Here, you’ve got a person that knows who he is, knows where he wants to be, and is looking for advice on how to get there.

Unfortunately, there was only so much advice I could give (I’d love to master WordPress, as well!), but the bottom is line I responded with a series of things that i think he – or anyone – can do in order to become a better WordPress developer.

Continue reading

So, Um, What is PSR (or PSR-0, PSR-1, PSR-2, and PSR-3)?

Up until last year, I had been happily plugging along working on various projects – both Rails based and PHP-based – and trying to put more and more stuff into open source until some of the issues what were being opened on my PHP-based projects kept mentioning something about PSR-0.

What is PSR-0?

People kept referencing it, no one linked to it, and it more-or-less an assumed standard that I, along with other PHP-developers, should know. But I’m not afraid to admit that, at the time, I’d no idea what it was.

As I see more and more activity happening around WordPress, and I see about the same amount of code documentation happening for projects – that is, not so much – I thought it’d be worth answering “What is PSR?” as well as the other three variants.

After all, I’d been working in WordPress and with PHP for years prior to hearing about it, and I still had to look it up. Perhaps that’s a problem of my own, but I’m completely okay owning that.

But hopefully this post will save someone else from having to look more deeply into it.

Continue reading

Why Good Development Takes Time, Part 2

Over the last few posts, I’ve been sharing some thoughts on why good development takes time. Of course, these are only limited to my own set of experiences, but I do think many of these are shared among developers.

In the first post, I said that we all fall into the category of a producer or a consumer, at some point, and we often want what we want sooner rather than later.

In the second post, I shared two reasons why I think good development takes time:

  1. The Are Moving Parts
  2. Problems Within Problems

And in this post, I wanted to share the last three reasons for why that I think good development takes time.

Continue reading

Why Good Development Takes Time, Part 1

Earlier this week, I wrote a short stating that good development takes time in which I basically laid out the idea that we all fall into the category of a producer or a consumer – at least at some point – and that none of us are immune to wanting something good, and wanting it sooner rather than later.

For some, the post was a bit cliche – which is fine :) – but I was also asked a  question via Twitter that I thought was deserving of its own set of posts

And so I know that the answer that I’ll give will obviously be relevant to my experience, but I thought I’d share it anyway, and hope that you guys would also chime in with your own experience and ideas as to why good development takes time.

Continue reading

The Importance of Timing WordPress Functions

After this post was published, Brady Vercher also reminded me of two WordPress-specific functions.

When it comes to working with the WordPress database – or any application that provides an API for data serialization – I try to always stick with the API unless it’s absolutely unavoidable.

For the most part, I tend to favor APIs that provides the necessary functions for reading and writing data, and I generally assume that they have everything built into them that they need in order to make data storage and retrieval as secure and as fast as possible (though I’ve been burned by this assumption before).

In some cases, this is true; in others, not so much.

Case in point: I’ve been working on a large intranet application for someone that’s built on top of WordPress. One component of the application requires the import of a relatively large set of data in CSV format that’s also piped through a third-party plugin.

Unfortunately, there was a bottleneck in the code that was causing timeouts on the remote server.

  • No matter how high you set PHP’s timeout settings, a third-party script monitor would always kill it first. I’m actually in favor of having these types of monitors running.
  • Long scripts create a terrible user experience so I wasn’t happy with the performance even when I was able to marginally improve it.
  • Isolating bottlenecks can be a tedious process, but can seriously pay off if you spend the time to do it.

When I finally located the bottleneck, it was occurring in the third-party plugin.

Continue reading

« Older posts Newer posts »

© 2025 Tom McFarlin

Theme by Anders NorenUp ↑