|
|
|
|
|
by nybble41
1473 days ago
|
|
> That said, open source have this edge that if it's just too obsolete for the dependencies, you can hope someone would patch it if it's popular enough. It would be harder to patch a proprietary app. IMHO this understates the difference, severely. The open source app can be maintained by the community for as long as it has a community. That includes not just dealing with dependency obsolescence but also new features, redesign, porting to new platforms… anything that would have been handled by the original team. The proprietary app, on the other hand, will be near-impossible to patch for even the most trivial of changes without the original source code or build environment—and let's not forget that distributing the modified version would be illegal; at best you might get instructions for patching your own copy. And of course there won't be any growth in the user community since there is no (legal) source for new copies. Existing users may be able to struggle along on their own for a while but this is ultimately a dead end without support from the copyright holder. |
|
My point was mainly in the context of Electron desktop apps, an abandoned, proprietary Electron app would probably run for at least 5 years * without touching it after it's abandoned. Further from that point patching it so it works would not be that hard. On the other hand I imagine an unmaintained C++ desktop app could decay pretty fast if it depends on some external lib so here a proprietary app could indeed be very hard or next to impossible to patch.
* I did not consider security patches though, if an Electron app processes potentially untrusted third party files and / or connects to external services, it may require security patches and that would be also hard / impossible to patch, I agree here - though updating its Electron binary could go a long way with security, which is not that hard.
Edit: Ok, I guess there may be issues with Electron too. If Electron binary is kept up to date, Electron deprecates some APIs regularly and that could break it. So it's either that or running a very old Electron instance - which may or may not be fine, depending on the app and how it's used.