summaryrefslogtreecommitdiff
path: root/web_browsers_are_no_more.html
diff options
context:
space:
mode:
Diffstat (limited to 'web_browsers_are_no_more.html')
-rw-r--r--web_browsers_are_no_more.html103
1 files changed, 103 insertions, 0 deletions
diff --git a/web_browsers_are_no_more.html b/web_browsers_are_no_more.html
new file mode 100644
index 0000000..c8e63c7
--- /dev/null
+++ b/web_browsers_are_no_more.html
@@ -0,0 +1,103 @@
+<!doctype html>
+<html lang="en">
+<meta charset="utf-8">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="author" content="aki">
+<meta name="tags" content="web, applications, internet, browser">
+<link rel="icon" type="image/png" href="cylo.png">
+<link rel="stylesheet" type="text/css" href="style.css">
+
+<title>Web Browsers Are No More</title>
+
+<nav><p><a href="https://ignore.pl">ignore.pl</a></p></nav>
+
+<article>
+<h1>Web Browsers Are No More</h1>
+<p class="subtitle">Published on 2020-07-28 19:39:00+02:00, last updated on 2021-07-25 12:56:00+02:00
+
+<p><b>Browsers</b>, we all know what those are, right? We use them every day and it wouldn't be an exaggeration to say
+that they are one of the most used pieces of software all over the world. They have tremendous impact on not only the
+industry, but also on regular life of normal people. We sure do know what they are, right?
+
+<p>By the power of Hinchliffe's Rule I say no (is it really if the question wasn't in the title?). We don't know what
+web browsers are. Rather, the name got us tricked. It no longer represents what those programs are. Before we go into
+details, let's talk about what was in the past.
+
+<p>It all started with the WorldWideWeb, followed by NCSA Mosaic, which in turn spawned Netscape Navigator. To wage a
+war against it, Internet Explorer has been created. In late '90 and early '00 all major players (with exception of
+Chrome) have made their appearances. By the time Chrome finally arrived, that's 2008, the term "web browser" was widely
+understood and had established its meaning. The way we understand browsers is from sometime of that period.
+
+<p>Mozilla tells us that <i>a web browser takes you anywhere on the internet, letting you see text, images and video
+from anywhere in the world</i>. That's vague as hell but Wikipedia isn't really better with: <i>browser is a software
+program for accessing information on the World Wide Web</i>. It then describes a simple use case: <i>a user requests
+page from a website, browser retrieves the content from a web server and then displays the page on the user's device
+</i>(quote slightly adjusted in size).
+
+<p>These descriptions should resonate with most of us when we think "web browser". At least to some degree.
+
+<p>If I were to describe it with my own words I would probably say something of the sort: <i>program that downloads,
+prepares and displays content of a website to the user. May support stylesheets, history, cache and scripting engine
+for dynamic content</i>.
+
+<p>It's still vague but it gives some more hints regarding the functionality. In all this, the key to the meaning is
+hidden inside the word <i>website</i>. Generally speaking, <i>website</i> provides <i>webpages</i> that are
+<i>hypertext</i> documents. Where <i>hypertext</i> usually means HTML. It's fair to simplify it into: <i>website</i> is
+a group of HTML documents with optional images or other files, all served via HTTP. Rarely we expect browser to support
+anything else than, in terms of formats: HTML, images, video, plain text or maybe pdf, and in terms of protocols: HTTP.
+Sometimes they implement stuff like FTP or maybe torrent, but that's not really their main purpose.
+
+<p>Browsers aren't really web browsers like: entire web browsers. They can just show you a selected part of the web and
+that's OK. And I think that's part of the reason it all went wrong. People didn't think it's OK but it was OK. And then,
+they wanted even more.</p>
+
+<img src="web_browsers_are_no_more-1.png" alt="drawing of surprised birds">
+
+<p>Thus, functionalities were migrated to browsers. The number of use cases steadily rose. To be honest, it's very hard
+to draw a line between things that should be in a web browser and things that should not. It's slightly clearer if there
+is a protocol that supports the same functionality like in case of e.g., e-mail reading and sending. Take git as an
+example. Is cgit a bad idea? I wouldn't call it "bad" straight away. I'm not sure if I would call it "bad" even after
+months of contemplating about it.
+
+<p>The second part of the reason for the downfall of the browsers is Javascript. Dynamic content was made extreme. It no
+longer was there to support the user and extend the content, but it started to become the main component of this new
+thing served over the web. Now, we know what this new thing is called: Web Application.
+
+<p>Coming back to the description of a web browser I should probably reword it to: <i>a program that downloads, caches
+and runs web applications for the user or prepares and displays a webpage</i>.
+
+<p>In other words, nowadays the main purpose for browsers is to <b>run web applications</b>. It doesn't sound very
+browser-ish now, does it?
+
+<p>Please, don't get me wrong. There's nothing ultimately evil about that. It's only natural that over the years the
+purpose and expectations have changed. I think what's important is acknowledging this change and being aware of the new
+meaning. I believe most people who work in web dev are aware of these changes, although I never heard or seen anyone
+explaining clearly where we stand now.</p>
+
+<img src="web_browsers_are_no_more-2.png" alt="drawing of a fox">
+
+<p>Firefox, Chrome, Edge and others, are platforms for seamlessly acquiring and running applications on user's computer.
+The applications are somehow mixed with webpages but are normal computer programs nonetheless.
+
+<p>In the end, I feel like I stated the obvious. Still, what can we learn from it? I think that these shower-thoughts
+can help us see our needs better. What we have is a platform that can seamlessly launch cross-platform programs in a
+sandboxed environment. Additionally, these programs and their views (sometimes with selected parameters) can be
+expressed as globally unique identifiers in form of the URLs.
+
+<p>The problem is that this can easily lead us to a very unhealthy situations. The overall dependency on the Internet
+connection for running local programs will only increase. This in turn, can make things as "Application as a Service"
+more and more prevalent. I don't necessarily think they are bad, but they may become bad for the user, depending on how
+they are implemented and sold.
+
+<p>Trends like Electron partially fight this. On the other hand, they create other problems including astoundingly
+enormous duplication. Each electron application usually has its own web engine. The good thing is that at least
+partially user owns the software. The bad thing, is that generally speaking it wasn't intentional. The fun thing is that
+these somehow sandboxed applications are now distributed through sandboxed platforms like snap. I wonder how fast will
+we get yet another layer of sandboxing there.
+
+<p>Anyway, don't be angry, be thankful. We know where we stand and what we have in hands. Let's face it, solutions like
+browser applications are extremely convenient. Let's create a way to handle them and integrate into currently existing
+environment in a healthy way or create something entirely new that will make us all hide in shame, because we didn't
+think of it earlier. Myself, I want to explore breaking down the monolithic browsers into smaller pieces.
+</article>
+<script src="https://stats.ignore.pl/track.js"></script>