Because it's super complicated and a thousand moving parts are involved. You have to parse HTML, draw everything correctly, do JavaScript, Canvases, WASM, Websockets, HTTP 1.0, 1.1, 2.0, SPDY, support 10 different image formats, 5 audio, 5 video formats, allow videoconferencing, write a plug-in system. Handle Bookmarks, History, File downloads, uploads, .... ..... ......
The standards alone are thousands of pages. You gotta read them all, understand them and program everything. Which takes years for a team of developers. And you also want it secure or your users get in all sorts of trouble. A browser is the number 1 way to get malware on your computer. And all these experts take a decent salary. Multiply that (hourly) wage with multiple people and several years and you'll end up with an expensive product.
Don't forget the fully fledged remote desktop thats built in, WebVR (which is being replaced with Web XR), Web Bluetooth, Web USB (aka Web Serial), the API's for notifications, ambient light sensors, an entire transactional database (indexed DB), the language translation API, the Gamepad API (videogame controllers), hardware passkeys (yubikey), speech to text, text-to-speech, webGL, webGPU, webworkers, service workers, an entire suite of cryptography tools, GPS location, battery, vibration, FileSystem API, picture-in-picture API, WebRTC, WebSensors, etc.
And then, all that on top of all that, building a miniture OS-kernel so that tasks can be sandboxed scheduled/executed and prevent 1 tab from crashing everything or hogging resources.
And despite all that, if you don't bend over to emulate Chrome's quirks a ton of sites still won't work properly and users won't use your browser because the other one is more "compatible". And you might still have to fake your user agent to be Chrome or Firefox so sites will even give you the fancy HTML instead of giving you the mobile or "limited" version meant for IE and older browsers.
Heheh, we're in the same situation as 15 years ago when I learned webdevelopment and had to handle lots of Internet Explorer quirks. And there were many. And IE was the dominant browser. Now it's a different one but a similar situation. I think it got substantially better, though.
You're welcome. I think people underestimate what's inside of a browser. I mean that piece of software does lots of things. And you can pretty much do most things with just some online services inside of the browser. Do office work, watch TV, do image editing, play games... Sure it needs some web application but also lots of interfaces that need to be provided by the browser.
Browsers are literally the best attempt at the everything app.
There's already been a lot of good answers on this. But a goody oldie article on making a browser is covered in Matt Brubeck's 2014 article, Let's Build A Browser Engine.
If you want to see one of the most minimal source code for a terminal based browser that is still in use today, I recommend downloading the source code for the Links Browser. Note that this site is very old and doesn't even use https. But the source code can still be had here.
Browser software is super interesting, but there's a lot even for a bare minimum setup like Links, so that's more or less why most people don't develop new ones from scratch anymore. Though there are a few exceptions like Servo, and Surf but they are pretty buggy tbh. Hope that helps and sparks your interest.
EDIT: Also of interest is Tali Garsiel's article, How Browsers Work. This is probably one of the best in depth articles on the subject.
Oh, I honestly didn't remember that, and just put that in as an afterthought. Should have double checked myself. Thanks for the clarification.
Well anyways. I love this subject enough to admit when I'm wrong. And also, in researching the subject more, I found that there is the Ladybird Browser which is apparently not based on Chromium nor Firefox. I have not played around with it, but it's nice to see people still putting in effort to make a new browser engine.
I also found this article where the author makes a browser based off of Matt Brubeck's aforementioned article. Very interesting stuff.
Not only do you have to support an insane amount of standards, you need to do it fast. Firefox and Chromium are optimized so much for speed, and nobody will use your web browser if it's slow or uses up tons of ram.
I imagine the Chromium devs have put a lot of work into reducing memory usage. Work that'll have to be replicated by whichever small team is working on this hypothetical browser.
The fact that I can go to one website and have a pretty much parity perfect and functioning photoshop for free, go to another and play online multiplayer games and then just go to a social webpage, forums and so much more in the same place is mind blowing when you think of how different these things are and how it all works flawlessly in the same program
Because you don't make money on making one, you make money on how it alters the view on how people see the Internet.
Under Microsoft, the Internet was made janky enough to encourage more than the basic web use require third party plug-ins that didn't always work or a computer program running in Windows.
Under Google, the Internet is more standardized across platforms, but Google can shape how the Internet works for it's own profit.
Many reasons on many levels. One of them: Browser developers and the companies behind them benefit from a system where we have basically 2 options that reliably work. They have a stronger interest in keeping this expensive, rather than making it easy and cheap. So making sure other people can also develop a different browser is not on the agenda of anyone relevant.
If only non-animated content could be rendered using something other than HTML/CSS.
I mean, most web content such as news or blogs are static text plus images. We could use a much simpler format with a really low entry point for more competition.
We can use apps for the complicated and dynamic content. I’m really generalizing but it’s out of frustration from how shitty the web has become and how it’s controlled by so few mega corporations.
Lots of people do use gemini, but I think it's past the point where, if were ever going to catch on, it would have.
Personally, I think it's mostly OK, but went too far with simplifying the gmi spec; it's too simple. And some things that need to be possible for success, aren't, and never can be. I think it's too flawed to have ever caught on.
Wish at least Lemmy and Mastodon (the whole fediverse) were possible to see in Gemini browsers at least (i'm using Lagrange in case anyone wants to try), we are already immune to the technical and commercial obstacles of mainstream web, and are just text and image.
The obscene amount of copyright protection BS and ads and tracking probably doesn't help. The average website, in my eyes, is massively bloated and over engineered for the content they actually deliver.