Software Engineering in WordPress, PHP, and Backend Development

Tag: Software Development (Page 15 of 20)

Plans for 2017: WordPress, React, Pressware, and More

This is that time of year where people do all kinds of posts – from retrospectives to upcoming plans, from taking a break to writing more than they have all year.

Honestly, I’m a fan of reading it all.

And though I don’t normally do a retrospective post (though I’m thinking of going back and following-up on the developer fitness post from last year), I do have plans for what I’m aiming to do come the new year regarding general stuff online so I thought now would be the usual time to do that.

For starters, I’m going to move on from WordPress. Peace out. It’s been great, but it’s time to move on to new things! ✌️

That’s not true at all. There are some new things I’m looking to introduce, though.

Continue reading

Versions App For WordPress Plugins

Versions App is one of those Subversion clients that’s been around for years. In fact, when I moved to Mac, it might have been the first one I tried.

Versions App For WordPress Plugins

I liked it, too. It did what I needed it to do, it did it well, and it was simple. And that last part, simplicity, is something that I really want out of software these days.

Maybe I’m getting old. Or maybe I’m developing better taste. I’m going to go with the latter one for this.

Anyway, for some time I ended up using a slightly more advanced client that had a wider range of features, and that did some really good stuff as far as Subversion is concerned. But over time, I’ve migrated further and further away from Subversion.

And in doing so, I’ve begun to re-evaluate my tools (as one should do from time-to-time).

Continue reading

Reasons For Not Writing Unit Tests

When I had my first internship, I was tasked with maintaining a legacy ASP application. This included everything on the front-end, through the application layer, using Visual Basic and VBScript, as well as the database that was primarily used as a datastore for XML.

What are interns for, though, right?

I’m kidding: I actually like the idea of having junior programmers work on maintenance tasks or bugs at first to get a feel for where things are (or were) before jumping into where they are headed.

At the same time, I was also learning and reading a good bit about unit testing. It was past the time when it was “the hot new thing,” but it had hit a point where a lot of people were talking about it.

It was finding its way into day-to-day conversations. It was becoming part of the curriculum of any software engineering course or material that any software engineer should know. It was coming up in interviews, conversations, blog posts, books, and so on.

In short:

It was becoming impossible to escape.

Either you knew how to unit test, you knew TDD, or you didn’t.

  • if you didn’t, then you might get an SMH from a potential employer,
  • you might get a condescending comment from a peer,
  • or you might get roped into a conversation covered in sheer excitement from that guy over in the cube over who’s been aiming for 100% code coverage since the company rolled out the testing infrastructure.

I’m not bashing testing (because I think it has its place and I think we need to know how to write them) and I’m not downplaying having a significant level of code coverage in a given application (because it is important).

But the amount of testing can be done is also related to a handful of others things that programmers don’t often seem to discuss: time, budget, and [optionally] pragmatism.

This post is already getting longer than what some of us like to read (are you reading this sentence, even?), so I don’t wax poetic about this for too long but if you have the time, entertain me.

If not:

The point that I’m ultimately working towards is that I don’t think it’s always as simple as basically “just write the damn unit tests.”

There are other things at work beyond just that each of which influences what we’re doing.

Continue reading

Properly Writing WordPress Plugin Constructors

One of the things that many of us see (and are guilty of abusing) are WordPress plugin constructors.

If you’re using object-oriented programming, you’re likely familiar with constructors. However, the purpose they serve isn’t always clear at least in the world of WordPress.

The definition of a constructor well-defined in Wikipedia:

In class-based object-oriented programming, a constructor (abbreviation: ctor) in a class is a special type of subroutine called to create an object. It prepares the new object for use, often accepting arguments that the constructor uses to set required member variables.

But here’s the key thing to notice for anyone working with constructors and object-oriented programming in WordPress plugin development:

It prepares the new object for use, often accepting arguments that the constructor uses to set required member variables.

And this is where many of us, and WordPress plugin developers, fail. We abuse constructors for a purpose they are not intended.

Continue reading

A Few Spotify Playlists for Work

A few weeks ago, I was talking with some others about the types of Spotify playlists we listen to whenever we’re working primarily to help us focus and get things done. (And no, I’ve nothing against Apple Music, fanboys, I pay for it, too so ease up. ).

Spotify Playlists for Work, Volume 1

I forgot to ‘heart’ or ‘like’ or ‘star’ or whatever Twitter is calling is currently calling the act of bookmarking a tweet, but I still thought it was a neat idea to list out some of the things we all listen to whenever we’re writing code, writing words, or taking a break.

So here’s what I’ve been listening to lately.

Continue reading

« Older posts Newer posts »

© 2024 Tom McFarlin

Theme by Anders NorenUp ↑