Software Engineering in Web Development, Backend Services, and More

Category: Articles (Page 72 of 258)

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

Changes in Productivity Tools in 2017

Periodically, I’m asked via email or Twitter what I’m using regarding the tools I use to get things done.

And though I don’t necessarily think that the things I’m using are always the best suggestions for other people (because I think we all have ways that work better for us to get things done), it seems like something worth covering at the end of the year.

To that end, I thought I’d use this post to share some of what I’ve been using both for development and for general productivity just in case you’re looking for something for the holidays or just looking for something in general.

Continue reading

Two Pillars of Object-Oriented Programming: Part 1 of 2

When it comes to talking about object-oriented programming (or OOP), you’re likely to hear about The Three Pillars of Object-Oriented Programming or The Four Pillars of Object-Oriented Programming.

Depending on your background, you may have already heard of them, know what they are, and don’t really need to dive into it too much. But if you have not, I believe understanding them is foundational to object-oriented programming.

We’ve covered the whole Analysis phase of Object-Oriented Programming:

  1. Analysis, Part 1
  2. Analysis, Part 2
  3. Understanding Customer Expectations
  4. Statement of Work
  5. Terms and Conditions

With that said, let’s get into the design and implementation discussions. After all, this is what’s many people want to jump to anyway, isn’t it?

Two Pillars of Object-Oriented Programming: Part 1 of 2

Before writing any code, I’d like to do two posts about the four points of object-oriented programming (because I’m one of those who subscribes to the idea that there are four).

Continue reading

A Quick Tip for Hiding Browser Extension Overlays

In my experience, most browser extension overlays use a background with the type of data:image/svg+xml. Furthermore, each of these overlays uses inline styles (rather than external stylesheets) to render their buttons (or whatever controls they are opting to render).

Hiding Browser Extension Overlays

This means we can use some JavaScript techniques to find elements with that have these attributes and then toggle their visibility.

But first, why would we care even to hide them?

Continue reading

Object-Oriented Programming in WordPress: Terms and Conditions

In the previous post in this series, we talked about defining requirements (or a statement of work) and why it matters to have this.

Before we get into actually understanding – and writing – object-oriented code, there’s one more “business-related” topic to discuss: Terms and Conditions.

For many, it’s a bit of a dry topic, but if you’re looking to build solutions for someone else, do so from the ground-up, and do so properly, then it’s important to make sure you have all of the necessary pieces in place before doing so.

And once you’ve:

It’s time to make sure you have the terms under which you’re working.

Continue reading

Should Money Dictate WordPress Plugin Code Quality?

I don’t have many plugins available in the WordPress Plugin Repository anymore (and there are reasons for that), but I’ve been giving some thought to those plugins that I do have as well as the general level of code quality that goes into the first iteration of a plugin.

Plugin Code Quality: WordPress Plugin Repository

I mean, for some, plugins are merely small utilities that aim to do one thing and one thing well. Then, other plugins are much more advanced. I think these need a higher level of code quality to make them more maintainable.

But there’s one aspect of building plugins (or any software, really, but I’m specifically talking about WordPress plugins) that I find myself thinking about:

What level of plugin code quality of enough to ship the first version of a plugin?

Continue reading

« Older posts Newer posts »

© 2026 Tom McFarlin

Theme by Anders NorenUp ↑