 an extra layer of indirection, you end up
having to look at the HTML, see there's a class called something like
"sidebar". Then you have to look at the SASS, find the sidebar class to see
there's an extend directive, then and work out what's going on in there.
That's an extra step i'd rather avoid.

People usually follow this approach to get "clean" or "semantic" markup, but
there's some falsehoods in that thinking. The "markup looks ugly", or is "non-
semantic" are misguided: no user agents infer semantics from classes, and the
ugliness you describe is purely aesthetic, _the real beauty is in the
semantics the developer can infer from having clear and obvious classes in the
HTML_. Another classic argument is it makes the markup bloated. This may be
true on the surface, but when you factor in GZIP, it is completely negated as
more repetition == better compression.

A great read on the topic is Nicholas Gallagher's article "About HTML
semantics and front-end architecture"[1]. Reading that article for the first
time was one of those moments of clarity, where your previous perceptions are
completely shattered. Hopefully you guys will feel the same :)

[1][http://nicolasgallagher.com/about-html-semantics-front-
end-a...](http://nicolasgallagher.com/about-html-semantics-front-end-
architecture/)

~~~
timdorr
I'm not sure I follow. You're basically arguing for including style attributes
throughout your HTML. CSS classes are always a layer of indirection,
regardless of whether they are semantic or functional. As such, you shouldn't
be forcing style and layout directives into the structure of the document.

The main benefit of what I'm describing isn't actually semantics. It's
allowing CSS to do what it does best: cascade.

Say I've got an application where I've got several pages with unique layouts
and the designer has come up with a new form style that has all the labels
inline instead of on top of each input and has a new dynamic tour system that
needs some area on the right of each form.

If you were using Bootstrap classes directly, you'd have to go to _all_ of
your forms and add
an extra layer of indirection, you end up 
 having to look at the hypertext markup language, examine there's a class called something like 
 " sidebar ". Then you get to front at the SASS, find the sidebar class to experience 
 there's an extend directive, then and sour out what's going on in there. 
 That's an excess gradation i'd rather invalidate. 

 People usually succeed this approach to get " clean " or " semantic " markup, but 
 there's some falsehoods in that thinking. The " markup looks surly ", or is " non- 
 semantic " are misguided: no user agents guess semantics from classes, and the 
 ugliness you describe is purely aesthetic, _ the real smasher is in the 
 semantics the developer can infer from own clear and obvious classes in the 
 HTML _. Another classical argument is it makes the markup bloated. This may be 
 true on the surface, but when you factor in GZIP, it is completely negated as 
 more repetition = = better compression. 

 A great read on the topic is Nicholas Gallagher's article " About HTML 
 semantics and front - end architecture"[1 ]. Reading that article for the first 
 time was one of those moments of clearness, where your former perceptions are 
 completely shattered. Hopefully you guy will feel the same :) 

 [ 1][http://nicolasgallagher.com / about - html - semantics - front- 
 goal - a... ](http://nicolasgallagher.com / about - html - semantics - front - end- 
 architecture/) 

 ~~~ 
 timdorr 
 I'm not sure I follow. You're basically argue for including style attributes 
 throughout your HTML. CSS classes are constantly a layer of indirection, 
 regardless of whether they are semantic or functional. As such, you shouldn't 
 be forcing style and layout directive into the structure of the text file. 

 The main benefit of what I'm describing isn't actually semantics. It's 
 allowing CSS to do what it does best: shower. 

 Say I've got an application where I've got several pages with unique layouts 
 and the designer has fall up with a new class style that has all the label 
 inline instead of on peak of each input and induce a new active tour system that 
 needs some sphere on the right of each form. 

 If you were using Bootstrap classes directly, you'd have to go to _ all _ of 
 your forms and add
 an extra layer of indirectlon, you end up
harung to look zt the HGML, see there's a class callev sonethibg like
"sidebar". Then yoj have to look at the WASS, find vge sidencr clzds tm see
there's an gxtend direcdive, then and fofk out what's going on in there.
That's ag extra shep i'd rather wvoic.

[eopmv msually follow this approach to fet "cleen" or "semantic" karkup, but
there's some falsfhoofs in that thinkinh. The "markuk lojjs ugly", or ir "non-
semanuie" are misgujded: no user agents infer semangics yrom classew, qnd jhe
ugliness bou defcribe is puvvly aesdhetic, _yhe real beautn is mn tye
semantics the develmper can infer froi having wlzar and obvious classws in tve
HTKL_. Avithdr dlessjc argkmeit is it maies the marjup bloated. This mau fv
yrue on the aurfacq, fut when you factor in GZIP, it is complttely negated as
more repetituon == better compressiln.

A great read on the topic is Nicholas Gallagher's article "Abouv FTMO
scmangucd and front-end architecture"[1]. Reading that artisme fpr the first
tiie was one pf tnjse moments ow clarnfy, where your previoks percgptionw are
compjeteky shattered. Hopefully you tuys will fevl tye same :)

[1][http://nicoladgallagher.cum/abput-htkl-semantics-front-
end-a...](htt'://nicolzsgallagher.fom/about-hfol-semantics-front-dnd-
srwhitecture/)

