Live data from Hacker News

SerenityOS Browser now passes the Acid3 test

twitter.com

91–100 of 178 posts

Re: SerenityOS Browser now passes the Acid3 test

#91
post #80
post #69

Earlier quoted context omitted.

What's a rough minimum for a page with some text on it? Are we talking about 64MiB like Chromium, WebKit, or Gecko, or more like 16KiB, 256KiB, 4MiB, or 1 GiB? I think of memory usage as being more about correctness than performance, though I know that isn't how most people see it. Trying to run a 512MiB process on a 64MiB computer, or a 512GiB process on a 64GiB computer, is just never going to run at a usable speed…

If I open this HN discussion page in the browser, it currently uses 44MB of private memory. We can definitely shave a couple of megabytes off of it with some effort, but supporting the contemporary web on a 4MB budget seems infeasible.

For reference, this page+assets are 187kB. I'd guess the bulk of that 44MB comes from having css and javascript on this page, but a breakdown of what it's using 44 MiB on would be interesting!

Re: SerenityOS Browser now passes the Acid3 test

#92
post #87

Earlier quoted context omitted.

> I get this is his passion project, but part of me wonders what he could accomplish working on the rough edges of linux. I've watched/listened to more than a few of his videos. Something that he has expressed on more than one occasion is an appreciation for the kind of deep vertical integration that he saw at Apple because they control the entire stack. He's going for something in that direction in Serenity and it,…

He's also talked about this on the CoRecursive Podcast: Andreas: Well, I don’t know that I ever had a real direction with it. But in the beginning, I remember feeling kind of frustrated with finding myself using Linux again and thinking it’s nice to be back on Linux. Everything is snappy. And the developer experience is really great, but I sure do miss having the source code for everything. Adam: This is a fascinatin…

It seems like the problem is power distance and social credit. Random developer trying to get one line of code changed may run up into a gigantic wall. What about with Linus?

The "problem" with Serenity OS is that yes, now Andreas will have all the power he wants and can get that one line change without the bureaucratic process. But what about when some random user comes along and wants to change the code? They better start programming on Tranquility OS.

Re: SerenityOS Browser now passes the Acid3 test

#93

Earlier quoted context omitted.

That's how fast web standards change. Try again it'll probably be 95. I'm joking of course. The things /I/ want [1] seem to take forever to get proper support. https://www.w3.org/TR/webgpu/

Have you tried being a multi billion dollar company? The things Google wants seem to be added pretty quickly.

I HAVE tried being a multibillion dollar company, but I'm having issues getting multiple billions. Other than that I think I have the rest taken care of.

Re: SerenityOS Browser now passes the Acid3 test

#95
post #90
post #80

Earlier quoted context omitted.

If I open this HN discussion page in the browser, it currently uses 44MB of private memory. We can definitely shave a couple of megabytes off of it with some effort, but supporting the contemporary web on a 4MB budget seems infeasible.

Nice! Thanks! That's a real improvement over the existing browsers! Yeah, clearly you can't run Slack or Fecebutt in 4MiB, but there's a lot you could do. Even Lynx takes 14MB of RSS (not all private!) and 25MB of VSZ to load this discussion page, and Links is 9MB/13MB. (Neither of them produces a usable layout, but that's not because they're using a lot of memory.) The page source is 179K, links's "formatted output"…

https://get.opera.com/pub/opera/win/1218/en/ Opera_1218_en_Setup_x64.exe Default portable install.

   27.8MB windowed, one empty tab open 
   24MB minimized, one empty tab open 
   35MB windowed, one tab open with this thread loaded and scrolled once up and down
   31MB minimized, one tab open with this thread loaded and scrolled once up and down
   33MB windowed, one tab open with this thread loaded after restart 
   29MB minimized, one tab open with this thread loaded after restart
Opera needs ~5MB to load and properly render this page, and 28MB for the rest of the browser. Btw it also gets 100/100 on http://wpt.live/acid/acid3/test.html :-)

Re: SerenityOS Browser now passes the Acid3 test

#96
post #95
post #90

Earlier quoted context omitted.

Nice! Thanks! That's a real improvement over the existing browsers! Yeah, clearly you can't run Slack or Fecebutt in 4MiB, but there's a lot you could do. Even Lynx takes 14MB of RSS (not all private!) and 25MB of VSZ to load this discussion page, and Links is 9MB/13MB. (Neither of them produces a usable layout, but that's not because they're using a lot of memory.) The page source is 179K, links's "formatted output"…

