the web
This commit is contained in:
parent
65c1d5ab10
commit
37150ca3cb
239
_posts/2021-01-14-the-web.md
Normal file
239
_posts/2021-01-14-the-web.md
Normal file
@ -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.
|
@ -43,7 +43,7 @@ clean_title=$(echo "$title" |\
|
||||
)
|
||||
|
||||
description="$2"
|
||||
if $(echo "$description" | grep -q '[^.$!]$'); then
|
||||
if $(echo "$description" | grep -q '[^.$!?]$'); then
|
||||
echo 'Description needs to be a complete sentence, with ending punctuation.'
|
||||
exit 1
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user