Let's rebuild the Internet, the right way

Our current technology stack is insecure, inefficient, and can be easily taken away from us.

The web is made out of mediocre technologies. HTML is not great at defining layouts; it was never good for presentation. HTTP is verbose. JavaScript is one of the worst programming languages ever created. The only reason we are using it today is because it became world-wide quickly.

We cannot open the web to our children because it is plagued with inappropriate content; it’s more like a Wild Wild Web.

The Internet itself is mostly built using a very deficient protocol: TCP is slow and doesn’t support multiple streams efficiently.

Widely used operating systems include proprietary software we can’t understand or modify. Linux itself includes proprietary software (mostly drivers) that we don’t know what they do exactly.

Truly open source operating systems do exist, but they are not as easy to understand to the point that our children can modify.

I have an idea to reinvent the whole Internet’s software stack from the ground up, the right way.

It actually includes very old ideas, mixed with new technologies. Decades ago, in the '70s and '80s, engineers had already conceived a world of objects that could be easily manipulated to accomplish any kind of tasks in a computer while transparently using a network to share them with other people.

My idea involves creating an object-oriented operating system based on an seL4 microkernel and Smalltalk, and using SCTP/UDP to make our little worlds communicate with others’ little worlds across the network.

seL4 provides the perfect foundation to create truly secure and very light operating systems. Smalltalk provides an easy object-oriented interface to build that operating system, so easy that our children can modify. SCTP/UDP will move us away from TCP deficiencies while keeping compatibility with current network devices, speeding up connections using multiple streams, mapping object messages directly to network messages.

Please don’t hesitate to reply to this message if you are interested in helping out to achieve this or have any questions about it.


Gerardo

3 Likes

I think this is a good idea.

Sounds like fun. :slight_smile: Have not heard the word “Smalltalk” in a while. If you have the idea, start a write-up describing the system design and how a person would use it. Links here work once you have something ready for presentation.

Also UDP might need some updates. It is great for un-reliable connections, but it has 1 port number and a queue to handle requests. TCP is slow, but it does have a system for grabbing request to another port number and having the primary port number ready for new requests.

2 Likes

Have you heard of Urbit?

https://urbit.org/

This is what you are looking for.

I have looked at Urbit. That is not what I am aiming for plus I have some objections about it.

This sounds very interesting. I am just getting started here. Have you made any progress on this idea? I would love to learn more. I echo montanna’s sentiments on the TCP/UDP discussion.

A lot of the technical details are over my head here, but I think the hardest part of any of this is user adoption since few people will change to use something new when the thing they already have is working for them.

Excellent notion. I am most definitely not tech savvy, but I thought of a name for this “Alternative Network” about 3 months ago: the Alter-net. If you build it, we will come. :slight_smile: