Thoughts on Using Web Frameworks

Thoughts on Using Web Frameworks

Mar 29, 2013 News

If you’re involved in web design, you’re probably familiar with at least one of the popular front-end frameworks. Bootstrap is everywhere, Foundation is hot on its heels, and the HTML5 Boilerplate has become nearly ubiquitous. Smaller frameworks with a more focused niche are released almost daily.

Foundation

Are frameworks a crutch, or can they be a useful tool to experienced front-end developers? Do they have a place in our workflow if we want to build websites that don’t look like every other website out there?

Here are some thoughts on the good and bad of front-end frameworks:

Types of Frameworks

“Framework” is a broad term — in reality, there are multiple types of front-end framework, each with different goals. High-level frameworks like Twitter Bootstrap and Foundation provide fully-styled elements right out of the box, allowing developers to construct fleshed-out websites without the need for customization. Lower-level frameworks like the HTML5 Boilerplate provide useful code snippets without enforcing their own styles on developers, but require major customization to be useful at all.

Let’s look at the pros and cons:

Pros

Cons

Conclusion

Personally, I’m a fan of Bootstrap, Foundation, and Boilerplate, though I don’t use any of them in my projects. (I used to use HTML5 Boilerplate in everything, but I’ve since weaned myself off it in favor of purely custom code.) I love tearing them apart to see what clever techniques their developers are using, and I keep any relevant snippets handy so that I can integrate them into my own projects. It was Boilerplate that first introduced me to asynchronous Google Analytics code and the jQuery CDN/fallback system. I have since integrated those components into my own projects, while avoiding anything bloated or unnecessary.

Personally, I advise against using web frameworks in your projects. New developers may find their growth stunted by over reliance on prefab code, while experienced developers are often slower using a framework rather than starting from scratch. To me, the benefits outweigh the costs. In a recent Industry Radio Show live chat, Pedro Carmo (@drocarmo) phrased this reasoning quite eloquently: “I think frontend frameworks disable people’s creativity. It teaches you how to edit code, but not to create code.” Amen.

Don’t get me wrong, all three frameworks I mentioned are impressive pieces of work. But why use someone else’s impressive work when you can be making your own?

  • labcoatmedia

    You definitely make some interesting points here.

    I feel that using a framework (I personally use skeleton in most of my projects) just helps with getting you started in the right direction. Many frameworks (such as bootstrap) are slightly bloated and contain many elements that you simply will not use in every project. It is good for every front-end dev to understand the frameworks they are using and how to best utilize them. I too have learned all of what I know from dissecting other people’s work and then using it in a project.

  • http://www.paulund.co.uk/ Paul

    I think frameworks are great, but there is too much focus on using frameworks. I think if you going to use a framework you need to understand how it actually works. You should be using a framework so that it saves you time by not having to write the code yourself. But you should understand how the framework works.

    I’ve seen new developers that instead of learning raw Javascript they would just learn jQuery, they don’t understand that jQuery is just a Javascript framework.

    I’ve seen developers use PHP frameworks that would use frameworks that use advanced PHP techniques like dependency injection but the developers would understand the benefits of it as they are just following the framework documentation.

    So I think you if you are using a framework you should understand how it works and just use a framework to save you time.

  • http://wildappledesigngroup.com/ Rory

    To elaborate a little bit more on the Pro point “Frameworks can provide a springboard for building a robust website quickly…” I would go on to say the business management angle of this is actually quite important. For small firms or freelancers, using a framework isn’t even sometimes a design choice but a financial decision… it’s a way for a client who does not have a lot of money to spend to get a pretty nice website at the most minimal dev time to turn it out. Sure it will have all the familiar UI elements so many other sites have and the design might suffer a little to fit the stock media queries too but for a small client it almost always looks wonderful to them in my experience. In an ideal world we’d all love clients who would spend enough to cover all the custom hours we could ever want but a guy has to eat at the end of the day and you can’t allow a client who is spending peanuts to completely overrun their budget considerations or you won’t be in business for long and your other well paying clients will suffer because you’ll be tied up working for nothing instead of vetting the next project/client.

  • BrycePJ

    I like everyone’s thoughts here, but Jordan, your last line is what seals it for me. Just feels better to go it alone and know the final product is 100% mine.

List Grid
Load More