Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialScott Oliver
4,999 PointsWith or without a Front-End Framework ?
Hi There, So I have been working on two HTML5 Mobile Applications with AngularJs and Bootstrap, and I must admit that although Bootstrap does most of the design 'sorcery' for you - I find it a bit frustrating to be bound to their strict rules - besides that, it feels like the markup gets really "contaminated" with all these million wrappers and classes.
In my opinion, it's more convenient to write the design from scratch and just use a clean grid, just like in the 'Smell's Like Bakin' tutorials - and add responsiveness incrementally with the project - but I am new to Front-End design, so I might be missing something.
Furthermore, I'm not sure I get the benefits of Mobile-First concept - to my opinion it's much more convenient to scale down from the 'full' desktop view, down to a mobile view - as in these two project's i'm working on, after my mobile design was done, to scale it up to a desktop view looked tedious.
Anyway, would be glad to hear opinions from any serious Front-End guys and designers if around on:
- When & Why a framework like bootstrap, if at all, instead of designing from scratch.
- When & Why mobile first design, rather than starting from a full desktop view design.
Cheers, Ron
4 Answers
Travis Flatt
20,149 Points'Why mobile first', suppose the easy argument is the market. Over a billion devices, and a good portion of them (http://blogs.hbr.org/2013/05/the-rise-of-the-mobile-only-us/) are mobile-only. Heh, that article surprised me. I was thinking about 25%, looks like it's now 30-ish and rising.
There's almost a third of your audience that never sees the painstakingly crafted desktop-oriented design. Now, personally, I prefer designing for the desktop... more real estate means more room to get (too) fancy.
When & Why Bootstrap... Full frameworks are great to get up and running quickly. All other things being equal, I'd say designing from scratch always wins out. But, of course, all other things are never equal. Bootstrap's great for a quick front end with plenty of features, but can be overkill for some projects, not enough for others, and not quite right for others. It's not an either-or deal, at least (I regularly cherry pick bootstrap). Can just use the parts you need, or find something that's just a grid, or just typography, etc.
James Barnett
39,199 PointsMy view on it is that Bootstrap, Foundation and other opinionated frameworks add in too much to start with. Personally I think pure.io is a good choice as it's lightweight, modular and not opinionated at all.
An issue with allgrid frameworks share is that they also tightly couple HTML to CSS creating a lot of technical debt, there's a simple solution to do that, use a CSS preprocessor instead of embedding framework classes into your HTML.
There was a great thread here on the forum that discussed this a while back.
For a more thorough discussion on these points check out:
Nathan F.
30,773 PointsTop notch stuff!
Wayne Priestley
19,579 PointsI have just finished a site using bootstrap and i have to say i probably couldn't of done it in the time i had without it, but boy does my html look like a bag of crud, i bet i could get rid of 50% of the code if i didn't use it. But it done what was needed so i shouldn't complain.
I have a little more time with my next project so I'm using The semantic grid system and a bit of Less this time around.
Scott Oliver
4,999 PointsThanks for all the great answers, very informative !
Another thing I had in mind is regarding a best-practice I was doubting about... As said and written in many places - it is best to use fluid & adaptable measurements as much as possible, like em's, percentages, vm's, vw's , rather than fixed pixels.
So when starting a design from scratch, assuming I am designing to my current view port, and would want it to be responsive eventually - should I start designing with fixed pixels till it fit's my view port perfectly and only then convert them to a fluid foundation with the given formula of pixels to em's\percentages? Or should I start straight away by using only fluid & adaptable measurements?
James Barnett
39,199 PointsI'd say for fonts use ems straight away and use vertical rhythm to give your typography more meaning.
In terms of layout most of it should be handled by a grid. But for any other margins and padding you need, I'd say it's hard to think in terms of 1.25% or something so I'd say use pixels in that case and then convert them.
John Wheal
27,969 PointsI personally never use a frontend framework other than very quick prototyping. I normally do a detailed mockup in Illustrator for a fixed width site and think about how I can make it responsive but not actually design it. I then go straight into using ems for fonts and percentages for widths but I only get them working for a fixed width. I then go back through the code later to make it fully responsive but it should already be 80% there.
Scott Oliver
4,999 PointsSounds good guys..thanks for the great info... I know in the past it was common to layout a grid-like behavior with tables which as far as I understood is not in use anymore for a long time already. So what would be the alternative for creating a grid-like behavior but without using any grid system framework? I gave it a try with just fixed width's & floats, but it came out as a really breakable layout and relied on a lot of "Magic Numbers"... What would be the common alternative way to design a grid-like layout without any grid-framework? if at all... As I guess not all sites after the 'html tables' era were built using grid frameworks.
James Barnett
39,199 Points>
So what would be the alternative for creating a grid-like behavior but without using any grid system framework?
You can use http://simplegrid.info