← Back to context

Comment by guhcampos

11 hours ago

This is more widespread than we like to admit.

Developers writing software on 64GB M4 Macs often don't realize the performance bottlenecks of the software they write.

Developers working over 1gbps Internet connections often don't realize the data gluttony of the software they write.

Developers writing services over unlimited cloud budgets often don't realize the resource wastes into which their software incurrs.

And to extend this to society in general.

Rich people with nice things often alienate themselves from the reality of the majority of people in the World.

You can nerf network performance in the browser devtools or underprovision a VM relatively easily on these machines. People sometimes choose not to and others are ignorant. Most of the time, it's just the case that they are dealing with too many things that are vague making it difficult to prioritize seemingly less important things.

A number of times I've had to have a framing discussion with a dev that eventually gets to me asking "what kind of computer do your (grand)parents use? How might X perform there" around some customer complaint. Other times, I've heard devs comment negatively after the holidays when they've tried their product on a family computer.

  • > Other times, I've heard devs comment negatively after the holidays when they've tried their product on a family computer.

    I worked for a popular company and went to visit family during the winter holidays. I couldn't believe how many commercials there were for said company's hot consumer product (I haven't had cable or over-air television since well before streaming was a thing, so this was a new experience in the previous five years).

    I concluded that if I had cable and didn't work for the company, I'd hate them due to the bajillion loud ads. My family didn't seem to notice. They tuned out all the commercials, as did a friend when I was at his place around a similar time

    All it takes is a change in perspective to see something in an entirely new light.

    • I’ve never had TV, and have used ad blockers as long as they’ve been a thing. (Until 1⅓ years ago I even lived in a rural area where the closest billboard of any description was 40km away, and the second-closest 100km away.) On very odd occasions, I would get exposed to a television, and what I find uncomfortable at the best of times (notably: how do they cut so frequently!?) becomes a wretched experience as soon as it gets to ads, which it does with mindboggling frequency. I’m confident that if I tried actually watching that frenetic, oversaturated, noisy mess on someone’s gigantic, far-too-bright TV, I would be sick to the stomach and head within a few minutes.

  • More to the point; colour and font rendering are typically "perception" questions and very hard to measure in a deployed system without introducing a significant out of band element.

    Network performance can be trivially measured in your users; and most latency/performance/bandwidth issues can be identified clearly.

  • Chrome devtools allow you to simulate low network and CPU performance, but I'm not aware of any setting that gives you pixelated text and washed-out colors. Maybe that will make a useful plugin, if you can accurately reproduce what Microsoft ClearType does at 96dpi!

> Developers working over 1gbps Internet connections often don't realize the data gluttony of the software they write.

As a developer and AirBnB owner, what I’ve also noticed is the gluttony of the toolchain as well. I’ve had complaints about a 500/30 connection from remote working devs (very clear from the details they give) which is the fastest you can get for much of the metro I am in.

At home I can get up to 5/5 on fiber because we’re in a special permitting corridor and AT&T can basically do whatever they want with their fiber using an on old discontinued sewer run as their conduit.

I stick to the 1/1 and get 1.25 for “free” since we’re so over-provisioned. The fastest Xfinity provides in the same area as my AirBnB is an unreliable 230/20 which means my “free” excess bandwidth is higher than what many people near me can pay for.

I expect as a result of all this, developers on very fast connections end up having enough layers of corporate VPN, poorly optimized pipelines, a lot of dependency on external servers, etc that by the time you’re connected to work your 1/1 connection is about 300/300 (at least mine is) so the expectation is silently set that very fast internet will exist for on-Corp survival and that the off-corp experience is what others have.

  • OT, but leaving the zeros on those gigabit numbers makes this a lot less work to understand, at first I thought maybe you were in mbps throughout.

  • Not only bandwidth but also latency can vary dramatically depending on where you are. Some of your guests might have been trying to connect to a VPN that tunnels all their traffic halfway around the world. That's much, much worse than getting a few hundred Mbps less bandwidth.

    • Yup. That isn’t helping them either. My corporate VPN, along with being rather bandwidth limited, is super laggy.

I wish we could have this as a permanent sticky for this website. It's out of control, especially with web stuff.

Spotify's webapp, for example, won't even work on my old computer, whereas YouTube and other things that you'd think would be more resource intensive work without any issue whatsoever.

I tend to use older hardware and feel like I’m constantly fighting this battle. It’s amazing thr hardware we have and I have to wait for dozens of seconds to start an app or load a web page.

  • Sometimes I run "old software" on the latest hardware it could support (think Windows 2000 on 2010s machines) and it is amazing how much it flies.

  • I would like to ask why even fight the battle?

    Philosophically I am with you, e-waste and consumerism are bad, but pragmatically it is not worth punishing yourself from a dollars and cents standpoint.

    You can jump on Amazon and buy a mini PC in the $300 range that’s got an 8 core 16 thread AMD 6800H CPU, 16GB RAM, 500GB SSD, basically a well above-average machine, with upgradable RAM and storage. $240 if you buy it on AliExpress.

    You can grab a MacBook Air M2 for around $500.

    Why suffer with slow hardware? Assuming that using a computer is at least somewhat important to your workflow.

At a "rich world" company that wants to make money, it's completely rational to not give a shit about "poor world" people that won't make you much money (relatively speaking) anyways. It basically only makes sense to milk the top leg of the K-shaped economy.

Conversely, it opens up a niche for "poor world" people to develop local solutions for local challenges, like mobile payments in India and some of Africa.

You need two "classes" of developers; which may be the exact same people - those who are on the fastest, biggest hardware money can buy - but you also need some time running on nearly the worst hardware you can find.

I agree, but developers don't have freedom over the product. Product managers are the ones who have a say, and even then, they are in a strict hierarchy, often ending at "shareholders". So, many of the wrongs come from the system itself. It's either systemic change (at least an upgrade), or no meaningful change.