This is one of my 💚 favorite essays
Every three or four years I’ll kick a hornet’s nest by saying something like:
fellow front-end devs: if you ever feel intimidated by your back-end collaborators’ tech knowledge, remember that they cook up garbage like Bootstrap and JS components because they are scared of MARKUP— Paul Souders (@axoplasm) February 14, 2019
When of course what I meant to say was:
I have zero traffic on my Twitter unless I insult someone, this is an awesome lesson.— Paul Souders (@axoplasm) February 15, 2019
The polite(r) way to say this maybe:
“Let’s use bootstrap” is not a substitute for “let’s engage a designer”
So, full disclosure:
I use Bootstrap. I often choose to use Bootstrap. This is why:
Bootstrap is for rapid prototyping and building shit fast without investing too much time on the looks of your site/app. That’s why it’s popular among the backend devs— Daniel™ (@drmzio) February 15, 2019
Bootstrap is also popular with “frontend” devs. For certain values of “popular,” it’s popular with me. I recently prototyped a data-collection web app using (yes) Bootstrap and (gasp) Angular components.
Of course I have Opinions about Bootstrap. Bootstrap has Opinions and I have Opinions about the Opinions. When Bootstrap’s Opinions align with my Opinions, then it’s the right tool for the job.
My meta-Opinion is that Bootstrap excels in two (not mutually exclusive) situations:
- If we are going to use vanilla Bootstrap, build on their boilerplate, color inside the lines, and accept that we won’t extend it
- If we are already comfortable with CSS & synchronous JS UI elements (ie. jQuery)…and know how we’re going to start tearing out Bootstrap’s stuff when we outgrow it.
But listen, this tweet, the original one, the trollish one, didn’t come from nowhere.
It came from me working on my [n]th project where the original team felt they could shortcut designers and UI developers with “let’s use Bootstrap”. Maybe the project started out as a rapid prototype, but the prototype got into production, and after two or three years it became clunky and ugly and users started complaining or bailing altogether and now they need someone who’s willing to pick up Situation 2, retroactively. This is not an uncommon occurrence; it’s a substantial portion of my business model.
But the other thing I’m learning, with a little lesson every three or four years, is that I can say something polite like “Bootstrap is not a substitute for a designer” and no one will hear it and it won’t get boosted. What gets it boosted is trolling.
I didn’t intend to troll with my original (highly unfactual) tweet. I meant to vent. Vent about the dozens of collaborators I’ve encountered in the past decade-plus who saw so little value in what I do that, even as I’m trying to rescue their products, treat marketing, visual design, and UI development like interior decorating.
I am so not a troll, by nature. I want so badly to project inclusiveness and generousness. I try super hard to make my online presence all about positivity, gratitude, and cheerfulness. Because that’s the kind of person I am. The positivity — 99% of my online footprint — gets practically zero traction. The thing that gets my ideas noticed is when, in a fit of pique, I call someone a name and say something ignorant.
Oh ugh ick. Trolling works. I wish it didn’t.
I put hours of thought into this blog post, and I know it will get zero visibility. But if I call Bootstrap “garbage”…now you’ll pay attention, won’t you?