WordPress has been around for over 10 years, in that time there have been more then half a billion downloads of plugins from the WordPress.org plugin repository and over 100 million themes currently on the WordPress.org theme repository. That is a lot, but there are still more out there from ThemeForest and CodeCanyon to the other individually owned and operated shops for both plugins and themes.
One of the bigger development items to use with WordPress is a theme framework, like Genesis and Thesis. These theme frameworks are built as a starting point for you to build something more customized from. WordPress Codex has a whole page about Theme Frameworks which only includes some of the frameworks out there.
Since the creation of these there has been a lot of conversations about whether or not to use them, and I think they hold their merit, but I think it depends who you are and how far you want to advance yourself.
Who uses Theme Frameworks and Why?
Theme Frameworks are popular in many crowds, from designers who are trying to develop their own themes without much need for advanced coding knowledge, to developers looking to save some time on their builds. However, if you think about it, everyone using these frameworks have a commonality, and that is business.
If you are running an agency, or a freelancer who just wants to crank out sites as fast as possible to get the pay, then a framework like Genesis as a parent theme may fit your needs well, it already includes shortcodes, and functionality that you may not want to code yourself to save time. For those who are not developers by trade, this is also useful since you don’t need to necessarily learn al that extra code that is involved with the extra functionality.
Who dislikes Theme Frameworks and Why?
I don’t like frameworks, and I have a few reasons why. First and foremost, I am a developer, so the thought of using someone else’s possibly bad code doesn’t suit me, even when working on a client’s website. I don’t feel like I should be putting my name on sites and projects that I cannot back up all code for. While I do utilize some plugins, I take into account what kind of code they are going to be adding to my (client’s) site, will it slow it down? will it break unnecessarily?
Developers hate unnecessary bloat
No matter how you put it, unless you are using every single feature of your Theme Framework (which is rare), then you are potentially loading and at least storing lines of code that are completely unnecessary for the site to run. This may cause issues with site speed, site functionality, and with excess unused files, can effect things with your host (if you are on a limited capacity hosting account, this may be important)
Its a Crutch
I was going to put this into my last point and tie it into developers, but this is a pretty big point. I was talking to a friend Alex V. of DigiSavvy, who was talking to another WordPress developer and the point came up that if you can code with a framework, chances are you can code without a framework.
That is where my annoyance of frameworks come from. I love good code, and I love teaching good code. When someone comes up to me and says they are a developer, but only build with frameworks, I must ask them why!? (exclamation definitely needed). If you are a developer you should be able to make a framework, so why lean on one? If you know that there could potentially be unnecessarily scripts, css, html, etc. that is just sitting there.. why use it?
For developers starting out, frameworks could be a way to learn code. I think that is fine, when I started with WordPress I did not just start by creating my own themes, but looking and tweaking existing themes (default, Kubrik, etc.). However once I got comfortable enough I started to really dive into creating my own themes, then my own plugins. I know look back and know that Genesis and other frameworks are the way to go nowadays (they didn’t exist when I first started developing for WordPress), but they are still a crutch if you have learned enough to stop using them, but still do.
The question is: What are your goals?
So I am not going to be one of those that takes a definitive side here. WordPress theme frameworks are not for me, I have built a few to meet my own needs, and have built themes that I start from (basically Twitter Bootstrap + index.php ), but my goal in life is to be an outstanding developer, and with that comes the constant drive to learn and do better.
If you are looking to not code that much, but still run a small business making WordPress websites, then a theme framework is right for you. If you are a veteran WordPress person, and you just don’t care to learn more about coding and what you can do with code, then a theme framework might be right for you.
However if you want to become a true developer maybe making and building things that people take notice of in the communities, then I highly recommend getting off frameworks, because as soon as you do, a whole new world will open to you. Yes, it may take you 1 more week to build that website for a client, but you can be that much more proud of your work when you are done with it. But I do not make my living off clients.