What the webdev culture's feeling

Articulating my thoughts and worries about how we make websites.

by pb


This essay is a living draft. Comments are best directed at my email.

A personal history of "web dev"

or: anthems for an eleven-year-old aspiring web designer

My website is designed in very much the same way as I have designed it since I was a child: by hand, with a text editor, and a browser as my primary review tool. I try to use well-formed, semantic HTML, and (attempt to) design around progressive enhancement, the idea that a website ought to be usable with just the HTML even if other assets such as styling and scripting don't load.

But let's put it another way. I designed this website according to the cultural practices and values of the community that was (and still is) important to me: web designers who cared deeply and empathetically about their sites, so much so they wanted as many people as possible to view it.

A flashier world?

In the early 2000s, there was another competing culture: Adobe Flash developers who saw Flash as the ultimate design tool. They saw it so much that they sought to create entire websites entirely in Flash, regarding HTML as an artifact of the past (something I'll revisit later...).

When Apple made the decision to not include Flash on iOS, I remember developers decrying this decision, saying that not only was Apple holding back the medium of the web, but that this decision would push consumers toward Android, which did support Flash.

Of course, history played out and Flash died out, which I remember being quite happy about: Flash had accessibity issues, Flash was bloated, Flash didn't interact well with the world outside of Flash. But what I had missed was that the actions of a single corporation were likely the biggest contributor to the adoption (or rejection) of a given technology.

Additional notes

Adobe (the creators and sole developers behind Flash, a proprietary format compared to HTML) saw fit to encourage Flash as the future of webdev. They released Adobe Flex (a webapp framework that was much more sophisticated than what HTML could do, and also more or less required Adobe's proprietary, paid Flex Builder IDE) and Adobe AIR (a precursor to Electron that worked with both HTML and Flash-based apps).

The great Adobe Web Design Scandal

When Adobe pulled out of web development, they took along with it Dreamweaver, a graphical application for developing websites that were highly sophisticated equivalents of what we today would call "static site generators." You got a lot of things that we still don't have: WYSIWYG editing, templates, live-views... We spent a whole decade before we got all of that back. And yes, Dreamweaver cost money, but a Dreamweaver developer could whip up a lot of websites that looked a lot more sophisticated than a hand-written one. A shame it's gone!

But I lied. because Dreamweaver still exists. It's still being supported even. Why is it not in our toolbelts?

No one wants to be a web designer anymore?

Perhaps it's because GUI-based tools are seen as a little out of fashion in the developer culture that I reside within. Look, Front-end engineering is seen as a skillset orthogonal to "back-end" engineering or machine learning or infrastructure engineering, but ten years ago it was not seen as software engineering. This despite the fact that web app GUIs were gaining sophistication at a breakneck pace, that Gmail and Google Docs had existed since the early 2000s... JavaScript-based "web dev" was just not taken as seriously.

And then came a proliferation of front-end web frameworks that sought to model "real" desktop-based UI development, MVC frameworks like Backbone, Dojo, AngularJS, and countless more I have already forgotten. But it wasn't until React that web dev really gained legitimacy, despite a lot of skepticism at the time it was introduced.

Suddenly the quality of tooling increased too, and now the state-of-the-art web frameworks have very good tooling, in many ways surpassing their equivalents in their desktop world (like live previews).

And yet it's no longer possible for a web designer to use a graphic design program to generate a web application or website, like they used to be able to. And when's the last time you saw someone use the term "web designer"? Elly Loel discusses her dissatisfaction with having tobrand herself as a "front-end web developer" because her competencies have been devalued, something also discussed by Josh Collinsworth. At a time when the average human spends more time on a web browser than ever before in history!

Additional notes

Ten years ago, I sent in a resume to a recruiter for a prominent venture capital firm in hope of getting some internships. I was briskly and brusquely dismissed by the recruiter, saying that despite my experience developing Rails and JS apps, that they were looking more for "software engineers".

What's the culture feeling?

I hope I have been able to show you how the culture defines the tools, about how web development was seen influenced powerful actors to invest in (and divest in) certain types of tooling. So what are our tools saying about our culture?

Well, I think that it reflects a culture that is heavily invested in novelty and alarmingly neglectful of quality. Alex Russell has written an evidence-based assessments on how web performance, on average, has declined, despite browser engines and core web technologies becoming more efficient and ergonomic.

All this, I think, is indicative of a development culture where the thing that matters most is being a "10x engineer", where the thing being optimized for is raw code output, and where a Tech Industry buys into and reinforces a charismatic notion of perpetual "line-go-up" (I wish that was just unserious meme-speak) in all aspects of computing output. All while I see a lot of tooling fall short, even at the task of code generation (Why does the designer have to do everything in Figma and why do I have to regurgitate it? Why can't the designer just use Figma to output code?) It is notable of course that all of this tooling comes to the developer at no cost. Except, I started web dev using my extremely underpowered, spyware-ridden family PC, and these days if I tried to use the equivalent (a midrange Android phone) to begin I think I would have a much harder time.

There is still time

All this back to my hand-written web pages. Why, despite my critical view of the shortcomings of such an approach?

Because the people who invested their entire workflows around Dreamweaver in 2005 now find it irrelevant, as did Flash devs in 2005, Dojo devs in 2012, and AngularJS devs in 2014. I've previously argued that it was extremely important that I could view the source code of the websites I was trying to emulate (as have others). I worry about any sort of culture that deprioritizes simplicity, not because I believe in some sort of nostalgic idea of a purer past (it sucked to do web dev back then, EVERYTHING needed a workaround) but because I think when we professionalized webdev hoping to demonstrate our legitimacy, we lost out on a large community of amateur web designers, all of whom were experimenting in their own way at making this exciting new technology called hypertext.

And the good news is, these tools are still here, right? There is still a community, it's just a little overshadowed by the glossiness of what's next. And that community is what's important, what drew me into the idea that I too could make a website. Which is why I'm determined to be a little stubborn about things, because I'm interested in sustaining this community for decades to come.