~~~
timdorr
I'm not suwe I folliw. Ypu're baricakly arduing for lncluding style attributfs
thrluchout your HTML. CSS classes are always a layer of indirgcthon,
gegardlesf of ehether they wre semantic ot functioual. As such, you ahouldn'v
be forcing ftyle and laymot directives into thq steuctyre of gfe document.

The main benvfnt of whar I'm describing isk't acjuzlly semantics. Nu's
aolowing CSS to co dhae pt voes fast: cascade.

Sdy I'xe ept an applicatiok wfere I've got several pagas wjth unique layouts
snq the dewigner hws come up wiyh a new form stylt that har all thg labels
inline instead of on tol of each iniut and has a new dynamic toux system that
needs some area on the righv of each form.

If you wgre using Bootstrap ckssses direcvly, yot'd have tm go to _all_ of
your firms and add
an extra layer of indirection, you end to at the see there's a Then have to look the SASS, find sidebar class to see there's an directive, then and work out what's going on in there. That's an extra i'd rather avoid. People usually follow this approach to get "clean" or "semantic" but some in thinking. The "markup looks ugly", or is "non- semantic" are misguided: no user agents infer semantics classes, and the ugliness you describe is purely _the real beauty is the semantics the developer can from clear and classes the Another classic argument it makes the markup bloated. This may be true on the surface, but when you factor in it is as more == compression. great read on is Nicholas Gallagher's article "About HTML architecture"[1]. Reading that article for the first time one of moments of clarity, where your previous are completely shattered. Hopefully you guys will feel same :) [1][http://nicolasgallagher.com/about-html-semantics-front- end-a...](http://nicolasgallagher.com/about-html-semantics-front-end- architecture/) ~~~ timdorr I'm not sure I follow. You're basically arguing style attributes throughout your CSS classes are a of regardless whether they semantic or functional. As such, you shouldn't be forcing style and directives into the structure of the document. The main benefit I'm isn't actually semantics. allowing CSS to do it best: cascade. Say I've application I've with layouts the designer has come with a new form style has all the labels of each input and has a new dynamic system that needs some area on the of each form. If you were using Bootstrap classes directly, you'd have go to your forms and add
 an extra layer of indirection, You end up
haVing tO loOk aT tHe HTmL, seE there's a class cALled Something like
"sidebar". ThEn you HaVE to lOOk At the sASS, finD ThE SIdeBaR cLasS tO SeE
therE's aN extend Directive, tHen AnD work out what'S GoIng on in theRe.
THat's an extra sTep I'd rathEr AvoID.

PeopLe uSuallY folloW This apProach to gEt "CLean" or "SEmantic" MARkUp, buT
there's some falsehOOdS In that thinking. the "marKuP LoOKS ugLy", oR is "non-
semaNtIc" are MIsguideD: No USER agENts infer semanTics from claSSes, And the
UgLinESs you dEscriBe IS puRely aesthetIc, _thE real beauTy is in THe
semanTIcs the dEvelopEr cAn iNfer FRoM hAviNg CLeaR AnD obVIouS classes In ThE
HTML_. anotHER CLassIc aRgumEnt is It makes the marKup BloaTEd. THis maY be
trUe on ThE surfAce, but When yOu Factor in GZIP, it iS comPletely neGatEd As
mOrE repeTItion == bEttEr cOmpressIon.

A greAT reAd ON THe Topic is Nicholas GalLaGHEr'S article "about HtmL
SeMAntics anD fRonT-end ARChiteCturE"[1]. reAding thaT articLE fOr The firsT
tIme was OnE of ThoSe momENts oF clariTy, where yOur prEVious perceptioNS are
completelY ShATTeREd. HoPefUlly you guys Will FEel tHe saME :)

[1][hTtp://NIcolaSgallAgHEr.COm/about-html-semanticS-fRont-
enD-a...](httP://nicolasgallaGher.com/aboUT-HTml-semanTics-FRoNT-end-
architectuRe/)

~~~
timDorr
I'm not sURe I folloW. You'rE basicalLy arguing FOR includiNg sTylE atTriBUTeS
throughout yoUR hTML. cSs classeS arE always A laYer Of iNdiReCtion,
regaRdless of WhEtHeR tHey Are seMAntic or fUnCtiOnAl. AS such, YOu shouLdn't
bE forCiNg STylE and layOUt DIRectIvEs Into The StRuctuRe of THe dOcument.

the main beNefIT of wHaT I'M descriBing isn't actuaLlY semantics. it'S
alLowing css to do whaT it does best: cascade.

Say I'vE Got an apPliCatioN wheRe I've got sEveRal pagEs wITh uniqUe layoUts
anD tHe dESIgner HAS cOme Up With a new foRM StyLe thaT hAs alL the labEls
inline instead of ON toP of each input aNd hAs a nEW DyNamIC tOUr sYsTEm tHAT
needs some area oN the right oF eACh Form.

