I think the Web is unredeemable at this point; there is so much entrenched complexity, ugly hacks, centralization, and misuse of various technologies that it can never be undone. The only solution is to refuse to contribute to the Web at all, which is hardly an option for most of us here.
I like the latter idea.
Go build your new web and leave those of us who believe the existing web, despite its faults, has value, be.
that doesn't really speak to the value of progress, reflecting on the status quo, or creating something fresh with lessons learned from the past.
i don't really get the 'leave you be' bit.
Simple. More than a few people here seem to believe, as the grandparent comment suggests, that the web is a lost cause, or irredeemable, and all those people seem to want to do is to constantly complain about it.
I'm simply suggesting that if people feel the web has nothing to offer them, that it would be more productive for them to kindly leave it for a network that better suits their needs. Otherwise, rather than wanting to "fork the web and start over" they could consider working to improve what we have.
I disagree - if it has something to offer then it's not a lost cause. A lost cause by definition isn't worth saving, or even engaging with.
> 'leaving the web' also doesn't seem very pragmatic, at least until something better is available.
The comment I replied to earlier suggested that the only reasonable solution to the web was to fork it or start over, with starting over being preferable. I'm merely suggesting that someone should actually get started on that.
Or maybe revive Gopher. I hear that's still around.
the real question is whether the New Thing can avoid the problems of it's predecessor.
Why are you taking those complaints so personally?
You don't need us to be content with the status quo. If all we are doing is complaining, we really aren't doing anything to you.
It sounds an awful lot like you are complaining, but about what, I am not sure.
I don't see how I am not letting you be, either. Creating a new system does not involve you at all, until you find a personal interest in that system, or its development.
The hard part would be enforcing behavior so you don't end up with venders adding their own bits which destroy the entire point of the thing.
Somewhere, an AMP developer coughs indignantly
Yes, that is a lofty goal. That does not make it unreasonable.
> Is the solution to break that into its component parts, so that each part can be maintained by a smaller group, and composed together to produce the browser as a whole?
Possibly, but currently, a "web" browser depends on its monolithic qualities. A web page is a DOM, defined by HTML, styled by CSS, and manipulated by JavaScript.
I think it may be time to start designing something less inherently monolithic.
One advantage to modularity is that we don't need to finish before we can use it.
[0]: https://heropunch.io
> Guys, there is a _reason_ why microkernels suck. This is an example of how things are _not_ "independent". The filesystems depend on the VM, and the VM depends on the filesystem. You can't just split them up as if they were two separate things (or rather: you _can_ split them up, but they still very much need to know about each other in very intimate ways).
I imagine so.
And?
This is essentially how teams that build huge software systems work. Like for instance, operating systems like windows/linux. The various teams at Microsoft, or trusted comitters for Linux, organize their various modules, components, subsystems, etc. independently, and eventually compose them into a coherent functioning whole to ship the whole system.
There are a few methods:
1. Libraries linked by binaries.
This is the usual method, but it generally demands modules share some things, which usually couples them too tightly to their implementation.
2. IPC (Inter-Process Communication)
There are a few ways to accomplish this. Some are OS specific (named pipes), others are fairly generic (sockets). This requires modules to share a language, and has some overhead, but at least they aren't coupled.
3. Microkernel
Essentially the best points of 1 and 2, but generally a design challenge itself.
The biggest advantage to modular design is that you don't need to create all the modules before you get something useful.