Categories
Blog

How can we make the web better?

“Cancel Culture” is all the rage, and rage is a currency on Twitter. It’s getting so out of hand that this joke (from Twitter, no less) hits a little too close to home.

I believe many content creators, digital natives, and developers would be willing to admit that web experiences became notably more hostile between 2016 to 2019. In a recent example, Stack Overflow treated one of their most valuable Jewish community members with undeserved hostility, doing so on a Jewish holiday, admitting to it, then dragging their feet to reinstate her. As of October 19th, she is still not reinstated. Other community moderators have now stepped down because they don’t trust the company.

It’s not only hostility (not to mention the outright garbage) that is making web experiences ugly. The economics of social networks are causing frustrating user experiences. Also, companies and developers are imposing system constraints on their Internet products too quickly without first considering basics like security and the necessity to constantly change the system based on ongoing needs. Consequently, privacy leaks, broken trust, and lawsuits abound.

After being in web development in both full time and part time roles for 8 years, in observing both delightful and ugly experiences as both a user and a builder, these are some personal opinions on how we can make the web a better experience for everybody.

Be Nice

Did someone behave offensively on a website or on social media? If you know them, address it personally with them and with grace. If you don’t know them well enough to address the issue well, just stop following them and move on. No need to give them any more of your time, and no need to publicly vent. I’ve made that mistake before and it didn’t serve any redeeming purpose.

Name calling should also have no place on our websites or social feeds. Even if the other person is legitimately wrong. Politically-charged terms such as “libtard”, “nazi”, and “racist” have almost never solved a problem or changed someone’s mind. They have almost always fed unnecessary conflict.

If you are a Christian, then this step is not optional:

If possible, so far as it depends on you, live peaceably with all.

Romans 12:18, ESV

Increase Decentralization

Web users should ideally have a “home base” for their web presence. That home base must be 100% self-owned. Right now, we’ve become too dependent on social media platforms to own our home bases for us. While social media has its place to be something of a “bullhorn” to market our ideas and products, we should work harder to decentralize the content of the World Wide Web by running our own websites based on personal interests.

Are you not coding-savvy but want to build a digital home base of your own? I recommend either Squarespace or WordPress.com.

Are you coding savvy or at least IT savvy? Try self-hosting WordPress. I currently use Digital Ocean but aspire to host it from a Raspberry Pi at home later next year. Don’t like WordPress’ templates? Roll your own with Gatsby or a custom front-end consuming WordPress’ data. Don’t like WordPress at all? Use another solid Content Management System such as Drupal. For nerds, the possibilities are myriad!

Abandon Truly Bad Digital Products

If a product is truly bad, stop using it. They don’t deserve your business and the majority of the time there are good alternatives. For example, are you done with Twitter but want a microblog? Roll your own by writing short form content on any blog platform of your choice or join a Mastodon server.

Don’t post on social media about how much you hate a product or dislike a product’s CEO. Especially if you intend to still use that product. If you are saying you hate something but still use it (such as Facebook or Uber) then you don’t actually hate it.

Stop virtue signaling. It’s gross.

Simplify and Strengthen Web Engineering

Warning: this section gets a bit nerdy

Businesses tend to focus first on delivering features within unrealistic deadlines and with overly engineered systems. Right now, it is trendy to break apart systems into a bunch of smaller running systems, known as a Microservice Architecture. While there are many excellent uses for this architecture when it comes to scaling systems to meet high demand, there are costs as well. A major data aggregation company has written a blog post about why they have moved away from this architecture in their specific use case. Monolithic systems could become all the rage again for many use cases!

Another trend I’ve encountered is to use a framework for no reason. While frameworks can simplify code and make life easier, I’ve also seen developers adopt a large framework without proper coding conventions. It resulted in a tar-pit of writing more (and buggier) code than if they had adopted no framework! If the team doesn’t know why they’re using something and doesn’t know how to leverage what they’re using, that is not a good sign.

Another key issue to avoid is too much dependence on the individual knowledge of a developer or architect. If your team cannot operate with a key team member missing, including the team lead, your project is already in serious trouble.

Conclusion

The World Wide Web has some excellent and delightful things, and has lowered the barrier to fun and thoughtful creativity. It’s also overdue for an overhaul in many places. Users and developers alike have both the relational means to do this as well as the tools.