Zach’s ugly mug (his face) Zach Leatherman

JavaScript, Community

January 11, 2023

I’ve been a full-time professional web developer for 17 years. In that time, I’ve seen things.

I remember when web browser developer tools were first introduced, using Firebug for the first time.

I predate even the WebKit mobile revolution: a time when proxy browsers reigned supreme and Blackberry was king.

I bore witness to the React schism, ruthlessly popularizing Single Page Apps and clientside rendering; giving rise to a slower web in the name of developer experience.

I embraced the npm revolution.

I rode the waves of Node.js.

I webpacked across The Great Divide.

The Great Divide

The Great Divide really resonated with me. I keep coming back to it and I do think it continues to accurately describe what feels like two very distinct and separate camps of web developer.

The question I keep asking though: is the divide borne from a healthy specialization of skills or a symptom of unnecessary tooling complexity?

“Shout out to web developers that don’t feel (or haven’t felt) like they belong in the JavaScript community—you are important and your opinions are valid.”—December 9, 2022

I ran a JavaScript meetup for six years (2012-2018) and a JavaScript conference for five years (2015-2019). I maintain Eleventy, a JavaScript Open Source project. But I would never identify as being on the JavaScript side of The Great Divide.

Folks that know me from my time at Filament Group and my work with web fonts would likely place me on the User Experience side of the divide. I feel more at home there.

But I also vehemently reject that I have to exclusively choose one side, and perhaps that is best reflected in my work on Eleventy.

Mirror, Mirror

The disconnect manifests itself time and again as accepted truths in the JavaScript community to me feel like anything but. I was reminded of that again today when I visited the 2022 State of JavaScript results.

“Solid and Qwik are suggesting that React might not have all the answers”—Source

Well, wait. When you’re straddling the divide, you pretty clearly recognize that React never had all of the answers.

“Astro, Remix and Next.js (among others) are making us reconsider how much code we really need to ship to the client.”—Source

Well, wait. When you’re straddling the divide, you know that Remix (67.7 kB compressed) and Next.js (90 kB compressed) have not meaningfully reduced their bundle sizes at all. Measurement reveals that bundles are growing: Next.js was 72.2 kB compressed in 2021.

The Great Dissonance

This JavaScript community (if judged by the demographics of this survey) seems to be comprised mostly of folks that are largely building with React, webpack, and Jest. With React on 3.2% of web sites and jQuery at 77.7% (as of January 2023), that’s a pretty small slice of a much larger community.

We seem to live in different worlds.

I want to be a web developer, not a JavaScript developer.

If you live in a different world too, we should be friends.

< Newer
The Magical Eleventy v2.0 Beta Release
Older >
In Case You Missed It: 2022

Zach Leatherman IndieWeb Avatar for a builder for the web and the creator/maintainer of IndieWeb Avatar for https://www.11ty.devEleventy (11ty), an award-winning open source site generator. At one point he became entirely too fixated on web fonts. He has given 81 talks in nine different countries at events like Beyond Tellerrand, Smashing Conference, Jamstack Conf, CSSConf, and The White House. Formerly part of CloudCannon, Netlify, Filament Group, NEJS CONF, and NebraskaJS. Learn more about Zach »


Baldur BjarnasonDFKayeIndieWeb Avatar for https://lemmy.mlFynn BeckerFrontend DogmaJeremy KeithIndieWeb Avatar for Avatar for https://lemmy.mlIndieWeb Avatar for https://nicolas-hoizey.comMike AparicioRonalds VilciņšNaiyer Asifsudo rm -rf fascismMatt WingKatie Sylor-MillerNiels van RongenBoris SchapiraLea RosemaMatthias OttAyoPhil HawksworthRufus AleksandrBrian RinaldiDariuskaterbergPaul Robert LloydZander :jquery:Darryl PogueFronteersTyler StickaTravis Maynardhenry ✷Max BöckhigbyMatthew PhillipsDave 🧱meduz'Ashur CabreraRyan MulliganDerek P. CollinsRupert 'fildon' McKayBastian AllgeierSara Joy ✨Charles RoperBaldur BjarnasonTrey PiepmeiermasonSarah MärdianDan JacobSarah Fossheim :v_enby:Rhian van EschRob AndersonJuanChris ColemanPaul HebertStuart LangridgeMatt WilcoxAlex NicoldanMcNeelyJames HarrisEvanrichcorbs@hachyderm.ioNoah LiebmanMichael ScharnaglCory LaViskaManz 🇮🇨⚡👾azuWilliam Oliveira


