@webology I don’t really think the phenomenon described there s planned obsolescence, it’s more like a hydraulic principle. Hardware gets better and suddenly there’s a lot more room to trade off performance for developer time / functionality, etc.

@webology The popularity of Python is in some sense a side-effect of this, since in a lot of cases it is a lot slower than compiled languages, but companies adopt it anyway because compute is less expensive than developer time.

@pganssle They feel like totally different things to me but I think both are true.

Python is slower than compiled language code.

Python 3.11 and 3.12 runs faster on my 10-year-old machines than Python 3.7 did or does.

When I upgrade to a new Linux or FreeBSD distro, my hardware doesn't run slower.

@pganssle I think iPhones are pretty wild in this category. The fasted machine on the planet today runs laughably slow after 3 or 4 years/OS upgrades. Many of which you are eventually forced into upgrading.

I honestly don't believe graphics and features like dark mode are taxing my two-year-old machine like everyone lets on.

I do believe that there is no financial incentive for Apple to spend engineering dollars on improving though.

Follow

@webology I think I missed the context that the inciting event was a video about upgrading your laptop. The examples seem to all be other sources of decay like websites shipping several megabytes of JS and assets to display simple text.

That said, my baseline assumption is that even in the laptop upgrade case I suspect that deliberate policies of making old stuff worse are rare. It feels like the facts that developer time is very expensive, it takes time to make things fast and to even test against old platforms and switching costs are high is enough to explain what’s happening.

@webology As much as I’d love it if people all believed that Apple was deliberately making their products worse, since hopefully that would mean people would stop buying Apple products, I think that something more like Hanlon’s razor is way more likely to be at work. If for no other reason than when people complain about the companies they’ve worked for, I never hear them say stuff like, “My boss told me to make everything slower on older platforms”, it’s more like, “When I tried testing on the older platforms I was told that it was not a priority and I should focus on building an AI cat emoji for iMessage even if that makes iPhone 11 processors set on fire.”

The high level folks making the decisions seem to just say, “Well, we’ll lose market share to Google if they get the AI kitty first, and if it makes someone’s iPhone 11 slow, I guess that sucks for them, but they’re not going to stop using an iPhone over it…”

@webology I will also note that Python 3.11 and 3.12 are getting faster, but the Python 3.x branch was notably slower than Python 2.7. I think at this point Python itself has good incentives to increase efficiency because industrial players like Microsoft, Bloomberg, etc, are heavily invested in it already and they can see meaningful reductions in their resource consumption by making improvements.

That said, part of the thing that has been a major sticking point for things like GIL removal is that there is some trade-off between single-threaded performance and multi-threaded performance. I could imagine a future regression (probably small, admittedly) in “older” workflows in favor of big improvements for newer multi-core performance.

@webology One last thing on this is that as someone whose allocated OSS maintenance time has gone down a lot lately, I’ve become acutely aware of how aggressive the bitrot is in the Python ecosystem. CPython itself has a 5-year window after which old versions are EOL. There are deprecations and removals in every version. Pretty much every time I go to touch dateutil I spend the whole time fixing up the various parts of the CI that are now raising warnings or errors, then I run out of time to do any meaningful work, and the cycle repeats after a few months.

I think this is a similar set of incentives. People who value stability just literally stop upgrading everything and self-host. Maintainers have limited attention and don’t want to allocate it to long-term support. As a result, you need to constantly be moving with the ecosystem.

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.