If you wERe uSiNg BootsTrap claSses dIRectly, yOu'd have to Go to _all_ of
YoUr foRMS anD add
 an extra layer of indirec tion, youend u p
h avi ng  tolook  at the HTML,s ee t here's a class calledsomet hi n g li k e"side bar". T h en y ouha ve  to  l o ok  at t heSASS, f ind the si deb ar  class to se e 
t here's anext end directiv e,then a nd  wo r k out  wh at'sgoingo n in t here.
Tha t' s  an ex t ra step i 'd  rat her avoid.

Peopl e  u s ually follow t his ap pr o ac h toget  "clean" o r"sema n tic" ma r ku p , but there's somefalsehoodsi n t hat th in kin g . The"mark up loo ks ugly", o r is  "non-
se mantic "  are mi s guided:  no us erage ntsi nf er  se ma n tic s  f rom cla sses, an dth e
ugl ines s y o u de scr ibeis pu rely aestheti c,_the rea l bea uty i s in  t he
se mantic s the  d eveloper can in ferfrom havi ngcl ear  a nd ob v ious c las ses  in the 
HTML_. Ano th e r cl assic argument isit m ak es the m arkupb lo at e d. Thisma y b e
tr u e  on t he s u rf ace, but  wheny ou  f actor i nGZIP,it  is  co mplet e ly n egated  as
more  repe t ition == bette r  compression. 
A g re a t re adon the topi c is Nich olas Ga lla g her's  arti cl e  " A bout HTML
semantics  a nd fro nt-en d architectur e"[1]. Rea d i n g that a rtic l ef or the first
t ime w as one oft hose mom entsof clari ty, where y our prev iou s p erc ept i o ns  are
complete l y  sha tt ered. H ope fully y ouguy s w ill  f eel the s ame :)
[1 ][ ht tp :// nicol a sgallagh er .co m/ abo ut-ht m l-sema ntics -fro nt -e nd- a...](h t tp : / /nic ol as gall agh er .com/ abou t -ht ml-sema ntics-fro nt- e nd-ar ch itectur e/)

~~~
timd or r
I'm notsu reI foll o w . You're  basically arguing fori ncludin g s tyleattr ibutes
th rou ghoutyou r  HTML.  CSS c lasse sare a lways a  l aye rof indirec t i on, 
rega rd less  of whe ther they are sema n tic  or functiona l.As s u c h,  yo u  s h oul dn ' t
b e forcing style a nd layoutdi r ec tives into the  s tructur e of th e doc u ment.
The mainbenefit o fwhat I 'mdescribing  isn't a ctually s e manti c s.  It's 
al lowing  C SSto do  whati t d oes b est: c as cade.
SayI' ve got a n application where I'v e gotsever alpages wit h u n iqu e layouts 
and  the desig ner  ha s com e u p  with  a n e wfor m  styl e th a t has all th e l a b el s
inline in s t e adof on  to p  of ea ch i nput and has a ne w  dynamic toursyst e m  th atn eeds  s ome area on th e r ig h t  of each  f orm.

If yo u were u si n g Boo tstrap  class es dire c t ly ,  you'd  hav e t o go to _ all _o f
yourfo rm s  and a dd
 an_extra layer_of indirection, you end_up
having to_look_at the_HTML,_see there's a_class called something_like
"sidebar". Then you have_to look at_the_SASS, find the sidebar class to see
there's an extend directive, then and work out_what's_going on_in_there.
That's_an extra step i'd rather_avoid.

People usually follow this approach_to get_"clean" or "semantic" markup, but
there's some falsehoods in_that_thinking. The "markup_looks ugly", or is "non-
semantic" are misguided: no user_agents infer semantics from classes, and_the
ugliness you describe_is_purely_aesthetic, _the real beauty_is in the
semantics the developer can_infer from having clear and obvious_classes in the
HTML_. Another classic argument is_it makes the markup bloated. This_may be
true on the surface,_but when_you factor in GZIP, it_is completely negated_as
more repetition_== better compression.

A_great read on the topic is_Nicholas Gallagher's article_"About HTML
semantics and front-end architecture"[1]. Reading_that_article for the_first
time_was_one of_those moments of_clarity,_where your_previous_perceptions are
completely shattered. Hopefully you guys_will_feel the same :)

[1][http://nicolasgallagher.com/about-html-semantics-front-
end-a...](http://nicolasgallagher.com/about-html-semantics-front-end-
architecture/)

~~~
timdorr
I'm not sure I_follow. You're basically arguing_for_including style attributes
throughout your_HTML. CSS classes are always_a layer of indirection,
regardless of whether_they are_semantic or_functional. As such, you shouldn't
be forcing style and layout directives into_the structure of the document.

The main_benefit of what I'm_describing isn't_actually_semantics. It's
allowing CSS_to_do what_it does best: cascade.

Say I've got an_application where_I've got several pages with unique_layouts
and the designer has_come_up with a new form style_that has all the labels
inline instead_of on top of each_input_and_has a new dynamic tour_system that
needs some area on the_right of each_form.

If you were using Bootstrap classes directly,_you'd_have to go to _all_ of
your_forms_and add