Mike AparicioRonalds VilciņšNaiyer Asifsudo rm -rf fascismpatakMatt WingBoris SchapiraKatie Sylor-MillerNiels van RongenMatthias OttLea RosemaLevi McGranahanChris CoyierBarry WhiteapmeyerTim SeverienRufus AleksandrkaterbergDavid McCormickBrian RinaldiChad OakenfoldStephen BellFlorian EckerstorferJon ColemanAlexis DeveriatbesedanateTyler StickaDamian WajerTravis Maynardhigbyhenry ✷Matthew PhillipsMax BöckDave 🧱Sara Joy ✨Ashur CabreraDerek P. CollinsBjörnBen DelarreRupert 'fildon' McKayTrey PiepmeierCharles RopermasonRhian van EschChristopher Kirk-Nielsenfocus404Sarah Fossheim :v_enby:Dan JacobMatt WilcoxChris ColemanAlex NicolMcNeelyEvanDonnie D'AmatoJames HarrisBastian Allgeierrichcorbs@hachyderm.ioMayank :verified:Michael ScharnaglLukem
  1. Lukem


    @zachleat no worries, I'll edit the link. Thanks for letting me know! :)

  2. daniel sieradski

    daniel sieradski

    @zachleat I feel like once upon a time we were focused on making web coding accessible to all and then we got increasingly complex JS frameworks that forced us into specializations and the emphasis on accessible coding switched to nocode drag-and-drop tools that abstracted away e… Truncated

  3. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @selfagency @leaverou Lea always does amazing work!

  4. @zachleat 💯💯💯The great divide always bothered me because — although it reflected a reality in the industry — I felt like it was telling me I couldn't continue as a web developer who knows HTML, CSS, and JS; I needed to pick a side.

  5. daniel sieradski

    daniel sieradski

    @zachleat @leaverou she does but my question is, why didn't what she created inspire similar efforts? i see energy in webassembly bringing compiled languages to the browser but no energy in advancing what we can do with html itself.

  6. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @darth_mall Oh, interesting. An unfortunate byproduct of acknowledging the divide 😱

  7. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @selfagency @leaverou surely declarative shadow dom occupies the beginning of something there!

  8. Mayank :verified:

    Mayank :verified:

    @zachleat every time i use javascript, it makes me feel evil, especially if it's something that cannot be achieved without javascript

  9. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @hi_mayank oh wow—why?

  10. McNeely


    @zachleat I feel like whenever you work on a project that is either a library or a part of the toolchain you cannot help but straddle that great divide. Its a different experience than working on a product team focused on ""

  11. daniel sieradski

    daniel sieradski

    @zachleat @leaverou still very js heavy in implementation

  12. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @selfagency ah, hmm—I don’t see that

  13. Mayank :verified:

    Mayank :verified:

    @zachleat i guess "evil" is a bit of overstatement. i don't think js itself is bad. it's indispensable for accessibilitybut this feeling is kind of a result of the divide. "i used js, therefore i must be on that side"

  14. Bastian Allgeier

    Bastian Allgeier

    @zachleat amazing post 💚 I definitely live in that different world together with you. I fell in love with the web over 20 years ago and I'm still in love with it every day. It is so much more than that tiny bubble from the survey. Your post is another great indicator why it … Truncated

  15. Sara Joy ✨

    Sara Joy ✨

    @zachleat omg. I'd not seen that @chriscoyier Great Divide article until now.Both your post, Zach, and that article, yes. Resonating hard.

  16. @zachleat I'm not sure it's even a byproduct. There are quotes in the CSS Tricks article that explicitly say we should do away with the term "frontend developer" and divide the field up into the JS camp and the HTML/CSS camp.

  17. Evan Boehs

    Evan Boehs

    @zachleat I have not been impressed with the survey, but it's a perfect metaphor for the larger community. Rough and rushed.I was among the first people to fill the survey out, and it was released with many egregious spelling errors (I tooted one)And as you noted, they mis(re… Truncated

  18. Lea Verou

    Lea Verou

    @selfagency @zachleat I’ve thought about it a lot in the past few years, and here's what I concluded: - The people working on JS frameworks tend to be hardcore devs, so they want to create stuff for people like them, not beginners - Something for beginners doesn't attract… Truncated

  19. Lea Verou

    Lea Verou

    @selfagency @zachleat Also, implementing high level declarative, reactive syntax that can work with whatever HTML & CSS you throw at it is HARD. A lot of Mavo's code is incredibly complex to handle all the edge cases, and still buggy (part of that has to do with the lack … Truncated

  20. Charles Roper

    Charles Roper

    @bastianallgeier @zachleat @eleventy @getkirby Absolutely agreed. I see Eleventy and Kirby as kindred spirits. I've just started using Kirby, but the similarities are striking. They are elegant tools for building websites. The React et al ecosystem is, to my mind, not about w… Truncated

  21. Max Böck

    Max Böck

    @zachleat I share the feelings in this post. I work with React a lot, and I'm somewhat experienced with Javascript - yet I would never identify as a "JS Developer". Not because of the language, but because of the general sentiment of "DX over user needs" I ass… Truncated

  22. daniel sieradski

    daniel sieradski

    @leaverou @zachleat that all makes sense. i guess i just figured there'd be more of an interest from educators, standards enthusiasts, and browser makers in making something like mavo part of a future HTML spec.

  23. Lea Verou

    Lea Verou

    @selfagency @zachleat That was the vision behind that line of research. Having seen things from the standards side however, something like Mavo is too far out of course. If we ever get to something as high level as that, it will be through decades of lower level APIs building tow… Truncated

  24. Colinaut


    @zachleat I so resonate with this as someone who has been both a designer and developer since the olden table-layout days. I am proficient at JavaScript/react/svelte/etc. but definitely consider myself a web developer — and a web designer. Bosses in the past encouraged me to spec… Truncated

  25. Darius


    @chriscoyier @zachleat @sarajw ✨❤️ "I want to be a web developer, not a JavaScript developer." ❤️✨That's me. That's my frustration. That's my anger towards people calling themselves front-end, and avoiding CSS and proper HTML like the plague.Thanks for writing… Truncated

  26. Jake Carpenter 🏳️‍🌈🏳️‍⚧️

    Jake Carpenter 🏳️‍🌈🏳️‍⚧️

    @mxbck @zachleat I like to take it even further and stick to "Engineer" or "Developer." Yes, the languages and frameworks are tools, but even the platform we currently specialize in is nothing more than a choice.I'm confident that if there were a sudden paradi… Truncated

  27. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @hi_mayank ah! I think we differ subtly there—I like a good JavaScript, here and there. But if I don’t put everything *through* JS, it feels as though I’m an outsider

  28. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @bastianallgeier This is really lovely to hear. I’m so glad we got to meet at @btconf so many years ago! And I hope to repeat sometime soon! @eleventy @getkirby

  29. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @darth_mall ah, yeah—it does make me wonder if the original was more of a “represent the sides” rather than leaning into an opinion

  30. Mayank :verified:

    Mayank :verified:

    @zachleat there are so many things this industry does that make people feel like outsiders. the "just use tailwind" crowd comes to mind

  31. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @eb let’s be friends!

  32. Mayank :verified:

    Mayank :verified:

    @zachleat @darth_mall chris responded! The Great Divide Was Indeed Divisive - Chris Coyier

  33. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @colinaut yeah! I do think both are valuable, but knowing what resonates and excites you to work on is also super important

  34. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @darius Let’s be friends!! 🙌🏻

  35. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    Looks like @chriscoyier responded in blog post form (blog post response to a blog post—I am so happy 🏆) @hi_mayank) The Great Divide Was Indeed Divisive - Chris Coyier

  36. Zach Leatherman :11ty:

    Zach Leatherman :11ty:

    @hi_mayank whew, yeah.

  37. Katie Sylor-Miller

    Katie Sylor-Miller

    @zachleat literally everything you said, I say too. Also yay to 17 years as web developer! 🙌 2006 was a good year

  38. Boris Schapira

    Boris Schapira

    I totally agree. Fun fact: in France, we live in a semantic bubble. The first Front-End web developers historically originated from the printing industry and were called "integrators", because they integrated designs into HTML constraints. The first JS developers who wave… Truncated

  39. Jeffrey Lembeck

    Jeffrey Lembeck

    @zachleat as somebody who has done work on both sides of this in about the most extreme ways — I strongly agree, man.

  40. @zachleat Imagine how good things would be if we put the mantle of dev celebrity on folks who performance, accessibility, and usability over tooling navelgazing and FOMO.

  41. “With React on 3.2% of web sites and jQuery at 77.7% (as of January 2023), that’s a pretty small slice of a much larger community.” -@zachleat

  42. @zachleat @chriscoyier Really enjoyed both articles! The Great Divide is often top-of-mind for me. I don't think it "pitted the sides against one another" as much as put words to a phenomenon that was already happening but hard for many to articulate.Side note: Any ti… Truncated

  43. Mathias Gmeiner

    Mathias Gmeiner

    @zachleat @bastianallgeier @eleventy @getkirby I hope we can still be friends, even though we use (at the moment) Next.js as the frontend framework for our Headless Kirby 😢

  44. IndieWeb Avatar for

Shamelessly plug your related post

These are webmentions via the IndieWeb and

Sharing on social media?

This is what will show up when you share this post on Social Media:

How did you do this? I automated my Open Graph images. (Peer behind the curtain at the test page)