Complexity Begets Simplicity
We frequently get questions from people along the lines of…”can’t you just make it do this? That seems pretty simple.”
The answer is a bit of yes and no.
Yes, we can make it do what you want. And yes, that will make it very simple for you. (Definitely what we’re all about!)
But no, it’s not necessarily all that simple to create.
The result makes it look simple, but creating the coding to get the result can be quite complex.
And I haven’t even talked about the testing!
We are very fortunate that so many people in our community understand this. We know it helps you appreciate when a new roll-out takes longer than we hoped…and makes you more forgiving when we discover a small bug after releasing a product.
Recently I met with the iThemes and PluginBuddy developers at the international headquarters in Edmond, Oklahoma (Oklahoma City) and we got to talking about this. I thought it might be helpful to share some of what I discovered.
BackupBuddy, which is a lifesaver of a plugin, makes it simple for you to backup, restore, and even migrate your site. All with just a few clicks.
But did you know that BackupBuddy has 14,807 lines of code?! Think about how involved and complex that is. (If you’ve ever been baffled by a little bit of css, or not sure where you are supposed to put some code, you can appreciate this!)
Dustin Bolton has been living and breathing BackupBuddy as he prepares the new Version 2.0. I don’t know how many lines of code it will have, but I’ve heard one of the features referred to as “magic”, which tells me it is a very complex bit of coding.
The simpler it is for the user, the more complex it is behind the scenes.
Here’s another example.
Builder, which has got to be one of the most flexible, easy-to-make-it-do-what-you-want, themes on the market, has 21,962 lines of code. (That’s what it had at the time of this conversation. Since then, we’ve rolled out Version 2.8.0, which includes the exciting Import/Export feature, so there’s no doubt the coding has increased.)
The Layout Engine for iThemes Builder – the feature that makes it super-easy to build a layout by selecting modules without having to know any code – AND let’s you have different layouts on every page if you want it – has 6062 lines of code. That’s just in the Layout Engine. (I don’t even want to think about all the places I could mess that up!)
So the next time you wonder why a developer can’t “just get it done”, just remember that the better and easier the feature makes your life, the harder and more complex it makes the coding behind the scenes.