https://get.opera.com/pub/opera/win/1218/en/ Opera_1218_en_Setup_x64.exe Default portable install. 27.8MB windowed, one empty tab open 24MB minimized, one empty tab open 35MB windowed, one tab open with this thread loaded and scrolled once up and down 31MB minimized, one tab open with this thread loaded and scrolled once up and down 33MB windowed, one tab open with this thread loaded after restart 29MB minimized, one…

Impressive! I thought Opera was using WebKit now so it was as bloated as anything else?

It used to be my favorite browser on Windows NT 4, last millennium.

Re: SerenityOS Browser now passes the Acid3 test

#97
post #80

Earlier quoted context omitted.

If I open this HN discussion page in the browser, it currently uses 44MB of private memory. We can definitely shave a couple of megabytes off of it with some effort, but supporting the contemporary web on a 4MB budget seems infeasible.

For reference, this page+assets are 187kB. I'd guess the bulk of that 44MB comes from having css and javascript on this page, but a breakdown of what it's using 44 MiB on would be interesting!

Obviously I don't know anything about the Serenity browser, but in the Gecko/WebKit/Blink cases it's mostly startup overhead. A page with a single word on it ends up being more than 44MB.

The DOM is a braindead abortion that should never have been standardized. There's no plausible way to implement it with reasonable efficiency.

Re: SerenityOS Browser now passes the Acid3 test

#98
post #92
post #87

Earlier quoted context omitted.

He's also talked about this on the CoRecursive Podcast: Andreas: Well, I don’t know that I ever had a real direction with it. But in the beginning, I remember feeling kind of frustrated with finding myself using Linux again and thinking it’s nice to be back on Linux. Everything is snappy. And the developer experience is really great, but I sure do miss having the source code for everything. Adam: This is a fascinatin…

It seems like the problem is power distance and social credit. Random developer trying to get one line of code changed may run up into a gigantic wall. What about with Linus? The "problem" with Serenity OS is that yes, now Andreas will have all the power he wants and can get that one line change without the bureaucratic process. But what about when some random user comes along and wants to change the code? They bette…

If you look at the contributors graphs[1] on our GitHub repository, you'll find that folks other than myself have added tens of thousands of lines of code. I'm not quite the power-hungry gatekeeper you might imagine :^)

Regardless, the issue I have with the mainstream FOSS desktop system isn't about any one project's development process, but rather the fact that there are hundreds of independent development processes, each controlling a small fraction of the whole system. Doing any kind of cross-subsystem work in that environment becomes a significant undertaking, and that's what I'd like to avoid.

[1] https://github.com/SerenityOS/serenity/graphs/contributors

Re: SerenityOS Browser now passes the Acid3 test

#99

I've watched a few of this guy's videos, and it's deeply impressive. He reminds me of the grizzled old guys from the 1980's that actually know the deep internals of an OS. They didn't just take it in school, they lived and breathed it. He's the guy that made the 'myth' of a 10x coder a reality for me. I get this is his passion project, but part of me wonders what he could accomplish working on the rough edges of linu…

By his own admission he basically did nothing but coding all day long for most of his life, to the point where if he took a long vacation he'd be worried about getting rusty. For SerenityOS he basically holed up in a cabin for 6 months coding. At dayjob it was "60-80 hours a week", not forced but because he wanted to do it.

That kind of sustained and focused work compounds over time and you just get better and better I guess. Reading stories like his makes me think I'm probably in the wrong industry because I don't enjoy coding that much and definitely have a ton of other things I'd rather do.

Re: SerenityOS Browser now passes the Acid3 test

#100

From serenityos.org: > ... marriage between the aesthetic of late-1990s productivity software and the power-user accessibility of late-2000s *nix > ... a system by us, for us, based on the things we like Come on, just say you want back your Win98/Win2K look'n feel ;) While I personally like my windows less decorated and more Mac OS-like, I'm quite impressed by the determination and progress of the SerenityOS team. Ar…

See the Ports directory [1] if you're interested in porting software over. Basically, there's a porting script framework with dependency management that you use to download and (cross-)compile into the Serenity disk image.

There's no X server and we don't want to have WindowServer support the X protocol as a standard feature. If you're porting a GUI app, your best bet is SDL2, for which we have a battle-tested well-working port. However, you can just as well port an X server that talks to WindowServer or the video hardware directly, it's just that that doesn't currently exist. But I think such a thing would be perfectly accepted as a port.

Sidenote: If you want less decorated windows, there's System 7-like themes and other minimalistic ones. Or make your own :^)

[1] https://github.com/SerenityOS/serenity/tree/master/Ports

Post reply on HN