Updated: WordPress made me a better developer

Posted by on Feb 24, 2014 in Musings | No Comments

Update: Carl Alexander also wrote a great opinion piece on WordPress Core as a gateway to better coding. You should check it out.

I read an article Tom wrote this morning called The Hate and Vitriol of WordPress and I was inspired to write a response. I have heard plenty of criticism from other developers in the “community” on why on earth I would develop with WordPress.

Why not is a better question. WordPress is what got me into development in the first place. It was the stepping stone that brought me from college student to full time freelance developer. I started in college with very little knowledge ( read: none ) of server side development. All I knew was html and css. But over time, I was able to learn more and more. A client would ask for a certain feature, or I would ask is there a better way to do this. WordPress allowed me to go step by step into learning more and more.

Where am I at now? I’m researching how to effectively develop an API, how to fully utilize Object Oriented Programming within the context of PHP, learning new server side languages, and better utilizing dependency management. I’ve learned how to use HTML and CSS preprocessors, version control systems, picked up a few extra languages, and how to manage my own server. Whenever I’ve heard someone say how bad WordPress is, how slow it is, etc etc, I just listen and keep that in mind. How can I make it faster? Better? Because at that point I’m only limited by what I can accomplish, not the foundation I’m using to build. WordPress is an amazing product that has helped countless accomplish what they’ve wanted to. It can also be used in conjunction with other tools. Don’t let the framework get in the way of what you’re seeking to accomplish. It’s ok to use the right tool for the job.


Using WordPress doesn’t make be a bad developer. It’s inspired me to become a better one. For those of you who are starting out or have already been working with WordPress, I encourage you to do as I have. Push yourself. Continue learning. RELAX once in a while. Are you feeling overwhelmed and/or tired? Step away for a bit and come back to it later. You need it and that’s ok. It’s not the end of the world and it’s definitely not worth the expended energy and stress. Also, don’t settle for a quick fix. Patch it now, but fix it later. Do it well, and if you can, do it well the first time.

My friends,  it’s a beautiful day. You’re only limited by what you put your mind to! So go kick some ass.

Thinking it out… Invitation System pt4

Posted by on Jan 9, 2014 in Thinking it out | No Comments

Well, I’m still fleshing out the invitation system. Currently rethinking how I’m going to structure a user’s roles globally. An issue I’m facing (it’s small, but could muck things up later) is how to determine if a user has certain abilities. I’m not talking about user capabilities, more talking about when a user has access to certain content ( it does sound like capabilities…). Well, the reason I’m NOT doing capabilities is every user has a different role on each journal. Let’s say we have 3 different user roles and a user is all three. Well, thats 9 different variations of user roles I’d have to account for and that’s just too much of a spaghetti monster. So here’s what i’m thinking of to get around that:

Thinking it out… Invitation System pt3

Posted by on Jan 9, 2014 in Thinking it out | No Comments

The 3rd refactoring is complete! There are a few features I still need to build out though, specifically reciprocal connections between users who both own a journal ( blog ). Currently, it’ll just figure out which of the two users have a blog ( because only one user role is allowed to ), and then just add the other user to it. I had to figure out how to do it if both did.

Thinking it out… Invitation System pt2

Posted by on Jan 9, 2014 in Thinking it out | No Comments

In another post, I talked about how I was building out an invitation system for a really cool project I’m working on. I realized later that the 2nd refactoring wasn’t as robust as I’d like it to be, so here are the notes on that.

Thinking it out… Invitation System pt1

Posted by on Jan 9, 2014 in Thinking it out | No Comments

There’s a project I’m working on that I’m really excited about. It’s a site designed to provide a Path like experience to students in art school… they’re only allowed to have a limited number of connections, but family and friends can all post to their journal, sharing photos, videos, audio, and text of their performances or whatever they please. This is all moderated by the student as well. Only the student determines whether or not the content is published… so that’s pretty cool.

Anyway! I’ve been fleshing out the invitation system and found it to be a rather complex system. I thought I’d share my il/logical writings as I progress through development.

Here’s my notes for the 2nd refactoring of the system…

WordPress Nginx Tutorials

Posted by on Nov 25, 2013 in Resources | No Comments

I love using nginx for my WordPress servers and stumbled upon a pretty sweet selection of resources… check em out.


WordPress Nginx Tutorials.

Test Driven Development

Posted by on Oct 31, 2013 in Musings | No Comments

I’ve been wanting to give TDD ( Test Driven Development ) a try for a while, and there’s a new project I started that gave me that opportunity. I’ve been making a lot of progress with the plugin, but the problem is I haven’t been writing tests first, before I write the plugin code. I was wondering if that was a good idea, so I decided to ask my buddy, Tom McFarlin.

Seeing as writing tests later goes against the whole concept of writing your tests first, it defeats the purpose.


Well, if Tom doesn’t do it all the time, I don’t have to either, right? Well, TDD has really helped out. A lot. I’ve been able to run tests from the console instead of having to go to my browser and reload things. For example, it’s been super helpful in testing form inputs because I can provide my tests with some dummy data and then run my sanitization and validate functions on that data. No need to constantly reload the page and input my information again and again. Waste of time!

You should really look into testing and see how it can improve your code. I’ll be making a write up soon on how to get your plugin set up. The tutorials I followed were a hair out of date and it wasn’t super straight forward getting it set up. Keep your eyes out for it!

For some more reading, check out this article. It helped clear a few things up for me. Thanks TDD!


PHP OOP Standards, good Stack Overflow conversation

Posted by on Sep 21, 2013 in Links & Quotes | No Comments

I’m working on a few larger projects at the moment and am research better ways of using Object Oriented Programming. Found a fun SO article on PHP OOP standards, worth a good read!

oop – PHP coding standards at work: Insane, or am I? – Stack Overflow.

= vs == || Comparison Operators

Posted by on Aug 5, 2013 in Tip | No Comments

If statements, am I right? Silly if statements, they can be a tricky bunch. Ever had a statement that you knew was right, but kept behaving in ways you didn’t expect? Well, it’s quite possible you were using = instead of ==. Here’s a little tip I’ve picked up along the way:

This way, if you do accidentally type in a = instead of == or ===, the page will break letting you know what’s up!

IE8 rgba alternative

Posted by on Jul 16, 2013 in Tip | No Comments

While thinking about another issue, I stumbled upon another solution for a different problem. Sometimes, you need a semi-transparent background. But, problem is, IE8 doesn’t support rgba. Well, there’s a simple fix that’ll work around that: pseudo-elements.

Now you have a semi-transparent background! yay!

Load More