Boagworld Forum
Boagworld is not just a web design podcast, it is also a thriving online community. Whether you build, design or run websites there are always people here to help. Whatever your question there is sure to be somebody with the answer.
Boagworld is not just a web design podcast, it is also a thriving online community. Whether you build, design or run websites there are always people here to help. Whatever your question there is sure to be somebody with the answer.
Comments
Do agree with Dougs remark here. Frameworks are useful for quick prototyping work, to get handy snippets of code from or to learn from. I wouldn't use a complete framework (unless very minimal) for a real project. Whenever I tried that, I ended up undoing so much stuff that the resulting code base would become big and unmaintainable. And it would cost me just as much or more time then when I would have started with a blank slate.
What does work, is having a personal toolbox with reusable code snippets around. So when you build a site, those snippets can be cut and paste quickly. You don't want to reinvent that dropdown menu again and again for example.
About the grid frameworks specifically: I don't understand what is so attractive about them. Writing the CSS for the grid/layout of a site is very little work. Column to the left, column so much pixels to the right, a box so wide here, one there and you're done. Say I spend a day thinking about the design of a certain page (sketching, doing research, maybe some photoshop work, etc). Writing the CSS to implement that layout takes maybe 15 minutes (only talking about the layout, not the complete design). So there's almost nothing to gain there.
Maybe if you develop a huge website (say the BBC site) with many dozens of different pages, modules, etc, with a large team of developers, using some sort of standardized framework works. But even then I would expect that team to write their own specific library of reusable classes, specifically for that website, instead of using one of the existing frameworks.
http://verekia.com/initializr/responsive-template
I think that using a framework is not necessarily a limitation, but then, I'm almost always disagreeing with Doug. :)
I believe that a good framework, built on solid design principles, can in fact help designers to learn the rules of design, and then learn how and when to break them. A framework can only limit you if you allow it to do so.
A twelve-column grid serves my purpose for most cases. If you really want to make it different for each project, however, then try semantic.gs, or another LESS/SASS/SCSS/whatever-based framework. They usually provide you with a mechanism to create your own grid fairly quickly and easily.
As usual, Doug raises a good point, but I believe that these are the failings of us as designers, not the failings of grid frameworks as tools. Now that I finally got SimpLESS to work on my Linux box, I can quickly and easily create grids to fit any situation with semantic.gs.
Now, to combine the best bits of Foundation and semantic.gs to create my very own super framework! I shall rule teh interwebz! Muahahahahaa!
But back to my point. You can choose to let a framework simply speed up your process, you can choose to let it limit your design, or you could even get stuck somewhere in between. I don't see it as a black and white issue. You shouldn't necessarily abandon hammers, just recognize that there are also screwdrivers, saws, planes, chisels, and more.
While going off and creating your own tools from scratch is definitely cool in its own way, it isn't always necessary.
There are actually two separate issues with pre-made grid frameworks.
1- You are limited to using the grid values (for the number of columns, column width, gutter width, etc) from that framework. So if you just happen to need exactly the same measures, no problem. But if your content would be better fitted in slightly different sized grid, it would be better to write your own. I think this is the point Doug makes.
2 - Using a grid framework forces you to use non semantic classes inside your html to create the grid. Most grid systems I have seen use something like col-1, col-2, etc. There are pros and cons to this approach. So whether this is a good or bad thing depends on your situation/project. For most of my projects, adding extra classes to my HTML for solely styling the grid makes no sense. Most often I'll just use existing markup (like article, aside, footer) or use a class like maincol or sidecol and use those for hooks in my stylesheet. However, for big teams in bigger, more modular websites, I can imagine that adding classes like span-2, span-4, etc makes sense (forcing uniformity among developers and modules)
Does nobody ever listen to me when I say to check out semantic.gs? You're not limited to any set number of columns, and no, you don't have to use un-semantic classes.
Seems to me that actually the debate is evolving in to something else, frameworks and how they constantly solve and fail all at once.
Allow me to elaborate,
As a designer/front end developer/code monkey, you will spend a lot of time building varied sites for clients. They all have different business requirements (not always of your choosing) sometimes you are building a mobile first ultra modern awesome site, and sometimes it's a fixed width (it still happens) low budget website for a smaller client, or anything in between.
The reality is the internet is messy and it's not likely to be less messy for quite a while as it matures. Frameworks are great, in so much that they solve the problem they are designed for. The issue is that a framework is a scaffold designed to help you achieve a particular given task quickly and easily.
Read that last bit again "achieve a particular given task".
Here is the rub, all our processes are different depending upon the agency you work for, your personal workflow or the particular site you are building and the business requirements at the time. People have tried to help by building frameworks to solve these tasks. But it isn't working, every time there is a new idea or problem a hundred frameworks pop up and when you try to build those ideas in to your own framework or augment someone else's it doesn't quite fit...so you write another framework to fix it and the circle perpetuates itself.
As you can probably tell I have thought about this issue a great deal.
To me the answer isn't frameworks at all, it's a toolkit
I have a series of problems solved in my custom LESS toolkit for various issues, different grid solutions and typographic solutions, and I cherry pick the given starting points for a particular project based on the user and customer requirements. From there I roll my own code for the rest. This has proven a much quicker, more robust system. When new thinking emerges or a different approach becomes common, I can just augment my existing approach, rather than start from scratch and zero useful code.
Toolkits allow you to design unconstrained and hassle free.
Frameworks tie you down and force you in to a rigid path.