Did anybody here ever use the ISDN data ports in payphones in Japan? I remember seeing them here and there in 1998 (IIRC). At the time I wondered about popping over to one and getting on the web just to see how it would work. ISDN was serious biz to my mind at that time, compared to rural USA dialup.
In 1997 or so, I was an intern in the remote connectivity group at Sun. My job was primarily to help maintain connectivity for the people at home rocking their 128k dual-channel ISDN lines. I helped maintain local modem banks and remotely manage end user hardware and software. I remember drooling at the prospect of such a fat internet pipe.
Are you seriously complaining that this emulator of several operating systems and old browsers doesn't run inside a modern browser without javascript? I really hope you're kidding.
Maybe not but I'm willing to bet there are more reasonable/impactful things for the author to fix or worry about instead of handling this case at all in the first place.
Browsers are now so fast and capable that you can emulate whole OS with another browser in them, which you can then use to browse.
So why does half of the websites in 2021 feel so sluggish?
GMail, which was famous for loading fast, sometimes takes forever to load.
I need to wait minutes when reading news websites while elements randomly jump around the page (seriously, why does pages do that? Why do elements randomly jump around for the first 2 minutes? what is the problem there?)
I don't want to just blindly blame JS. Look at this page! JS can be amazing! And I love stuff like Figma (as it's so fast and optimized). But why does the average experience suck so much?
The short answer: Tracking and advertising.
Longer answer: All of the above + bloated frameworks (frontend and backend) + unoptimized/excessive static assets.
I guess we all know this, so I apologize if you meant it more as a rhetorical question.
As for Gmail, I've never had a problem, it's always pretty fast, considering all the features it has.
Why does tracking and advertising take so much time to load and display?
I would not really mind ads and being tracked if it didn't make internet sometimes literally unusable?
"bloated frameworks"... I remember when React was touted as "faster than native DOM"! Which didn't make much sense even back then, because you need to do the things in actual DOM too... but... there was always the push of speed
So where is the bloat from, really.
Javascript can be really fast. It's just, nobody really cares? I guess?
Best answer that I can give you is: Because many of the ad companies are run by sales people.
Seriously, we struggled with an ad/retargeting company, they ran EVERYTHING of a single EC2 instance and they didn’t understand the internet. If/when their service went down the checkout pages of all their clients would timeout. The word async meant nothing to them, but hey better to crash than not track users. They would continuesly lie about their implementation, because they failed to under basic terminology. “This is a HA setup, right?”, “Yes, it’s a cloud solution in AWS”. That just meant: Why would AWS go down?
Sure, we wanted to use Google Tag Manager, to load their javascript, because they already lied about it being async. So we’d use GTM to avoid them blocking our order confirmation page, when they had issues. So we asked if that would be an issue. It would not, their product worked well with Google products. It did not work, it completely failed to pick up the correct dom elements, it had never been tested with gtm. Again they also promised that they’d more to a real HA setup, but the never did.
Oh I forgot. They claimed that their solution was custom made, tailored to the need of their business and the business of their customers. When we asked for a few tweaks, to make implementation easier it turned out to not be true. It was in fact an off the shelf solution and they had no influence on the development. We only found out because some of the Javascript revealed the real authors.
If by chance you block certain actions, you'll see it spin ridiculous amount of CPU, trying to sent tracking data all the time over graphql.
Some tracking systems injected (often without developer involvement, using so-called tag managers) will send your mouse position and clicks.
Through tag managers, you can easily end up loading 50 different scripts, often compiled with attendant framework code, usually in chains of tag manager loading tag manager (classic example - using Google Tag Manager to load Facebook manager and Google Ads, which then issue multiple calls to load JavaScript ads and trackers, which might involve further script loads).
And the tag managers are often managed by marketing in complete separation from any development or QA, so what was reasonably good website loading fast even under limited network conditions, suddenly turns into huge freeze-fest as 3 autoplaying videos get preloaded, 2MB JS/CSS animated overlay ad loads in, 3 ad boxes are filled in dynamically , and don't forget 15 trackers, 4 of them from ad services, 8 of them added by marketing team with possible duplicates, and 3 of them part of malware loaded by the ads.
The fact is, modern javascript is FAST. And with http3, and compression, you can make things load really REALLY fast. Much faster than in 1994!
And you have things like tree shaking where you can make the js tiny. Not speaking about wasm, that’s even faster, or putting things to web workers. Modern CSS is so easy to use. And of course CDNs are nowadays all around the globe. Chrome debugging tools are pretty good to debug slowness.
What I am saying by long way and repeating… it’s easier than ever to make a fast website!!! I know first hand, I made some websites recently, with really heavy logic on the FE in JS.
So why are all these websites so slow… ugh.
The tools are there! It’s not like it is inscrutable.
Round trips for ad auctions are a part of it, but my take is that there are redundencies, literally a dev team that doesn’t exist anymore wanted to use one metrics tracker, it was never deleted and a newer team introduced a separate stack to check how long you gaze (sorry, “dwell”) at each paragraph. Multiply this by 10 years. Medium used to be relatively snappy (cached CSS and text + pretty slick lazy loaded images) but nowadays its another lumbering dinosaur.
I guess it’s related to that notion “groups of people can never admit a mistake” - if they ever did a clean sheet redesign it could turn into neo-facebook/reddit (somehow even slower due to extremely tall dependencies) - but they can never go back to first principals of how the site used to work, it would be admitting that things have gotten worse with time.
And the core website that the developers actually see while working on it might be just as fast as you imagine!
The developers are not in charge, usually, of what rules will be loaded into a tag manager by the marketing team (which might involve different sets based on URL or various other tracking data). The tag managers themselves and base ad auction and spyware stuff might be pretty performant, too - it's when you hit all those third party ads etc. that you might also see some shitty code.
But when many of those "features" are written assuming all the extra budget for themselves, well, things go bad fast.
Mozilla announced that they are also adopting Manifest v3, but not sure if they are going to disable v2, or whether they would continue to provide extra APIs that would allow for continued operation of tools like uBO
Some of the scripts need to be placed in the head section of the document which is a blocking operation.
Some of the ads are generated on the run based on that tracking data and it involves many, many http round-trips before it's injected via ajax.
Further, comment sections have some sort of fb tracking integration, triggering even more round trips.
And all that is separately loaded on a non optimized website layer with many externa JavaScript frameworks and dependencies.As well as injected video components, huge images which most likely aren't optimized. Lazy loading should be native now, no jQuery function needed, no intersection observer either, and it does work ok, but it's often not properly implemented or not at all.
As for react, the stripped shadow Dom might be faster then the native Dom, but you still need the Dom and react is still a heavy load. I remember the days when people said don't needlessly load jQuery. Today, people use react when there's no real need to do so.
Javascript is one of the major reasons, but also trackers, huge graphics and loads of videos. Old pages still load fast so it's not the browser's fault. Say what you want about https://www.lingscars.com/, but it loads instantly, is full of all animations and doesn't lag down the browser.
The problem is modern design, basically. We've invented server-rendered pages, then started rendering everything client side with frameworks like React, then we've started pre-rendering React on the server and completing content in the client, and now the pendulum seems to be swinging the other way around again to technologies like Flutter that just render an application in a canvas shudder.
People want interactivity, and developers want that interactivity to be consistent across their website. To do so, they need to recreate and emulate everything the browser does. In the case of React and other JS frameworks, that even includes constructing fake DOMs. Back buttons get overridden, links get turned into buttons that do custom routing, you name it and there's a layer of Javascript you can download to avoid having to do the hard work.
This is partially because of how demanding people have become. They expect any proper web page to be like Facebook. People, especially customers, want features, and they want them fast. Big companies that have their own developers are pushing their users towards their apps, sometimes intentionally sabotaging their website (looking at you, Reddit) to force people to download their invasive, native code.
Websites have become applications, and applications are inherently taxing on most systems. Google tried to combat this in their own, misguided way with AMP. If it wasn't for their stupid caching architecture, I'd be a fan of AMP because of the speed it can provide compared to "modern" web pages.
I don't think any of this will change unless we convince web developers to stop relying on all of these "modern" technologies and just write proper web pages. From the reactions here on HN, there are two groups of people in this debate: the people like us, who lament how slow the web has become, and the people who will never give up their fancy frameworks because of the productivity it allows them, and will never give in to the web Luddites who want to take away their fancy cross-platform tools that run just fine on their $2000 M1 Macs.
There are also a lot of web developers out there that are just shit, but we can't help those.
> I don't think any of this will change unless we convince web developers to stop relying on all of these "modern" technologies and just write proper web pages.
It’s not the modern tech that is at fault. When used correctly it can work very well as it was intended.
Problem is it’s just about easy enough to be used wrongly by low skill developers who don’t engage with anything they’re making deep enough to even become critical of how it’s functioning.
And worse when you start pointing it out they always just come up with lame excuses as if it’s normal that a page displaying 30 items takes 15+ seconds to load and have to spend your time lecturing them that yes links should open in a new window when ctrl clicked or that urls should actually function when you go to them directly.
Lack of care and attention. By developers who are pressured to keep sprint velocity up. By product owners who follow the ideal path. By designers who want sites to work like their mock-ups. By testers who don’t have enough time to test under specified features. By clients who are focused on reporting upwards and tracking business goals.
And by prioritising new learning experiences over boring reliable solutions.
The operative piece of the above post (to me) is "working _against_ the browser", not the existence of custom code per se. IME lots of problems with UI development have come (partly) from shoehorning tech to do something it's not meant to do, at the expense of speed, accessibility, and general usability. If the built-in thing doesn't do what you need, by all means build something that does, but it's worth keeping in mind that often the useful thing that end users actually need/want is the built-in thing.
Nothing when mockups are iterable and editable by the team and when the designer is part of the team.
A hell of useless code/new APIs/authorization issues just for no customer value but only discutable esthetics considerations when mockups are designed up front by some never available designer like they are some inviolable part of the specifications thus are enforced to the team.
I suppose most devs don't use tree-shaking when importing modules.
The frameworks themselves don't add much bloat usually.
I do believe however single page apps are a fad and we are going to return to SSG/SSR which is already apparent in new JS frameworks like NextJS.
A 5 y/o girl, watching me troubleshooting an error on a TV at family gathering, suggested I restart the TV. I told her mother the child had demonstrated sufficient knowledge to work in modern IT support.
Sorry for the offtopicness, but I need you to see this and don't have another way to contact you.
You have posted a great many comments that broke the HN guidelines egregiously. (I'm not talking about this thread.) Comments like this are bannable offenses on HN:
I'm not going to ban you right now, partly because those threads are all at least a week old and partly because your account has years of history on HN. However, we need you to review https://news.ycombinator.com/newsguidelines.html and stick to the rules from now on. If you keep breaking them like this, we're going to have to ban you. In particular, it's absolutely not acceptable to attack other users the way you've been doing, no matter how strongly you disagree with them. That goes against everything this site is supposed to be for.
Browsers are fast, too. Think about all of the hard work which has gone into advanced hardware acceleration, JIT engines, etc. That work deserves respect even if the median front-end developer squanders it with bad decisions.
It's basically Parkinson's law. If someone is given NASA's resources to move a piece of paper across the room, they will find a way to use a space shuttle to do it and call you oldfashioned for doing it by hand.
It's a bit unfair because modern pixel art games are literally nothing like old pixel art games.
For one, the resolution has gone from 400x300 to ~3000x1500 and more, and the number of color went from 8 to millions. All those pixels in high-res pixel art have to still be stored somewhere.
Even though I still agree that some games do not deserve to be as fat as they are.
Not to mention the other liberties taken with modern pixel games, like non-pixelated particles and effects, character portraits, etc. These modern games don't look retro so much as they look simplified
I don't see that as a good equivalent. Highres art assets takes up space, there's no beating that. Old snes games and modern 2d'ers are not on the same lvl regarding fidelity.
Yep. Ticket to Ride is a board game and its video game version on Steam is hundreds of megabytes, yet all it has is 2D images with some scaling and translation effects.
Your two examples are horrible examples. Celeste is truly a pixel game. It uses pixels as an art style, but spending any time with the game reveals its complexity.
- The resolution of the game is detached from the pixels, allowing them to be squished and squashed.
- While it looks like they’re reusing assets, they really aren’t that much. A ton of areas have unique pixel tiles.
- The code is complicated and complex; the physics and control are astoundingly advanced.
- It has beautiful high resolution drawings of characters and cutscenes.
- The music and sound is full fidelity.
- Celeste is running on Unity, which is probably the biggest reason for its large size.
That Castlevania game has a 3D main character, with Retina quality textures. Since it’s made for Apple Arcade, it has to support a 4K resolution for Apple TV, meaning all the game’s assets have to look reasonable on a screen at that resolution. The main character alone must weigh a couple megabytes.
Basically, more resources mean that people will use more of these resources. And therefore any optimizations that go resource effectiveness (in this case browser efficiency) will be negated.
Dan Luu reports that Google penalizes his pages in search rankings because they don't include enough CSS and JS. It's not really half of the websites; it's the half you're being guided to.
There's a dead comment asking if you have a source, and the commenter appears to have attempted finding it themselves.
As an aside, I vouched for the comment (which still shows as [dead]), because a quick glance at posting history shows just the singular comment as dead, with no indications of twattery to justify it. It's like a commenter with not-interesting post history just got a single comment randomly killed.
I can remember in the late 90s it would take about 20 minutes to download a 3mb MP3 file. My employer’s homepage is now about 8mb, according to the browser dev tools.
> I don't want to just blindly blame JS.
JS is a tool, a language. Don’t blame the tools as they have been refined to an astounding degree over the last 25 years. As a long time front end developer blame the business, specifically:
* Developer incompetence. Do you really need the largest frameworks humanity has written and a million dependencies to put a couple lines of text on the page? Yes. Well, no, but most developers will claim otherwise and most businesses will refuse to hire those who are so capable.
* Stalking. Analytics code is a silent performance killer and generally responsible for a lot of JS on many commercial websites. This wonderful stuff allows for session tracking via advertisements across various websites and at times serves as a point of malicious intent by both valid business interests and criminal organizations.
The current compromise for monetization on the web is advertisiting. The web apps and sites are not optimized for snappiness, responsiveness, user experience. They are optimized for tracking and profiling, the market leading front-end frameworks enable mostly these.
The web has grown from something to display documents to a platform for applications. Focus has been placed heavily on optimization of JS jit compilation, but currently browser DOM and CSS layout engines have not cought up leaving a disparity in performance on major browsers.
You can also say this of software in general including operating systems.
Sure, the hardware and network are a miracle.
My 2 cents is that there is so much software to be written that most programmers are mediocre at what they do and/or their working environment makes it even more difficult to create efficient software systems.
Hardware and networks get the easy stuff, it's just moving lots of data around. Software is where all the messy human stuff happens. So naturally it's a reflection of human beings. Ie messy.
I'd say all the software on earth is done cheap. Quality doesn't really matter for most projects. Where it does matter, if there's money it happens.
You did not pay for any page to load fast or to serve you what you are looking for. Every web-request, every click you make with your browser, can deliver you a response which is unknown to you or your browser before-hand. There is no way for you to see what you are buying before buying it if it was possible to buy page-loads.
Say thanks because you are not in the EU and get the cookie and GDPR spam thrown at you as well. Worse than the 1999 popups.
> Browsers are now so fast and capable that you can emulate whole OS with another browser in them, which you can then use to browse
Yes they can emulate a whole OS. It's browsing at what they suck. Seconds wasted for TLS handshake, seconds wasted on downloading MB of JS, then realizing content is missing, another TLS handshake, another download, then some ads, some tracking scripts and finaly the page is displayed. Of course if you don't use Chrome or Google DNS you will be penalized. And don't forget to accept all cookies.
Seconded uBlock Origin, the web is unusable without it. I moved however from NoScript to uMatrix, which can block with more granularity, but needs to be either kept default off or "trained" because its factory settings are very strict and could block a lot of necessary stuff (ie, don't install it to non technical users).
I like NoScript's UI. I've never tried uMatrix or uBo's more complex modes, but every time I see screenshots like in the article you linked, my head spins. So I stick with NoScript because I understand it. Compare: https://noscript.net/noscript/ss0.png
No knock on uBo! Just explaining why I stick with NoScript :)
Yeah I agree with all the parents other points, but Gmail has been an island of sanity, very rarely annoying me. Now, I’m usually using it on a fast computer but typical sites can’t even live up to that standard on the same machine.
I'm not sure what sort of workflow and mail client you desire, but Notmuch supports arbitrary tagging. Most coverage I've seen of it integrates with emacs or mutt (or similar text-based mail clients). That said, in searching for the project homepage, I also saw this project[1], which might be interesting if you're looking for something a bit less terminal. I'm sure there are more alternatives, but hopefully this is useful as a starting point for you.
I broadly agree, but you lost me at Figma being fast. Granted I am using an older MacBook Pro (2015), but using Figma in a browser usually requires that I close other apps to let Figma do its thing. Figma and Miro are the only sites I have encountered that incur this level of performance hit.
Incidentally, mightyapp.com was founded to make browsing less resource-intensive by doing the rendering in the cloud. They highlight Figma and Miro (among others) prominently, so it seems others have similar experiences with Figma.
Most people will put up with slow-loading pages up to some extreme threshold.
So, if you reduce your page's loading time from, say, 1 second to 400 millis, you won't gain any significant number of users.
On the other hand, if you use those extra 600 millis to hold an auction for ad space on the page, you make more money immediately.
Therefore we can expect any for-profit site to load only fast enough to keep users from giving up (even if they feel frustrated or whatever), and no faster than that.
> But why does the average experience suck so much?
to the current crop of web designers/developers/etc, they literally may not remember a time when the web was a lot faster.
they don't remember the days of websites loading just fine (ok, most of the time..) over a 56k modem. they've grown up with the web the way it is, javascript and all.
Arguably, Safari is the IE of our times.
Safari somehow always have rendering issues. I use Firefox as that's closest to standards, I hate bending standard code to fit a garbage browser's special needs.
I wouldn't go as far as calling it an "IE", because those of us who lived through that know it was a completely different experience.
But yes, Safari is slow in implementing new features a bit and it does get annoying from time to time. But it's nowhere near the IE hell from ~2000 - 2008.
It totally is. I used to write custom CSS for IE to make drop shadows work (it didn't support the standard syntax). Now I write custom CSS for Safari to make drop shadows work (there's a bug where if you remove the node, its shadow sometimes stays behind).
On iOS you have to use Safari if you want to use a content/ad blocker, which means I’m kind of stuck with it on my iPhone/iPad.
Then you bring macOS into play, and the way Safari on mobile syncs with Safari on desktop is really nice. Password sharing in particular is great, so you end up getting sucked in to Safari!
Jeez, the error message in safari was below the scroll line. I got annoyed with the spinning circle loading the page for navigator 3 and thought, “oh I get it.. haha it’s being slow like back in the day”.
After thinking, “no, it wasn’t _this_ slow back in the day,” I scroll down to see..
Sorry, OldWeb.today can not run in this emulator in your current browser.
Maybe hide the spinny circle thingy if you’re smart enough to know you’re not going to load anyway.
Wow, very well done. I am one of those who grow up late 90s / early 2000s browsing internet, forums, blogs, fansites, presonal websites, and from time to time I go back to web.archive to see again the webpages that made me happy during my childhood / teen ages. This is a great complement for that.
Thank you very much whoever did this - my inner self is really thankful.
Man, I'm so glad that I was able to experience the Internet/Web in those early stages. The epic feeling is just something else compared to what we have today.
I browsed to my own site on IE4 and got Invalid URL: null on a page. Whatever that's about. The front page loads (and displays!) correctly (albeit without CSS).
Oh wow. I wasn't expecting it to actually load and emulate an entire OS in my browser. It's an actual full OS too, with finder/explorer fully working. I thought it would be something like a proxy + web archive.
I chose geocities as of 1996. It booted mac os 7. Then IE threw an error at me. Then I entered google.com to the URL bar out of curiosity, thinking it would load actual modern google. Only to be greeted with "Google Search Engine Prototype". Lol.
135 comments
[ 3.1 ms ] story [ 191 ms ] threadI think at that time we just used it to browse wais.
I remember reading about T1 lines and being blown away at how fast that was
What amazed me was how quickly that went from state of the art to pretty mediocre.
although altavista.com site doesn't work very well
I automatically used that as my first choice of website to use
Active Desktop is what got me into doing websites originally.
Fond memories of early 90's internet.
Browsers are now so fast and capable that you can emulate whole OS with another browser in them, which you can then use to browse.
So why does half of the websites in 2021 feel so sluggish?
GMail, which was famous for loading fast, sometimes takes forever to load.
I need to wait minutes when reading news websites while elements randomly jump around the page (seriously, why does pages do that? Why do elements randomly jump around for the first 2 minutes? what is the problem there?)
I don't want to just blindly blame JS. Look at this page! JS can be amazing! And I love stuff like Figma (as it's so fast and optimized). But why does the average experience suck so much?
I guess we all know this, so I apologize if you meant it more as a rhetorical question.
As for Gmail, I've never had a problem, it's always pretty fast, considering all the features it has.
I would not really mind ads and being tracked if it didn't make internet sometimes literally unusable?
"bloated frameworks"... I remember when React was touted as "faster than native DOM"! Which didn't make much sense even back then, because you need to do the things in actual DOM too... but... there was always the push of speed
So where is the bloat from, really.
Javascript can be really fast. It's just, nobody really cares? I guess?
Seriously, we struggled with an ad/retargeting company, they ran EVERYTHING of a single EC2 instance and they didn’t understand the internet. If/when their service went down the checkout pages of all their clients would timeout. The word async meant nothing to them, but hey better to crash than not track users. They would continuesly lie about their implementation, because they failed to under basic terminology. “This is a HA setup, right?”, “Yes, it’s a cloud solution in AWS”. That just meant: Why would AWS go down?
Really? Could you give more examples?
Oh I forgot. They claimed that their solution was custom made, tailored to the need of their business and the business of their customers. When we asked for a few tweaks, to make implementation easier it turned out to not be true. It was in fact an off the shelf solution and they had no influence on the development. We only found out because some of the Javascript revealed the real authors.
If by chance you block certain actions, you'll see it spin ridiculous amount of CPU, trying to sent tracking data all the time over graphql.
Some tracking systems injected (often without developer involvement, using so-called tag managers) will send your mouse position and clicks.
Through tag managers, you can easily end up loading 50 different scripts, often compiled with attendant framework code, usually in chains of tag manager loading tag manager (classic example - using Google Tag Manager to load Facebook manager and Google Ads, which then issue multiple calls to load JavaScript ads and trackers, which might involve further script loads).
And the tag managers are often managed by marketing in complete separation from any development or QA, so what was reasonably good website loading fast even under limited network conditions, suddenly turns into huge freeze-fest as 3 autoplaying videos get preloaded, 2MB JS/CSS animated overlay ad loads in, 3 ad boxes are filled in dynamically , and don't forget 15 trackers, 4 of them from ad services, 8 of them added by marketing team with possible duplicates, and 3 of them part of malware loaded by the ads.
The fact is, modern javascript is FAST. And with http3, and compression, you can make things load really REALLY fast. Much faster than in 1994!
And you have things like tree shaking where you can make the js tiny. Not speaking about wasm, that’s even faster, or putting things to web workers. Modern CSS is so easy to use. And of course CDNs are nowadays all around the globe. Chrome debugging tools are pretty good to debug slowness.
What I am saying by long way and repeating… it’s easier than ever to make a fast website!!! I know first hand, I made some websites recently, with really heavy logic on the FE in JS.
So why are all these websites so slow… ugh.
The tools are there! It’s not like it is inscrutable.
I guess it’s related to that notion “groups of people can never admit a mistake” - if they ever did a clean sheet redesign it could turn into neo-facebook/reddit (somehow even slower due to extremely tall dependencies) - but they can never go back to first principals of how the site used to work, it would be admitting that things have gotten worse with time.
The developers are not in charge, usually, of what rules will be loaded into a tag manager by the marketing team (which might involve different sets based on URL or various other tracking data). The tag managers themselves and base ad auction and spyware stuff might be pretty performant, too - it's when you hit all those third party ads etc. that you might also see some shitty code.
But when many of those "features" are written assuming all the extra budget for themselves, well, things go bad fast.
Some of the ads are generated on the run based on that tracking data and it involves many, many http round-trips before it's injected via ajax. Further, comment sections have some sort of fb tracking integration, triggering even more round trips.
And all that is separately loaded on a non optimized website layer with many externa JavaScript frameworks and dependencies.As well as injected video components, huge images which most likely aren't optimized. Lazy loading should be native now, no jQuery function needed, no intersection observer either, and it does work ok, but it's often not properly implemented or not at all.
As for react, the stripped shadow Dom might be faster then the native Dom, but you still need the Dom and react is still a heavy load. I remember the days when people said don't needlessly load jQuery. Today, people use react when there's no real need to do so.
The problem is modern design, basically. We've invented server-rendered pages, then started rendering everything client side with frameworks like React, then we've started pre-rendering React on the server and completing content in the client, and now the pendulum seems to be swinging the other way around again to technologies like Flutter that just render an application in a canvas shudder.
People want interactivity, and developers want that interactivity to be consistent across their website. To do so, they need to recreate and emulate everything the browser does. In the case of React and other JS frameworks, that even includes constructing fake DOMs. Back buttons get overridden, links get turned into buttons that do custom routing, you name it and there's a layer of Javascript you can download to avoid having to do the hard work.
This is partially because of how demanding people have become. They expect any proper web page to be like Facebook. People, especially customers, want features, and they want them fast. Big companies that have their own developers are pushing their users towards their apps, sometimes intentionally sabotaging their website (looking at you, Reddit) to force people to download their invasive, native code.
Websites have become applications, and applications are inherently taxing on most systems. Google tried to combat this in their own, misguided way with AMP. If it wasn't for their stupid caching architecture, I'd be a fan of AMP because of the speed it can provide compared to "modern" web pages.
I don't think any of this will change unless we convince web developers to stop relying on all of these "modern" technologies and just write proper web pages. From the reactions here on HN, there are two groups of people in this debate: the people like us, who lament how slow the web has become, and the people who will never give up their fancy frameworks because of the productivity it allows them, and will never give in to the web Luddites who want to take away their fancy cross-platform tools that run just fine on their $2000 M1 Macs.
There are also a lot of web developers out there that are just shit, but we can't help those.
The technical term is webshits.
It’s not the modern tech that is at fault. When used correctly it can work very well as it was intended.
Problem is it’s just about easy enough to be used wrongly by low skill developers who don’t engage with anything they’re making deep enough to even become critical of how it’s functioning.
And worse when you start pointing it out they always just come up with lame excuses as if it’s normal that a page displaying 30 items takes 15+ seconds to load and have to spend your time lecturing them that yes links should open in a new window when ctrl clicked or that urls should actually function when you go to them directly.
And by prioritising new learning experiences over boring reliable solutions.
A hell of useless code/new APIs/authorization issues just for no customer value but only discutable esthetics considerations when mockups are designed up front by some never available designer like they are some inviolable part of the specifications thus are enforced to the team.
You have posted a great many comments that broke the HN guidelines egregiously. (I'm not talking about this thread.) Comments like this are bannable offenses on HN:
https://news.ycombinator.com/item?id=29670648
https://news.ycombinator.com/item?id=29657097
https://news.ycombinator.com/item?id=29657047
https://news.ycombinator.com/item?id=29657028
https://news.ycombinator.com/item?id=29657006
https://news.ycombinator.com/item?id=29346327
https://news.ycombinator.com/item?id=29352983
I'm not going to ban you right now, partly because those threads are all at least a week old and partly because your account has years of history on HN. However, we need you to review https://news.ycombinator.com/newsguidelines.html and stick to the rules from now on. If you keep breaking them like this, we're going to have to ban you. In particular, it's absolutely not acceptable to attack other users the way you've been doing, no matter how strongly you disagree with them. That goes against everything this site is supposed to be for.
https://store.steampowered.com/app/504230/Celeste/
https://apps.apple.com/us/app/castlevania-grimoire-of-souls/...
When the hardware was restricted, such games used to be squeezed onto a 48MB SNES cartridge
For one, the resolution has gone from 400x300 to ~3000x1500 and more, and the number of color went from 8 to millions. All those pixels in high-res pixel art have to still be stored somewhere.
Even though I still agree that some games do not deserve to be as fat as they are.
Whereas just the light texture for Celeste's dynamic lighting is bigger than the entire Chrono Trigger ROM :) https://medium.com/@NoelFB/remaking-celestes-lighting-3478d6...
- The resolution of the game is detached from the pixels, allowing them to be squished and squashed. - While it looks like they’re reusing assets, they really aren’t that much. A ton of areas have unique pixel tiles. - The code is complicated and complex; the physics and control are astoundingly advanced. - It has beautiful high resolution drawings of characters and cutscenes. - The music and sound is full fidelity. - Celeste is running on Unity, which is probably the biggest reason for its large size.
That Castlevania game has a 3D main character, with Retina quality textures. Since it’s made for Apple Arcade, it has to support a 4K resolution for Apple TV, meaning all the game’s assets have to look reasonable on a screen at that resolution. The main character alone must weigh a couple megabytes.
Basically, more resources mean that people will use more of these resources. And therefore any optimizations that go resource effectiveness (in this case browser efficiency) will be negated.
I found this post [1] but it seems a but outdated and references AMP, which Core Web Vital metrics are supposed to replace (right?).
https://danluu.com/web-bloat/
As an aside, I vouched for the comment (which still shows as [dead]), because a quick glance at posting history shows just the singular comment as dead, with no indications of twattery to justify it. It's like a commenter with not-interesting post history just got a single comment randomly killed.
> I don't want to just blindly blame JS.
JS is a tool, a language. Don’t blame the tools as they have been refined to an astounding degree over the last 25 years. As a long time front end developer blame the business, specifically:
* Developer incompetence. Do you really need the largest frameworks humanity has written and a million dependencies to put a couple lines of text on the page? Yes. Well, no, but most developers will claim otherwise and most businesses will refuse to hire those who are so capable.
* Stalking. Analytics code is a silent performance killer and generally responsible for a lot of JS on many commercial websites. This wonderful stuff allows for session tracking via advertisements across various websites and at times serves as a point of malicious intent by both valid business interests and criminal organizations.
It's been that way since the ad industry took over the web.
boss: "browsers today are so fast and capable, we don't need to waste resources on something that doesn't give us tangible ROI."
The web has grown from something to display documents to a platform for applications. Focus has been placed heavily on optimization of JS jit compilation, but currently browser DOM and CSS layout engines have not cought up leaving a disparity in performance on major browsers.
Sure, the hardware and network are a miracle.
My 2 cents is that there is so much software to be written that most programmers are mediocre at what they do and/or their working environment makes it even more difficult to create efficient software systems.
Similar correlations to Government.
I'd say all the software on earth is done cheap. Quality doesn't really matter for most projects. Where it does matter, if there's money it happens.
Say thanks because you are not in the EU and get the cookie and GDPR spam thrown at you as well. Worse than the 1999 popups.
Yes they can emulate a whole OS. It's browsing at what they suck. Seconds wasted for TLS handshake, seconds wasted on downloading MB of JS, then realizing content is missing, another TLS handshake, another download, then some ads, some tracking scripts and finaly the page is displayed. Of course if you don't use Chrome or Google DNS you will be penalized. And don't forget to accept all cookies.
The few hundred milliseconds is worth it to stop someone sniffing my browsing details on an open network.
I can remember browsing the web using 56k. That was slow.
Well, these at least are fixable. The web is unusable without uBlock Origin and NoScript.
uBO gives a lot of flexibility and a traditional "no js" is absolutely possible (see https://github.com/uBlockOrigin/uBlock-issues/wiki/Blocking-...). You then select which source is authorized to push crap at your browser
No knock on uBo! Just explaining why I stick with NoScript :)
I ignored this, thanks!
I agree with your point, but I have to point out that Figma is mostly built on C++/WASM.
Also, fronted parts that operate the DOM are necessarily JS.
(Sadly, my workflow is heavily dependent on multiple labels per email, and no IMAP client seems to work acceptably in that situation.)
[0] https://notmuchmail.org/
[1] https://add0n.com/notmuch-email-client.html
Incidentally, mightyapp.com was founded to make browsing less resource-intensive by doing the rendering in the cloud. They highlight Figma and Miro (among others) prominently, so it seems others have similar experiences with Figma.
Devs not bothering to put element dimensions in the markup, or otherwise not making the dimensions available/calculable at page load.
So, if you reduce your page's loading time from, say, 1 second to 400 millis, you won't gain any significant number of users.
On the other hand, if you use those extra 600 millis to hold an auction for ad space on the page, you make more money immediately.
Therefore we can expect any for-profit site to load only fast enough to keep users from giving up (even if they feel frustrated or whatever), and no faster than that.
to the current crop of web designers/developers/etc, they literally may not remember a time when the web was a lot faster.
they don't remember the days of websites loading just fine (ok, most of the time..) over a 56k modem. they've grown up with the web the way it is, javascript and all.
that's what I gather, anyway.
This actually means that you love C++. But HN crowd will hate that lol.
https://www.figma.com/blog/building-a-professional-design-to...
Wow, it really does feel like using an old browser.
(Safari Version 15.2 (17612.3.6.1.6))
But yes, Safari is slow in implementing new features a bit and it does get annoying from time to time. But it's nowhere near the IE hell from ~2000 - 2008.
Then you bring macOS into play, and the way Safari on mobile syncs with Safari on desktop is really nice. Password sharing in particular is great, so you end up getting sucked in to Safari!
Most of the time I think it is just dev laziness.
Can anyone tell us which web feature is blocking the compatibility with Safari?
I for one do not look back.
After thinking, “no, it wasn’t _this_ slow back in the day,” I scroll down to see..
Sorry, OldWeb.today can not run in this emulator in your current browser.
Maybe hide the spinny circle thingy if you’re smart enough to know you’re not going to load anyway.
Thank you very much whoever did this - my inner self is really thankful.
I chose geocities as of 1996. It booted mac os 7. Then IE threw an error at me. Then I entered google.com to the URL bar out of curiosity, thinking it would load actual modern google. Only to be greeted with "Google Search Engine Prototype". Lol.