Get in touch with our team
Feature image for 20.06.2019


6 min read

Search Leeds: Barry Adams – JavaScript is ruining the web (and I love it)

This article was updated on: 07.02.2022

This is not a useful talk and it won’t have actionable insights. This is a 20 minute rant. Barry wants a beer.

JavaScript isn’t Barry’s favourite technology. A recurring theme in a talk from last year is that JS is evil. He genuinely believes this.

Barry is going to tell us why JavaScript lies at the root of all the web’s problems right now.

First, let’s look at what it is.

It’s a client-side scripting language, which means that code is sent to the client, which compiles it and executes it in whichever way is required. The client (normally a browser) does the heavy lifting.

JS serves a lot of different purposes. It makes pages come to life, it tracks you, it serves you ads and all sorts of different things.

The beauty of JS is that it only needs to be written once and then it runs everywhere. You can write code and create experiences that are independent of the platform. This sort of makes sense. The web needed this to make it grow and do cool shit like Barry haunting you across the web with Sistrix ads.

The problem is that JS causes a lot of bloat. And the problem is that data isn’t free. Pages are getting bigger and making us use more data to access them. Since 2010, the average size of a web page has gone up by 1000%. The average page is now 1.6MB. And let’s not forget that the UK has some of the priciest data plans in Europe.

JS ads mean you’re paying with your data and paying with your data plan. It also means you have to have a pretty decent phone and these things cost a lot of money.

The long and short is that we’re paying for the privilege of using websites.

The web is not getting faster, it’s getting slower.

Google said that page speed was going to be a ranking factor in around ’08/’09 and yet page speed still got worse. JavaScript is making the consumers do the heavy lifting.

The bells and whistles that we’re enabling aren’t even for our own benefit. It’s there to make us buy shit we only think we want.

In the context of SEO and Google, JavaScript is a big problem. But Barry’s not going to talk about it much because that dead horse has been flogged several times over. The core of the issue is that all that extra work clients have to do now passes over to Google, too.

Google has data centres everywhere that are constantly crawling the web, and yet they’re complaining that they don’t have the power to render JS in real time all the time. It just costs too much.

Another big issue is privacy. The data that all that code is harvesting is being sent to advertisers or whatever and who knows how it’s being used. Well, we have a bit of an idea. Businesses have a good idea of who you are and what you want to buy. The issue is that it’s not just corporations using this information.

However much Barry complains about Google, he doesn’t believe they intend to be evil bastards. He worries more about governments and other companies that can just plug into that data. We seem to have collectively forgotten about Edward Snowden.

In the early stages of the web, organisations like the NSA realise they didn’t need their own spying infrastructure, they just needed to be able to access Google, then you have everything you need to do everything. Google is not just Google, it’s also Android, YouTube and more. Everything you do on an Android phone is known by Google.

Let’s not forget about Cambridge Analytica. It doesn’t exist anymore but it was a proof of concept of what happens when you advertise with bad intentions.

If you take all that data, well, Brexit happens.

And Trump.

This shit happens because the technology actively encourages it. The web has allowed us to build systems that let us manipulate people on a massive scale and influence nations.

We also have the Hawthorne effect. This is a psychological phenomenon where, when you as a person are aware you’re being observed, you change your behaviour subconsciously. We all now know that we’re being watched and we’re altering our behaviour, whether you accept it or not.

Can we be truly free if we’re altering our behaviour because we know we’re being watched?

Are you a free person?

His key message is that technology is not neutral. It doesn’t exist in a vacuum, for its own sake. Tech encourages certain behaviour.

When the internal combustion engine was invented, it encouraged people to unintentionally kill one another by going really fast on the road. As a consequence, a lot of regulations came into force.

But we don’t have rules for JavaScript. Do whatever the fuck you want. Those bloated fucking websites reward the people who build websites and stuff it all in. If you’re not building rich experiences other people say your website is shit and go to a competitor.

You cannot escape from it.

Barry Adams uses a Dungeons and Dragons alignment metaphor. The web is chaotic neutral. HTML is chaotic good – it’s really hard to do bad things with it. It’s possible but you have to try. JavaScript is lawful evil. It will always do something terrible. John Mueller is lawful good.

Does he want JS to disappear into a hole? Well, no. It exists and it’s here. No matter how shitty it is we have to live with it. And it’s even given us some benefit.

The web needed client-side code to enable the next level of technology. Something was going to fill the void if JS didn’t. We almost had Flash-based code everywhere with Action Script.

On top of that, JS can be done fast, lightweight and clean. You don’t need a massive JS library to have a good website, as long as your developer doesn’t load a whole library to do one thing. This is how you distinguish bad developers from good developers. Cherish good developers. They’re very, very valuable.

And let’s be honest, SEOs make loads of money of JavaScript. Lazy developers mean we SEOs can make them fix stuff. It also means that good developers are worth more. This is another reason why Barry doesn’t want JS to disappear. He can get hired!

(At this point, Barry used a Magic: the Gathering card to illustrate the JS exposes evil practises and it became my favourite slide deck of the day, as if the DnD reference wasn’t enough).

Because we’re aware of the evil that can be done with JS, people are now trying to work out how to make the web more ethical.

So should we get rid of it? No. We have to hang onto it and make it the best we can.

It’s the devil we know, rather than whatever might fill the void.