/ June 20, 2016 / Comments Off on Start Here for the Aspiring WordPress Developer

Start Here for the Aspiring WordPress Developer

Earlier this year, I launched a closed-membership site, The First Version, aiming to help the aspiring WordPress developer.

Ultimately, the goal of the site was not to teach in-depth concepts such as PHP, object-oriented programming, or how to create themes or plugins.

Instead, it was meant to give budding developers a survey of the landscape of WordPress development and what tools, resources, and options they have at their disposal for starting on their journey.

Given the feedback, response, and membership, I think it went well. But it’s been closed for a few months. After an exercise in re-branding and a refocusing of the content, I’m relaunching the site for another few months.

Read More

WordPress image optimization is one of those things that’s useful for anyone who blogs regularly (be it weekly, bi-weekly, daily, or however many times).

Including images in your posts is usually considered a good thing, but as you start to do so over time, you’re going to end up utilizing storage space on your server. On top of that, sometimes images include metadata that isn’t always necessary for images posted on a site.

For example, the time, date, and location of a photo isn’t always necessary to keep when sharing an image on the web. Sometimes, sure, but all the time? Doubtful.

Anyway, there are a number of great plugins that are available that compress images, remove metadata, and generally help with all of this. One of the one’s that I’ve been using and that I’ve grown to really like is Optimus.

Read More

/ June 16, 2016 / Comments Off on Using Laravel Valet for WordPress Development

Using Laravel Valet for WordPress Development

One of the latest options available for local development is using Laravel Valet for WordPress. This is now one of the options available for the already set of options we already have:

When it comes to having choices like this, it can make it difficult for a beginner to decide where to start. And as important as I think it is to explain the benefits of each of the above options, that post is not this post.

Instead, I want to share a short tutorial I wrote about using Laravel Valet for WordPress. Personally, I think Valet is a great solution for beginners, but it assumes a bit of familiarity with the command-line that might be off-putting to new users.

Once you setup the software, it’s hard to argue against using it. So with that said, here’s how you can get started.

Read More

In following-up with yesterday’s post on unit testing WordPress code, I ended up wanting to say more than I did. There are are a lot of things to talk about (entire books cover TDD so what could a single post offer, anyway?).

Rather than try and tackle so many things in a handful of posts, I’ll stick with writing shorter posts on a handful of these topics.

Unit Test Existing Code (or Red-Green-Refactor)

Unit Test Existing Code (or Red-Green-Refactor)

One of the things that I wanted to discuss is the how unit testing can help drive architectural decisions. The challenge with the latter, though, is that part of writing tests often comes with retrofitting tests (or how we can unit test existing code).

And this is a topic all its own.

Read More

In a few recent projects, I’ve been unit testing WordPress code and doing more general test-driven development than normal. I’m no stranger to TDD, but it’s not something I am religious about using. For me, it depends on the nature of the project.

There’s a lot of writing on TDD and its advantages, and a lot of people who use it swear by it. It builds a level of quality into a project and helps with adding new features, solving bugs, and modularizing code.

Unit Testing WordPress

Unit testing WordPress code is a bit of a mixed bag, and it comes down to the fact that object-oriented code in WordPress is often tightly coupled to both the business logic and the WordPress API.

Since TDD can help designing the architecture of a project, it can help guide how we can create more testable classes.

Read More