For those of you timid about a little harsh frank language, do me a favor, skip reading this, and go sing kumbaya around the drum circle with the rainbow farting unicorn. I'm not going to sugarcoat this.
Take your frameworks, shine 'em up real nice, turn them sideways, and stick them straight up your candied...
I am SICK TO DEATH of needlessly pointlessly bloated and convoluted projects PISSED ON FROM ORBIT by "frameworks" -- and they just keep getting DUMBER!!!
Client side scripting doing the server's job if you care about security, shoe-horning programming models like MVC into languages that DON'T WORK THAT WAY (like PHP), vomiting up as much if not MORE code than you'd have written if you just used the underying language DIRECTLY!!!!
Whenever people talk about a framework being "simpler" or "easier" or "being more productive" I genuinely have ZERO CLUE WHAT THE F*** THEY ARE TALKING ABOUT!
Admittedly I say the same thing about noodle-doodle fairy-tales about a magical man in the sky.
Though in that way the fans of these systems -- particularly on the front-end like jQuery and Bootcrap -- are like dealing with brainwashed cultists! They have swallowed the BS for so long they think the presentational rat droppings are jimmies and the syntactic diarrhea is chocolate syrup! Because of that even when they break it, and keep breaking it, and keep having problems with it, and go to five or six different forums and are repeatedly told what's wrong, the die-hards REFUSE to accept that maybe, just MAYBE the framework is at fault. A situation made all the worse by upper and middle managers who only know these frameworks as sick buzzwords they read about in Forbes, insisting they be used on projects when unqualified to even make that determination!
... and as I've said many times, taking technology advice from Forbes is like taking financial advice from Popular Electronics. Next thing you know you're throwing money away on blatant scams that violate some basic principles of physics like solar roads, hyperloops, and Moller's "air car".
Same goes for outright idiotic BS like CSS preprocessors. 1) if you have enough CSS for it to make a difference you have too much CSS and likely don't know enough HTML or CSS to be building websites. 2) How does adding more steps and writing more code than you would actually have had if you KNEW CSS make things any easier?
Talk about sipping the kool-aid.
Naturally this is why so many people seem to be under the absurd delusion that having to use markup like this: (not to go all broken record)
<div class="container">
<div class="header clearfix">
<nav>
<ul class="nav nav-pills float-right">
<li class="nav-item">
<a class="nav-link active" href="#">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Contact</a>
</li>
</ul>
</nav>
<h3 class="text-muted">Project name</h3>
</div>
<div class="jumbotron">
<h1 class="display-3">Jumbotron heading</h1>
<p class="lead">Cras justo odio, dapibus ac facilisis in, egestas eget quam. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
<p><a class="btn btn-lg btn-success" href="#" role="button">Sign up today</a></p>
</div>
Is actually how websites should be written, when quite clearly it proves even the people making the tutorials for bootcrap don't know enough HTML to be telling others how to build websites.
For those who don't get it: How can you have a H3 without a H2 that it's indicating the start of a subsection of? How is "Jumbotron heading" THE heading (yes, singular) that every section of every page is a subsection of. You know, what H1 and H3 mean. Of course if the H3 was a H1, was placed properly BEFORE any other content-bearing elements, and the H1 was a H2, it wouldn't even NEED HTML 5's dumbass pointlessly redundant NAV tag. Then of course you have the mentally enfeebled "Just slap classes on EVERYTHING" because of course bloating out the markup is going to make it easier to style and maintain and would NEVER possibly create "specificity hell". What makes an ANCHOR be a "button"?!? What makes a sentence fragment inside an anchor be a grammatical paragraph? Clearfix? What is this 2003?!?
Hence why even that "small" 933 byte snippet is doing the job of 500 bytes of code!
<div id="top">
<h1>Project Name</h1>
<ul id="mainMenu">
<li><em><a href="#">Home</a></em></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
<div class="jumbotron">
<h2>Jumbotron heading</h2>
<p>
Cras justo odio, dapibus ac facilisis in, egestas eget quam. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.
</p>
<a class="signup" href="#">Sign up today</a>
</div>
You multiply that type of stupidity across an entire document and it's no wonder the mouth-breathers who promote the use of bootcrap duping rubes and nubes into thinking that it is worth a damn vomit up several dozen k (if not 100k or more) of markup to do 10 to 20k's JOB!
WORST OF ALL pissing on accessibility, graceful degradation, separation of presentation from content, and the entire reason both HTML and CSS even exist in the first place!
These frameworks card-stack their examples, use glittering generalities in "plain folks" testimonials to try and transfer the IDEA of it being easier even when it clearly is not. Transfer is also used in the soft language to try and actually use words like "easier" as a far more subtle version of name-calling than I'm using here; since by CLAIMING to be easier they are in fact claiming that HTML and CSS aren't easy... and of course don't forget the magic of bandwagon. "so and so is using this, we're all using this, don't miss out you NEED to be using this too!" -- BARF!
Those of you who know anything about marketing -- or more specifically propaganda -- may recognize a few of the terms I just used.
They are a blight upon websites, and 70%+ of the time I'm brought in to clean up a website where a government agency, educational facility, medical facility, or public utility is in court or paying fines over accessibility violations, these dipshit halfwit frameworks are to blame!
The rest of course being that damned near every artist under the DELUSION that they are a "designer" don't seem to know the first damned thing about accessibility minimums, user experience, HTML, CSS, or any other specifications, usability studies, or any other basic site engineering concept... hence they aren't qualified to be designing but two things -- and Jack left town! Design isn't just art or how pretty it is -- it's engineering that incorporates art!
-- edit -- side note, I honestly thought bootcrap was going to be the pinnacle of developer ignorance, stupidity, and gullibility... but then I saw w3.css. Which LITERALLY lives up to what I've said about HTML/CSS frameworks since the first time I came across one. At that point you've missed the point of HTML and CSS so badly you might as well go back to the worst of browser-wars era HTML 3.2 with <font>, <center>, and tables for layout!
class="w3-red w3-border-left w3-xlarge"
REALLY? That's just going full pakled. You never go FULL pakled. If you do not understand what is wrong with that, you do NOT know enough about HTML or CSS to even offer an opinion on the subject!