3 ms·
> Software is never "finished" the way a building is finished. On the contrary, it absolutely can be, in both directions. Software can absolutely be "feature
by ben_w 10mo ago
> Software is never "finished" the way a building is finished.
On the contrary, it absolutely can be, in both directions.
Software can absolutely be "feature complete", and in the case of many products it would have been an improvement to say "we're done now" and switch from developing new features to maintenance-only mode, dealing only with API changes and new laws.
Some examples of where it should be "done" by some point include smart TVs and smart lightbulbs. I'm also old enough to remember the era of games where patches were rare and small, unlike the current experience of having to wait for Steam to install updates almost every day, and only then will allow me to see if the game I want to play and which worked yesterday now has a mandatory update that I also have to wait for (which is less often but still often enough to be annoying).
Even with MacOS, while I absolutely do appreciate all the behind the scenes stuff regarding security and so on, the last time I appreciated what they did with the UI in an update, the version branding scheme was still to name releases after cats.
Even as an iOS developer, although I can see what they're trying to do with SwiftUI, I find it worse than UIKit in basically every regard because the "magic" keeps not working and the "problem" it tried to solve was never (for me) a problem; with concurrency, they went from GCD to Combine which IMO was a step back, before going to async/await.
"Too many features" is also a problem for the developers, as it leads to them duplicating work. For example, the background sounds feature on my phone and the one on my HomePod each has its own list of sounds, they're not just two interfaces to the same underlying app even though the HomePod's OS is a fork of tvOS which is a fork of iOS.
(The other way around, the home I grew up in is now about twice the size it was when my parents bought it around 1970, judging from the Google areal view).
- dzonga 10mo agowe should get to the state of software being finished. then for live games etc -- release servers maybe after 7 years so people can run their own servers for games I think we can all agree 7 years is a good enough timeline for games to have milked all the revenue they need. 37Signals still have early versions of Basecamp running Jetbrains does the same thing with perpetual licenses etc SAAS does not mean software can't be finished
- jmiskovic 10mo agoI wish this was true. Unfortunately when the software is done, the product lifetime comes to a close soon after. Everything around the product changes and the software needs to change to keep up. Smart lightbulbs need apps to keep working and you get kicked out of app stores if you don't keep up with never-ending churn Apple and Google imposes on you. The only way to run older games is to use emulators and other 3rd party effort, that also needs to be continually updated. When you claim that any piece of software is done and completed, you've only externalized the effort required to keep it useful. I absolutely agree with your pushback against feature creep. That is unfortunately a reflection of internal corporation value system, while the successful open source projects often know where to draw the line.