A few days ago, articles from multiple news outlets discussed a new development in the world of crypto-currencies. The Pirate Bay website has rolled out a Javascript based miner for Monero, which is one of the better known fully private crypto-currencies. If you’re lost as to what this sentence just meant, don’t worry I’ll explain.

Javascript is a programming language that allows to do a ton of things. Whenever you visit a website, chances are that part of what you are seeing or interacting with has been coded in Javascript.

In this case, when you visit the Pirate Bay website, the Javascript code doesn’t serve to display anything on your screen but to run complex calculations with your computer’s processor to generate virtual crypto-currencies which they can sell against real money on exchange platforms just like you can trade your dollars for euro.

This new business model might put pressure on the advertising model. Indeed, it is very probable that a thousand people visiting your website will generate much more revenue than via an ad banner (which incidently hurts your website’s look/design). Advertising has also become more and more intrusive and damaging to the user experience. Remember those annoying pop-ups that use to freeze your computer? Since then, we have moved to many other techniques such as auto-play videos, website take-overs…

But is this development a good thing? What could be the consequences for end users?

First, let’s examine what this means concretely for users. Once you visit a webpage with this system in place, it will basically drive your computer’s processor to work at 100% to generate crypto-currency. You could, therefore, experience some severe slow down of your computer, especially if you don’t have a high end system. If you are multi-tasking, this might also put a heavy strain on your computer. In the end, we could go back to the “pop up” problem where computers froze due to the strain of opening several parallel windows at once.

Second, your computer will consume more power, depending on your processor’s power draw. If you have a very high end computer, you might not experience any slow down of your system, but the power consumption of your computer could shoot up by 100w or 200w! If every single website implements this system, you could be unpleasantly surprised by the energy bill at the end of the month.

Third, it is unclear how this system would work with multiple tabs open. Would the Javascript programme continue to run even when you switch tabs? This would mean that the website generates money even if you’re not looking at it’s content but have it open for convenience purposes. What if you leave your computer and let the window of the website open? What if you minimize the window?

Fourth, there may be a form of punishment or disincentive to surf on the Internet using powerful computers as you would incur higher costs for buying the hardware and higher costs for visiting a website due to power consumption.

Fifth, how would this system affect smartphones, tablets and laptops? Their battery life could be widely affected if the programme crunches complex calculations by making their processors run at 100%. It would completely unravel the work that has been done to prolong battery life by optimizing application’s power consumption.

Sixth, the type of cryptocurrency that is being mined and the purposes for which it is being mined can be quite opaque. Monero for instance, is a fully private/anonymous cryptocurrency, so the mining process may not be for legal/ethically sound purposes.

Finally, such a system has similar drawbacks to advertising: it is an incentive for click-baiting and maximizing the time people spend on your contents. The more people click on your content and the longer they stay on your website, the more money you generate!

Is it a bad system per say? No, but it will have to be tweaked.

Just like when “pop ups” appeared, their level of annoyance prompted the development of ad blockers. The same will happen with this system if it is not kept in check.

Some proposals for a better system include:

Adjusting the computing power used to a reasonable minimum to avoid punishing users with high end devices.

Verifying whether a device is running on battery or not and adjusting the computing power to avoid draining the battery.

Stop the mining process whenever a person switches tabs or minimizes the browser (check if the website has “focus”).

Set up a redistribution system similar to “mining pools”, that is, websites and content creators pooling their resources and sharing the revenue generated from their websites to avoid a system of “winner takes it all” and click-baiting to attract the most viewers. While it might be hard to convince websites to share their earnings, it would be possible to develop website mining pools where the revenue generated is partially redistributed (for instance, you get to keep 50% and the rest is redistributed equally), under certain conditions (for instance, publish new content at least every week, or have at least 10 visitors per day…)

Developing an open source programme which checks whether a website uses a mining solution which is in line with widely agreed standards for fairness (according to the suggestions proposed above) and would either allow or block the mining process from running (similar to how ad blockers function).

Allow for an “opt-in”/”opt-out” system so that users can choose if they agree to share their computing power.

Make sure that the mining script is transparent: what are the funds going to be used for, which cryptocurrency will it mine. The last part is important: users may prefer mining a fully traceable cryptocurrency to ensure that the funds are not used for illegal/unethical purposes.

Run sufficient tests to ensure that the mining process is stable and does not risk freezing your computer, in order to avoid losing precious data.

In the end, it all comes back to the same thing: how can you ensure the fairness of a business model?

In online advertising, people pay via the exploitation of their data and the time they spend (waste) on various websites which are geared to capturing and conserving user attention, which will (hopefully, for advertisers) translate into increased revenue from consumption. As we have seen, this has been a race to the bottom, where advertising became more and more prevalent, strategies to keep users hooked reached high levels of sophistication on the boundary of manipulation and creating phenomenons such as the “filter bubble” and the spread of “fake news”, notably via newsfeed customization on social networks.

How can we ensure that the same does not happen with crypto-currency mining via websites, where each website tries to out-programme the other by battling for a user’s processing and computing power, at the detriment of user experience and money?

To be continued!