Hacker News new | ask | show | jobs
by bigyikes 1366 days ago
What you call a “mistake” is actually just having empathy for the user. User experience is king.

It’s not tech debt, it’s a feature.

4 comments

Yeah... I've put well over 10k hours into writing FOSS and consistently encounter this attitude there, too. I never imagined we could get this far tolerating such frequent contempt for both end-users and their advocates, such as interface designers. If your PR poses even a theoretical future inconvenience to developers, good luck getting it merged, regardless of the user benefit. Until this changes, user-facing open source alternatives will always be alternatives rather than the standard.
Boxed software Microsoft: if it breaks, then Microsoft is wrong.

FOSS and new Microsoft: if it breaks, have you tried pulling the latest? Yes? Then it's a bug in your expectations.

Not just devs and end users, but also devs and other devs. Not in rejecting pulls but changing API's like renaming functions, removing functions, swapping argument positions, changing the complete workflow of a library, etc... without care. The amount of breakage in the OSS world is just ridiculous.

I'm probably biased because I deal with a lot of Javascript where this sort of behaviour is rampant.

> I'm probably biased because I deal with a lot of Javascript where this sort of behaviour is rampant.

It's overall. The size of libraries in a linux system [1] has grown steadily over the years wirhout bringing anything useful.

The QT and GTK libraries are the perfect example of incompatibilities and bad design.

[1] Slackware which did not changed much in term of offered programs over the years.

It’s easy to optimize for developer convenience when you aren’t getting paid to do the work… arguably it’s the only way non-profit open source software can progress at all on average. The tails are heavy, though.
If you write the program for yourself, yes. Why then bother with an OSS licence ?
Surely it’s both? Some technical debt can be okay just like some personal or corporate debt can be okay.
Every piece of code you write automatically becomes code you have to maintain. It’s tech debt.
I agree that it's empathy for the user, but I'd say it's a workaround, and as such it's tech debt.
A workaround does not necessitate tech debt. "Workaround" is a conflated term - it basically implies something works differently than one might expect, which is subjective. Anyway, what is the alternative? Saying "that's not my problem"? Users don't care about who is technically at fault, they care about a well functioning product.
The alternative is to let it break and force developers to update their software.

Doing that allowed Apple to not have to maintain 32 bit compatibility which allowed Apple to make the operating system smaller (all shared libraries have to be duplicated including in memory) and allowed Apple to completely remove 32 bit support in the later ARM processors.

…and forced me to stop using some favorite iOS apps because they didn’t get updated — in one case because the developer had died. Windows is certainly more user-friendly in that respect.
So Apple should have kept 32 bit support in the chip and processor forever?

Libraries being able to consume less memory and being able to either reduce the die size or add more features is a direct consumer benefit.

Yes, absolutely. Memory is cheap, software is valuable, forcing everyone to churn constantly to satisfy some sort of aesthetic is a massive waste of resources.
"Tech debt" is doing things quickly now with the price that you have to clean up (i.e. invest more time) later, hence the word "debt". This is sometimes a good trade-off, just as financial debt is. Not everything that looks a bit ugly is "tech debt".

And yes, it's ugly, but reality is ugly so we have to deal with it.