I'm still fed up and a browser is coming along fine

Posted on 16 Dec 2023
Tagged with: [ rust, programming, browsers

Three months ago, I wrote a small story about being fed up with things and trying to do something about it. Three months in, we’ve got a small community sharing the same goal: let’s try writing a browser.

You have to read the previous blog post here for some background information. In a tl;dr: I’m sick and tired of large companies doing evil stuff and turning the internet and computing into a dystopia. I decided to fight back the only way I could: writing computer stuff.

That blog post wound up on HN and other resources. I tried to read most of the comments, which were very positive overall. A small one-person repo with not much in it turned into a slightly bigger repo with multiple contributors. Still, more importantly, we gathered a small community of people who wanted to join in writing a browser. Most of them do not have experience writing browsers and/or working with Rust. But this alone didn’t stop them from joining, discussing ideas, researching, and producing some code.

So, after three months, our Gosub browser is still nowhere. But that was expected, as writing a browser is not something you can do in three months, but we’ve got research in all kinds of facets of browsers, functional code to do HTML5 parsing, an almost finished CSS3 parser, some concepts of implementing a javascript engine, some concepts for user agents and much more stuff.

We lack much, though. We’re not an organized, professional team of developers with little experience in community management. We do not always share our views and can’t spend 8 hours a day working on this project. People have lives besides the project, and lose interest and other things. But we are growing each day, and every day is a day closer to completion.

So what’s next for us? We have a few things we like to do in the short term:

  • Create a sort of roadmap. Without this, it will be much harder to guide the project, onboard new contributors and keep people interested. This is one of the main things I still feel we are lacking.
  • Get more people on board. Even though we are still working out the big plan on what and how we will build things, there are still many things we could build as concepts or have multiple developers work on a single component within the engine. This will probably start with inviting more users to our developer chat environment at https://chat.developer.gosub.io.
  • Research, research, research. There is so much we don’t know, and we discover more things daily.

So every time in the last couple of months, whenever I saw another site being blocked because I run an ad-blocker, or being scanned by Cloudflare and hoping I’m allowed by BigCorp to view content, or every time I feel we take a step back from a free internet, I get behind my editor, fire up some specs, and start coding away. It might not move mountains, but it keeps my sanity.

The project itself can be found on GitHub: https://github.com/gosub-browser/gosub-engine