parent
65c1d5ab10
commit
37150ca3cb
@ -0,0 +1,239 @@ |
||||
--- |
||||
title: >- |
||||
The Web |
||||
description: >- |
||||
What is it good for? |
||||
--- |
||||
|
||||
With the recent crisis in the US's democratic process, there's been much abuzz |
||||
in the world about social media's undoubted role in the whole debacle. The |
||||
extent to which the algorithms of Facebook, Twitter, Youtube, TikTok, etc, have |
||||
played a role in the radicalization of large segments of the world's population |
||||
is one popular topic. Another is the tactics those same companies are now |
||||
employing to try and euthanize the monster they made so much ad money in |
||||
creating. |
||||
|
||||
I don't want to talk about any of that; there is more to the web than |
||||
social media. I want to talk about what the web could be, and to do that I want |
||||
to first talk about what it has been. |
||||
|
||||
## Web 1.0 |
||||
|
||||
In the 1950's computers were generally owned by large organizations like |
||||
companies, universities, and governments. They were used to compute and manage |
||||
large amounts of data, and each existed independently of the other. |
||||
|
||||
In the 60's protocols began to be developed which would allow them to |
||||
communicate over large distances, and thereby share resources (both |
||||
computational and informational). |
||||
|
||||
The funding of ARPANET by the US DoD led to the initial versions of the TCP/IP |
||||
protocol in the 70's, still used today as the backbone of virtually all internet |
||||
communication. Email also came about from ARPANET around this time. |
||||
|
||||
The 80s saw the growth of the internet across the world, as ARPANET gave way to |
||||
NSFNET. It was during this time that the domain name system we use today was |
||||
developed. At this point the internet use was still mostly for large |
||||
non-commercial organizations; there was little commercial footprint, and little |
||||
private access. The first commercially available ISP, which allowed access to |
||||
the internet from private homes via dialup, wasn't launched until 1989. |
||||
|
||||
And so we find ourselves in the year 1989, when Tim Berners-Lee (TBL) first |
||||
proposed the World-Wide Web (WWW, or "the web"). You can find the original |
||||
proposal, which is surprisingly short and non-technical, |
||||
[here](https://www.w3.org/Proposal.html). |
||||
|
||||
From reading TBL's proposal it's clear that what he was after was some mechanism |
||||
for hosting information on his machine in such a way that others could find and |
||||
view it, without it needing to be explicitly sent to them. He includes the |
||||
following under the "Applications" header: |
||||
|
||||
> The application of a universal hypertext system, once in place, will cover |
||||
> many areas such as document registration, on-line help, project documentation, |
||||
> news schemes and so on. |
||||
|
||||
But out of such a humble scope grew one of the most powerful forces of the 21st |
||||
century. By the end of 1990 TBL had written the first HTML/HTTP browser and |
||||
server. By the end of 1994 sites like IMDB, Yahoo, and Bianca's Smut Shack were |
||||
live and being accessed by consumers. The web grew that fast. |
||||
|
||||
In my view the characteristic of the web which catalyzed its adoption so quickly |
||||
was the place-ness of it. The web is not just a protocol for transferring |
||||
information, like email, but instead is a _place_ where that information lives. |
||||
Any one place could be freely linked to any other place, and so complex and |
||||
interesting relations could be formed between people and ideas. The |
||||
contributions people make on the web can reverberate farther than they would or |
||||
could in any other medium precisely because those contributions aren't tied to |
||||
some one-off event or a deteriorating piece of physical infrastructure, but are |
||||
instead given a home which is both permanent and everywhere. |
||||
|
||||
The other advantage of the web, at the time, was its simplicity. HTML was so |
||||
simple it was basically human-readable. A basic HTTP server could be implemented |
||||
as a hobby project by anyone in any language. Hosting your own website was a |
||||
relatively straightforward task which anyone with a computer and an ISP could |
||||
undertake. |
||||
|
||||
This was the environment early adopters of the web found themselves in. |
||||
|
||||
## Web 2.0 |
||||
|
||||
The infamous dot-com boom took place in 2001. I don't believe this was a failure |
||||
inherent in the principles of the web itself, but instead was a product of |
||||
people investing in a technology they didn't fully understand. The web, as it |
||||
was then, wasn't really designed with money-making in mind. It certainly allowed |
||||
for it, but that wasn't the use-case being addressed. |
||||
|
||||
But of course, in this world we live in, if there's money to be made, it will |
||||
certainly be made. |
||||
|
||||
By 2003 the phrase "Web 2.0" started popping up. I remember this. To me "Web |
||||
2.0" meant a new aesthetic on the web, complete with bubble buttons and centered |
||||
fix-width paragraph boxes. But what "Web 2.0" actually signified wasn't related |
||||
to any new technology or aesthetic. It was a new strategy for how companies |
||||
could enable use of the web by non-expert users, i.e. users who don't have the |
||||
inclination or means to host their own website. Web 2.0 was a strategy for |
||||
giving everyone a _place_ of their own on the web. |
||||
|
||||
"Web 2.0" was merely a label given to a movement which had already been in |
||||
motion for years. I think the following Wikipedia excerpt describes this period |
||||
best: |
||||
|
||||
``` |
||||
In 2004, the term ["Web 2.0"] began its rise in popularity when O'Reilly Media |
||||
and MediaLive hosted the first Web 2.0 conference. In their opening remarks, |
||||
John Battelle and Tim O'Reilly outlined their definition of the "Web as |
||||
Platform", where software applications are built upon the Web as opposed to upon |
||||
the desktop. The unique aspect of this migration, they argued, is that |
||||
"customers are building your business for you". They argued that the |
||||
activities of users generating content (in the form of ideas, text, videos, or |
||||
pictures) could be "harnessed" to create value. |
||||
``` |
||||
|
||||
In other words, Web 2.0 turned the place-ness of the web into a commodity. |
||||
Rather than expect everyone to host, or arrange for the hosting, of their own |
||||
corner of the web, the technologists would do it for them for "free"! This |
||||
coincided with the increasing complexity of the underlying technology of the |
||||
web; websites grew to be flashy, interactive, and stateful applications which |
||||
_did_ things rather than be places which _held_ things. The idea of a hyperlink, |
||||
upon which the success of the web had been founded, became merely an |
||||
implementation detail. |
||||
|
||||
And so the walled gardens began to be built. Myspace was founded in 2003, |
||||
Facebook opened to the public in 2006, Digg (the precursor to reddit) was |
||||
launched in 2004, Flickr launched in 2004 (and was bought by Yahoo in 2005), |
||||
Google bought Blogger in 2003, and Twitter launched in 2006. In effect this |
||||
period both opened the web up to everyone and established the way we still use |
||||
it today. |
||||
|
||||
It's upon these foundations that current events unfold. We have platforms whose |
||||
only incentive is towards capturing new users and holding their attention, to |
||||
the exclusion of other platforms, so they can be advertised to. Users are |
||||
enticed in because they are being offered a place on the web, a place of their |
||||
own to express themselves from, in order to find out the worth of their |
||||
expressions to the rest of the world. But they aren't expressing to the world at |
||||
large, they are expressing to a social media platform, a business, and so only |
||||
the most lucrative of voices are heard. |
||||
|
||||
So much for not wanting to talk about social media. |
||||
|
||||
## Web 3.0 |
||||
|
||||
The new hot topic in crypto and hacker circles is "Web 3.0", or the |
||||
decentralized web (dweb). The idea is that we can have all the good of the |
||||
current web (the accessibility, utility, permanency, etc) without all the bad |
||||
(the centralized platforms, censorship, advertising, etc). The way forward to |
||||
this utopian dream is by building decentralized applications (dApps). |
||||
|
||||
dApps are constructed in a way where all the users of an application help to |
||||
host all the stateful content of that application. If I, as a user, post an |
||||
image to a dApp, the idea is that other users of that same dApp would lend their |
||||
meager computer resources to ensure my image is never forgotten, and in turn I |
||||
would lend mine for theirs. |
||||
|
||||
In practice building successful dApps is enormously difficult for many reasons, |
||||
and really I'm not sure there _are_ any successful ones (to date). While I |
||||
support the general sentiment behind them, I sometimes wonder about the |
||||
efficacy. What people want from the web is a place they can call their own, a |
||||
place from which they can express themselves and share their contributions with |
||||
others with all the speed and pervasiveness that the internet offers. A dApp is |
||||
just another walled garden with specific capabilities; it offers only free |
||||
hosting, not free expression. |
||||
|
||||
## Web 2.0b |
||||
|
||||
I'm not here solely to complain (just mostly). |
||||
|
||||
Thinking back to Web 1.0, and specifically to the turning point between 1.0 and |
||||
2.0, I'd like to propose that maybe we made a wrong turn. The issue at hand was |
||||
that hosting one's own site was still too much of a technical burden, and the |
||||
direction we went was towards having businesses host them for us. Perhaps there |
||||
was another way. |
||||
|
||||
What are the specific difficulties with hosting one's own site? Here are the |
||||
ones I can think of: |
||||
|
||||
* Bad tooling: basically none of the tools you're required to use (web server, |
||||
TLS, DNS, your home router) are designed for the average person. |
||||
|
||||
* Aggregiously complex languages: making a site which looks half decent and can |
||||
do the things you want requires a _lot_ of knowledge about the underlying |
||||
languages (CSS, HTML, Javascript, and whatever your server is written in). |
||||
|
||||
* Single point-of-failure: if your machine is off, your site is down. |
||||
|
||||
* Security: it's important to stay ahead of the hackers, but it takes time to |
||||
do so. |
||||
|
||||
* Hostile environment: this is separate from security, and includes difficulties |
||||
like dynamic home IPs and bad ISP policies (such as asymetric upload/download |
||||
speeds). |
||||
|
||||
These are each separate avenues of attack. |
||||
|
||||
Bad tooling is a result of the fact that devs generally build technology for |
||||
themselves or their fellow devs, and only build for others when they're being |
||||
paid to do it. This is merely an attitude problem. |
||||
|
||||
Complex languages are really a sub-category of bad tooling. The concesus seems |
||||
to be that the average person isn't interested or capable of working in |
||||
HTML/CSS/JS. This may be true today, but it wasn't always. Most of my friends in |
||||
middle and high school were well within their interest and capability to create |
||||
the most heinous MySpace pages the world has ever seen, using nothing but CSS |
||||
generators and scraps of shitty JS they found lying around. So what changed? The |
||||
tools we use to build those pages did. |
||||
|
||||
A hostile environment is not something any individual can do anything about, but |
||||
in the capitalist system we exist in we can at least hold in faith the idea that |
||||
eventually us customers will get what we want. It may take a long time, but all |
||||
monopolies break eventually, and someone will eventually sell us the internet |
||||
access we're asking for. If all other pieces are in place I think we'll have |
||||
enough people asking to make a difference. |
||||
|
||||
For single point-of-failure we have to grant that more than one person will be |
||||
involved, since the vast majority of people aren't going to be able to keep one |
||||
machine online consistently, let alone two or more machines. But I think we all |
||||
know at least one person who could keep a machine online with some reliability, |
||||
and they probably know a couple of other people who could do so as well. What |
||||
I'm proposing is that, rather than building tools for global decentralization, |
||||
we need tools for local decentralization, aka federation. We can make it |
||||
possible for a group of people to have their presence managed by a subset of |
||||
themselves. Those with the ability could help to host the online presence of |
||||
their family, friends, churches, etc, if given the right tools. |
||||
|
||||
Security is the hard one, but also in many ways isn't. What most people want |
||||
from the web is a place from which to express themselves. Expression doesn't |
||||
take much more than a static page, usually, and there's not much attacking one |
||||
can do against a static page. Additionally, we've already established that |
||||
there's going to be at least a _couple_ of technically minded people involved in |
||||
hosting this thing. |
||||
|
||||
So that's my idea that I'd like to build towards. First among these ideas is |
||||
that we need tools which can help people help each other host their content, and |
||||
on top of that foundation a new web can be built which values honest expression |
||||
rather than the lucrative madness which our current algorithms love so much. |
||||
|
||||
This project was already somewhat started by |
||||
[Cryptorado](https://github.com/Cryptorado-Community/Cryptorado-Node) while I |
||||
was a regular attendee, but since COVID started my attendance has fallen off. |
||||
Hopefully one day it can resume. In the meantime I'm going to be working on |
||||
setting up these tools for myself, and see how far I can get. |
Loading…
Reference in new issue