Web developers: Beware framework bloat

Web developers: Beware framework bloat

Summary: Web design frameworks can be useful tools but be wary of adding too much bloat to your website app.


Another week, another contract, another project. And another framework.

In the next few weeks I'll mostly be using the Twitter Bootstrap framework, with the Haml markup language and the Sass CSS preprocessor.

The whole idea of Bootstrap is to provide everything you need to get a website up running very, very quickly. There's a CSS grid, CSS styles, jQuery and jQuery plugins, heck, even the buttons are styled nicely. You hardly have to think.

And therein lies the problem. The danger of switching off your brain and letting default take over. Versus getting the job done.

Luckily for me, my noble predecessors on my new project have customised Bootstrap, getting rid of some stuff that's not needed and creating a 10-pixel grid.

At the other extreme is starting from scratch. My favourite framework is from Rachel Andrew:

<!DOCTYPE html>
  <meta charset="utf-8" />

I have started with this template on numerous projects, and then started adding what was required. Perhaps this approach is a way forward. The idea of a library is that you take out the books you need as you need them, not a whole mobile library lorry load.

Frameworks such as Bootstrap, Boilerplate and Blueprint provide all that you need, including the kitchen sink, to get your website up and running with minimal effort.

Modernizr Download Builder
The Modernizr JavaScript library builder - a way to pick just what you need, not the kitchen sink

Maybe a library should come to mean something like the JavaScript detection library Modernizr, where you configure your production build by adding the features you need.

Do let me know if there's an equivalent CSS library out there in the wild.

Topic: Software Development

Jake Rayson

About Jake Rayson

A web designer since the 20th century, I am a pragmatic advocate of Free Software and I use proprietary software when appropriate. I made the full-time switch to Linux back in 2007, and my desktop tools of choice are Linux Mint, Inkscape, GIMP and Sublime Text.

As a Front End Developer, my core skills are HTML5, CSS3 and jQuery, and my working life reflects my commitment to open standards and accessible websites (ie accessible by everyone, regardless of browser, platform, ability or technology).

For web publishing platforms, I use WordPress for ease of use and Drupal for more complex solutions.

I am also learning about Ruby, Rails, Sinatra and CoffeeScript. I like the minimalist Ruby Way. To this end, my personal portfolio website is built with NestaCMS.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • I thought that framework and bload were synonymous?

    The problem with all frameworks, including Java, are all the bloat they bring along, increasing vulnerability surface attack vectors.

    In the software engineering world's matter vs anti-matter:

    Excellence and fast time to market are mutually exclusive.

    To get a better education it is sometimes not possible to choose the curriculum. Ultimately, this is okay; the lessons we don't feel inclined to learn are often those we can benefit from the most.
    ~ Phil Booth

    Wexelblat's Scheduling Algorithm:
    Choose two:
    • Good
    • Fast
    • Cheap

    Choose a job you love, and you will never have to work a day in your life.
    ~ Confucius
  • Oops I meannt Bloat

    Couldn't ZDNet implement edit please?
  • Lol, meant...

    Oh well, so much for the backspace, or edit functionality, available back in the days of TSO (Time Sharing Option)...