Anon does some online shopping
-
In the 90s, a lot of programmers spent a lot of time carefully optimizing everything, on the theory that every CPU cycle counted. And in the decades since, it's gotten easier than ever to write software, but the craft of writing great software has stalled compared to the ease of writing mediocre software. "Why shouldn't we block on a call to a remote service? Computers are so fast these days"
The flip side of that is entire classes of bugs being removed from modern software.
The differences are primarily languages. A GUI in the 90s was likely programmed with C/C++. Increasingly, it's now done in languages that have complex runtime environments like dotnet, or what is effectively a browser tab written with browser languages.
Those C/C++ programs almost always had buffer overflows. Which were taken off of the OWASP Top 10 back in 2007, meaning the industry no longer considers it a primary threat. This should be considered a huge success. Related issues, like dynamic memory mismanagement, are also almost gone.
There are ways to take care of buffer overflows without languages in complex managed runtimes, such as what Go and Rust do. You can have the compiler produce ASM that does array bounds checking every time while only being a smidge slower than C/C++. With SSDs all but removing the excuse that disk IO is the limiting factor, this is increasingly the way to go.
The industry had good reasons to use complex runtimes, though some of the reasons are now changing.
Oh, and look at what old games did to optimize things, too. The Minus World glitch in Super Mario Bros--rooted in uninitialized values of a data structure that needed to be a consistent shape--would be unlikely to happen if it were written in Python, and almost certainly wouldn't happen in Rust. Optimizations tend to make bugs all their own.
-
And everything is SO FUCKING SLOW. I swear my old Celeron 300A at 500mhz running Windows 98 and SUSE Linux was super responsive. Everything you clicked just responded right away, everything felt smooth and snappy. Chatting with people over the internet using ICQ or MSN was basically instant, all the windows opened instantly, typing had zero latency and sending messages was instant.
My current Ryzen 5950X is not only a billion times faster, it also has 16 times the number of cores. I have hundreds of times the RAM as I had HDD capacity on that old system. Yet everything is slower, typing has latency, starting up Teams takes 5 minutes. Doing anything is slow, everything has latency and you need to wait for things to finish loading and rendering unless you want everything to mess up and you'd have to wait even more.
Oh my fuck, my work has a website and I hate it. There are multiple fields to fill out on a page, and every time you fill one field, the entire page automatically refreshes. I can’t just tab from field to field and fill things out - I have to fill out a field, wait for the refresh, click in the next field, fill it out, wait for the refresh, click in the next field…. until I’m done.
Next, for some reason everything is a floating window and there is no scroll outside of it. Which means that if I click the page wrong, the floating window moves, and I can’t move it back. I lose all progress because the only way to fix it is to refresh the site.
Then there’s the speed. At the end of the day, when everyone is using this site, it gets extremely slow. You’d think this would be a predictable issue that the company could be proactive about, yet every day, right when we’re itching the most to go home, every one of us experiences the dreaded lag. I hadn’t seen lag this bad since I played Sims 2 on an old computer.
-
Yeah.... I tried that for a while. You don't go very far on modern internet with JS disabled
Use noscript and whitelist urls as needed. Pages that dont need javascript dont get to use it, and for pages that do need it, you can make sure it only runs exactly what it needs to.
-
I think it's interesting that in 2005, the internet had a ton of popups and scammy ads that told you "you just won a free iPod!" and everyone knew that was a thing. There was even a gag about it in Scary Movie 3 (2003):
Yet you don't hear people complain about that as much today. It's like so much of the internet has been cordoned off into walled gardens that most users don't see pages out in the open.
I read an interesting article about that: https://thehistoryoftheweb.com/ads/
-
Sounds like they need a computer newer than 2012.
Sounds like developers need computers from before 2012
-
This post did not contain any content.
Was the cookies popup really 3 years ago already?
-
Use Librewolf + Ublock origin with cookie popups filter turned on and medium mode on when needed.
Ublock origin is the only way to fly these days. I've walked a few family members through using the Element Zapper and explained how the plugin identifies which domain is loading the content and why websites do that now. They've all taken to it pretty well.
Having a default backup browser for sites that give too much grief when they can't get all of their spyware to work correctly definitely keeps me sane and made adoption less stressful for the uninitiated. I give myself three or four tries to make a shitty site work before either abandoning the site and trying an alternative or, if it's important and necessary, loading it raw in the backup browser.
+1 for LibreWolf too. Dope project.
-
Was the cookies popup really 3 years ago already?
They've been around for over half a decade.
-
Yeah, idk. 2005 internet sucked in a lot of ways too. Nostalgia doing a lot of work here
Please provide further reading to prove your point
-
The X stands for eXploitation.
Dark design patterns
-
Open browser
Browser demands updates
All extensions update simultaneously. Each opens its own tab to proudly announce bug fixes for bugs you never noticed.
Close ten tabs you didn’t open
Miss one. It autoplays a video ad.
Type in search bar. Autocomplete offers suggestions that are 5 years old, NSFW, or both.
Search for a product. Top results: Ads. Sidebar: Ads. Bottom: Ads. An actual organic result is wedged between an ad and a newsletter signup modal.
Click real-looking result. Redirected to a shady dropshipper site.
Back button doesn't work. It reloads the same scam page five times. You lose the original tab somewhere in a pile of redirects.
Click Amazon link. It’s a new seller with the business name “USB_Cable_Amazon_Partner_Official.” 13,000 reviews. All 5 stars.
Try to read reviews. Most are for the wrong product. Many are AI-generated gibberish. The rest complain about shipping.
Add to cart. You are not logged in.
Log in.
CAPTCHA challenge: Pick all the traffic lights. Traffic lights are 1 pixel wide. One is technically a lamppost. Verification failed.
2 factor authentication push. By the time you get the authenticator open, the session expired. Start over.
Try to close browser. Are you sure you want to close 37 tabs?”
Yes. It crashes.
Reopens all 37 tabs next launch.
Give up and use your phone
4 popups, fingerprint required, and every link jumps when the page loads because of delayed ad banners.
App store ad appears for the site you’re already on
Clicking "x" opens the ad anyway.
You close the phone browser
Go outside
Get a push notification: “You left items in your cart.”
I once responded to one of those "you have items in your cart" emails that I received like a mere half hour after finishing browsing with a "fuck off", and a short while later somebody responded and said some things and ended with "same to you too"
I immediately replied and said oh wow a real person replied, don't take it personally, it was directed at the automatic message.
they started berating me and telling me that I should just unsubscribe if I don't want the emails (that I never fucking subscribed to in the first place???), and then deleted my account and banned me from the store, it seems. I tried to buy something over half a year later, but it was declined without reason, and support told me it was "flagged for fraud" and didn't elaborate
-
This post did not contain any content.
Missed the part where
Shipping is 6.95
Close tab
Sigh, open amazon -
This post did not contain any content.
This is the reason why I had a long and bloody fight regarding the homepage of the company I work at. And I won.
Management wanted a new homepage, marketing wanted the homepage to be - and this is a citation - "Emotional!!! And we want ENGAGEMENT!!!" (For context: We are building industrial machinery).
Marketing got an external offer (behind my back) and a mockup of the homepage based on React with animations and an dynamic background which turned every PC we looked at it with into a space heater. And they wanted to spend > 15 k € on it.
I - as something yanks would call a CTO - said no.
Everything turned quiet "Emotional!!!" for a couple of months, but in the end I won with the argument that we are building FUCKING BORING INDUSTRIAL MACHINERY, our costumers seldom change and if so, they are also from some big boring industrial company who already know us because we are in this business since Ugh, the first CEO chiseled the first iteration of our landmark product with a flintstone in 15000 BC.
The rebuild of the homepage resulted in something that is quiet nice looking... but that can also work perfectly fine in fucking DILLO!
-
This post did not contain any content.
Sad part about this is it's not comic hyperbole. It's just literally an average online experience.
-
This is the reason why I had a long and bloody fight regarding the homepage of the company I work at. And I won.
Management wanted a new homepage, marketing wanted the homepage to be - and this is a citation - "Emotional!!! And we want ENGAGEMENT!!!" (For context: We are building industrial machinery).
Marketing got an external offer (behind my back) and a mockup of the homepage based on React with animations and an dynamic background which turned every PC we looked at it with into a space heater. And they wanted to spend > 15 k € on it.
I - as something yanks would call a CTO - said no.
Everything turned quiet "Emotional!!!" for a couple of months, but in the end I won with the argument that we are building FUCKING BORING INDUSTRIAL MACHINERY, our costumers seldom change and if so, they are also from some big boring industrial company who already know us because we are in this business since Ugh, the first CEO chiseled the first iteration of our landmark product with a flintstone in 15000 BC.
The rebuild of the homepage resulted in something that is quiet nice looking... but that can also work perfectly fine in fucking DILLO!
"Works fine in Dillo" is a golden endorsement.
-
I once responded to one of those "you have items in your cart" emails that I received like a mere half hour after finishing browsing with a "fuck off", and a short while later somebody responded and said some things and ended with "same to you too"
I immediately replied and said oh wow a real person replied, don't take it personally, it was directed at the automatic message.
they started berating me and telling me that I should just unsubscribe if I don't want the emails (that I never fucking subscribed to in the first place???), and then deleted my account and banned me from the store, it seems. I tried to buy something over half a year later, but it was declined without reason, and support told me it was "flagged for fraud" and didn't elaborate
Oh fuck them
-
Sad part about this is it's not comic hyperbole. It's just literally an average online experience.
I came here to say this. Often times the pop ups are so bad that I just leave the site. Its almost never worth it
-
This post did not contain any content.wrote last edited by [email protected]
Theres a webpage someone made thats like a visual example of this but I forgot what it's called (maybe "I look at a webpage in 20XX" ) Anyone know it ?
-
This post did not contain any content.
should of used a rust based browser
-
The flip side of that is entire classes of bugs being removed from modern software.
The differences are primarily languages. A GUI in the 90s was likely programmed with C/C++. Increasingly, it's now done in languages that have complex runtime environments like dotnet, or what is effectively a browser tab written with browser languages.
Those C/C++ programs almost always had buffer overflows. Which were taken off of the OWASP Top 10 back in 2007, meaning the industry no longer considers it a primary threat. This should be considered a huge success. Related issues, like dynamic memory mismanagement, are also almost gone.
There are ways to take care of buffer overflows without languages in complex managed runtimes, such as what Go and Rust do. You can have the compiler produce ASM that does array bounds checking every time while only being a smidge slower than C/C++. With SSDs all but removing the excuse that disk IO is the limiting factor, this is increasingly the way to go.
The industry had good reasons to use complex runtimes, though some of the reasons are now changing.
Oh, and look at what old games did to optimize things, too. The Minus World glitch in Super Mario Bros--rooted in uninitialized values of a data structure that needed to be a consistent shape--would be unlikely to happen if it were written in Python, and almost certainly wouldn't happen in Rust. Optimizations tend to make bugs all their own.
While there's an overhead to safer runtime environments, I wouldn't put much blame there. I feel like "back in the day" when something was inefficient you noticed it quicker because it had a much larger impact, windows would stop updating, the mouse would get laggy, music would start stuttering. These days you can take up 99% of the CPU time and the system will still chug along without any of those issues showing.
I remember early Twitter had a "famous" performance issue, where the sticky heading bar would slow systems down, because they were re-scanning the entire page DOM on every scroll operation to find and adjust the header, rather than just caching a reference to it. Meanwhile yesterday I read an article about the evolution of the preferences UI in Apple OSs, that showed them off by running each individual version of said OS in VMs embedded within the page. It wasn't snappy, but it didn't have the "entire system slows down and stops responding" issues you saw a decade or so ago.
Basically, devs aren't being punished (by tooling) for being inefficient, so they don't notice when they are, and newer devs never realise they need to.