Skip to content

Instantly share code, notes, and snippets.

@getify
Created March 12, 2019 13:19
Show Gist options
  • Star 11 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save getify/e22c92aa3bee01ab5d7ae4581289759c to your computer and use it in GitHub Desktop.
Save getify/e22c92aa3bee01ab5d7ae4581289759c to your computer and use it in GitHub Desktop.
Building That Better Web

Building That Better Web

In honor of the 30th anniversary of the web, I wanted to share a few thoughts about what a better web could aspire to be, and challenge us to move toward it.

The Worser Web

It's tempting to frame "better" simply in terms of improvement and progress, as in how far the web has come over the last 20+ years. As a developer, I like many others get all too excited about fancy new features like Service Workers, WebRTC, and yes, even CSS Grids. The pace of change is dizzying, but it feels like a great problem to have too many awesome features to learn and use!

So in one practical respect, a better web is one that empowers developers and users alike to express themselves and connect with others more fluently.

But I don't think "better" just means improved from where it was in the past. I think "better" really needs to be thought of in terms of steering toward a different future for the web than where some forces might want to take it.

To me, a better web is one that takes HTML's Priority of Constitutencies (Section 3.2) as sacred inviolable law, not merely a hollow anecdote.

In case of conflict, consider users over authors over implementors over specifiers over theoretical purity. In other words costs or difficulties to the user should be given more weight than costs to authors; which in turn should be given more weight than costs to implementors; which should be given more weight than costs to authors of the spec itself, which should be given more weight than those proposing changes for theoretical reasons alone.

This principle is that given multiple competing priorities and constraints, the guiding light for the web should always be what's best for the end user. This idea is as simple and brilliant as it easy to nod at but then forget completely.

If we are to build a better web, first we must face down what the worser web would be if we fail to keep the user at the top of the priority list. There are many competing interests that have already tainted, and threaten to derail entirely, this ideal of the web with the user at the center.

In the name of providing free and practically ubiquitous access to news, shopping, social media, and a host of other interactive engagments on the web, countless sites have given these services away for "free", in exchange for one tiny little token: your very digital soul -- your privacy, your right to anonymity.

Of course, advertisers claim that by tracking your every move, online and even offline, they can make your user experience better by more accurately targeting you with stuff they know you'll want to see. That's a nice claim, of course, but it's a sword that cuts both ways. They may realize that you really do want a new pair of shoes, and helpfully provide you an advertisment for them. But they also realize that they can persuade you and alter your behavior, and they do. These are just different shades of the same color.

Speaking of claims to improve experience, content providers (video, audio, etc) from the gaming and entertainment industries are always more keen to leverage the web to drive content interaction. And users love it. Who reading this seriously doesn't have a Netflix account?!

But at what cost? Because there will always be users who want to take excess advantage of such content access, the providers will always be fighting to exercise more control over your access. DRM is not new by any means, but from where many of us sit, the move to weave DRM directly into the DNA of the web is an existential threat to everything that makes the open democratic (non-vendor controlled) web what it is. We have to keep asking ourselves if we can afford to give up some of this openness.

Features? We've got features, galore! The more sophisticated the capabilities of the web platform become, enabling developers to deliver ever more powerful web application experiences, the wider the target for attack from hackers, phishers, and thieves. The more powerful good we can do with tools, the more powerful evil others can do with those same tools. Vigilant specification authors and implementors fight a never-ending battle to outthink the harmful actors and deny them hooks they can exploit beforehand.

The web as it stands today has never been more powerful nor has it ever faced a more potent threat to its security.

If we're going to build a better web, together, we have to view it in light of what the web might become if we abandon our fight and let these natural and powerful forces guide the platform. Let your imagination run for a moment, to what that worser web future might look like.

It's People

It sounds sappy, but I believe the web at its core is supposed to be about empowering all 7.5 billion people on this planet with a voice and a conduit through which to give and receive, experience and connect, in whatever forms and manners they see fit.

But on the other end of those electrons you're firing off, there's another a person. They're not just a collection of pixels, they're a real human being.

And when you venture outside of your carefully curated echo chambers (like your facebook friend list) into the broader web, there's a 100% chance you're going to encounter someone on the other end of that interaction who's life and background and perspective on the world is completely and literally foreign to your own.

I hear statements all the time from folks I observe, which are variations of the form: "Well, what that other person said makes no sense to me, so I don't believe them and I don't care about their claim." Somewhere in our regular upbringings, most of acquire the habit of rationalizing those we deal with.

As long as we can find some form of rational connection to them, we can sympathize. But if we find them to be irrational, we cut off that flow of sympathy and they just become some rando who might as well be a bot we can INTERNET YELL profanities at. They're not a real person, after all.

Except... they are a real person. 100% of the time. Even if they're not a good hearted person, they're still real. And by flipping the bozo bit on them so that you're free to de-humanize them and treat them however you feel, you've broken down what makes the web the web: people and connection. Another word for that is community.

I always like to define empathy as different from sympathy in this way: sympathy is what you feel for someone when you can understand and rationalize their experiences, whereas empathy is when you choose to extend compassion in those circumstances when you quite literally cannot understand or reason about their reality.

You have a choice: either you assume the set of pixels you're interacting with is actually a human being, and their reality is just completely and utterly different, but no less valid, than your own... or you assume that your logic and experience is all you could possibly need to understand any of the billions of people on this planet. Which is more plausible?

Think about that the next time you go to leave a blog post comment or fire off a tweet reply.

A better web can never be built if the people behind it are marginalized, discriminated against, ignored, bullied, silenced, or forgotten. The most simple and practical step you can take, literally right now, to helping a better web future happen, is to start being a better person on the web.

Start choosing to act with empathy to others who are as different from you as you can imagine. Start treating everyone with respect. The web is not some abstract meritocracy where ideas rule. It's a collection of real, flawed, creative, scared, and curious people. It's a people-ocracy. It's all about the people.

Better, Together

The better web I believe we all collectively want isn't about waiting for that next feature to land in a browser nightly. It's not about your favorite social media site finally launching a PWA to fight the app tyranny. And it's certainly not about winning (aka, outlasting) that next twitter argument thread.

No, the better web we all want, or should anyway, is the one where we knit our community more closely than ever, where we shrink the gaps between us. We can and should use the web's amazing technology and unprecedented reach to do so. The better web is one where we keep fighting to put users first, and we reject continually and vigorously the urges to wrap "but, users like it" around evil intentions like non-open control, vendor lock-in, and deep and persistent data collection.

And none of this is going to come easily.

I don't have any magic answers to the problems that constantly try to steer us toward that worser web. But I do know that we have to fight to tear down the silos (technical and social) and walled gardens and divisions-by-choice.

If the web is going to survive and thrive for another 30 years and beyond, to that better web we could imagine, we're going to have to build it together.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment