Hacker News new | ask | show | jobs
by cdrini 1474 days ago
Most of your points also apply to open source software, and aren't strict requirements for proprietary software.

- discontinued: Atom just got discontinued. It's open source. Photoshop on the other hand has withstood the test of time.

- Audacity's 3.0 update removed a feature I relied on. I wasn't forced to update to it, sure, but proprietary software doesn't force updates either.

- Being able to fix your own bugs is a great part of open source! But not something most professional software developers really expect to do for their IDE.

- open source formats are probably more resilient than closed source, but I would argue many proprietary formats are also pretty resilient. Code is also based on plain text at it's core, like latex, so it's always going to be pretty resilient.

- you'll never have a guarantee that a tool you invest time in or money in will be the leading tool in five years.

7 comments

> discontinued: Atom just got discontinued. It's open source. Photoshop on the other hand has withstood the test of time.

But if I want to use Atom I can fork it, or keep the source around. It doesn't go away from my environment until _I_ say it does. And Photoshop has become more and more user hostile over time.

> Audacity's 3.0 update removed a feature I relied on. I wasn't forced to update to it, sure, but proprietary software doesn't force updates either.

It is impossible for libre software to force updates, and quite possible for proprietary software to do so. It's part of what pushed me away from Windows in the first place, and other apps (especially web, but also other stuff) also do so.

> Being able to fix your own bugs is a great part of open source! But not something most professional software developers really expect to do for their IDE.

While it isn't expected, it's definitely a nice-to-have.

> open source formats are probably more resilient than closed source, but I would argue many proprietary formats are also pretty resilient. Code is also based on plain text at it's core, like latex, so it's always going to be pretty resilient.

But with libre software, I don't have to wonder. Even if a project uses an obtuse, obfuscated binary format I know I'll still be able to read it (with a little prep work). With code this is less of an issue - as you note - but you did mention Photoshop earlier, so I'm assuming we're talking about software in general.

> you'll never have a guarantee that a tool you invest time in or money in will be the leading tool in five years.

I don't need it to he leading, I need it to be around and functional. Pretty confident Emacs/(n)vim will be here a couple decades longer at least. I believe this was GP's point - that it's better to worry about what will work best in 10 years, not what's standard now.

> But if I want to use Atom I can fork it, or keep the source around. It doesn't go away from my environment until _I_ say it does.

This is technically true, but in 99% of the cases is not realistically true. Most developers who use said FOSS external dependency do not want to actively maintain it themselves.

FOSS supporters always say this as if we live in a reality where knowledge and time are infinite. Yes, the licenses say you can legally do things, but they are hardly ever realistic.
Well, you don't do the maintenance yourself, you get some bored person to do it-- the important thing is they're not on a payroll and the result isn't someone's IP. Right now this strategy probably seems insane, because we are all so well compensated that the opportunity cost of working on OSS for free is massive, but sometimes you get 'lucky' and a software downturn frees up some engineering hours for further pro bono work on OSS. Pretty sure that has happened several times already, might happen again soon.
For the atom case, it seems some users are going to continue to maintain it: https://github.com/atom-community/atom/
Might be more interesting to follow the next editor the author is working on.

https://zed.dev/

“It is impossible for libre software to force updates”

This isn’t even close to being true

If it did you'd just build a version with the offensive code removed?
If you have the skills. The large majority of humanity does not
That's like saying that hardware should be only repairable by vendor because majority of humanity doesn't have skills to fix it themselves.
That's not even close to what they said.

They said, you can do it "if you have the skills" and that "the large majority of humanity does not" have these skills.

Ah yes. I have the time and the knowledge to "just" remove that code and "just" build that version. When even the simplest libraries can't usually be built using the instructions the authors leave for them (if they even do that)
You don't have to remove the code, you can just pin the version you're using and go for quite some time (sensitive to security context). Most builds are pretty easy to do with 5 minutes of following instructions or whatever build tool. I did this exactly thing with termux (an app I relied on) when they removed sending sms due to a google rule change.

Also, you only have to do it if you're the only one left. Chances are very good that there are others in the community that may step up wholly or in part. Sure the risk is non-zero, but the point of freedom is that you could if it came to that.

Maybe you don't, but somebody else does.
Any evidence to back that up?
I think Gnome / GTK is a good example. Famously, the Budgie Desktop Environment will have to be rewritten on top of Enlightenment because they don't like the GTK 4 changes. So now they're forced to go to a different widget system. [1]

[1] https://joshuastrobl.com/2021/09/14/building-an-alternative-...

Your use of "forced" is interesting, because to me that doesn't sound like "force" at all, rather a "we don't like this thing so we're moving" which is a free choice for technical reasons.

Force to me is like what Amazon does with kindles. If it connects to the internet, it will update to the latest version whether you want it to or not. If you don't connect it to the internet, you can't use it.

Its a technical decision. Nobody is forcing them to do anything.
Sure, that's a good example of something else, but do you have any examples of any forced updates?
> - discontinued: Atom just got discontinued. It's open source. Photoshop on the other hand has withstood the test of time.

If you like Atom and still want to use it, you can fix potential bugs yourself and make it evolve, you can't with a proprietary one. You can also fork if project take a different direction that you would like. When gnome3 came up, some people who preferred the gnome2 desktop metaphor started mate and cinnamon, the former forking gnome 2 to port it to gtk-3 while the later forked gnome3 to adapt it to work more like gnome2.

> - you'll never have a guarantee that a tool you invest time in or money in will be the leading tool in five years.

Nobody has to use the leading tool. My preferred IDE is neovim which is kind of a niche project. While they are the leaders there is no reason for me to use Visual Studio or Visual Studio Code if I am not comfortable on them.

> If you like Atom and still want to use it, you can fix potential bugs yourself and make it evolve...

If "you" is "a company or sponsored non-profit with sufficient development resources to dedicate some to taking over and evolving the editor," sure. If "you" is me, and I suspect 99.99% of Atom users, this seems like a pretty unrealistic ask.

This isn't a criticism of the open source model, to be clear, but this has always struck me as one of the weaker arguments for it having an advantage over closed source models. There are certainly examples of successful forks and revivals, but there are also examples of projects that never got sufficient uptake to continue when the original developer moved on (e.g., the Ted RTF-based word processor), and probably many more projects that just seem to exist in a kind of limbo state, technically still developed but not really seeming to put much effort into keeping up with the world -- off the top of my head, Unix's JOE and JED editors and the famous native Mac editor TextMate, which arguably inspired a raft of later editors including Visual Studio Code. And in practice, closed source projects that get a sufficient level of usage are likely to stick around and keep being developed, too. There are always exceptions, but usually if something continues to be sufficiently popular -- which, in the closed source world, is roughly equivalent to "profitable" -- it's going to keep being supported.

> If "you" is "a company or sponsored non-profit with sufficient development resources to dedicate some to taking over and evolving the editor," sure. If "you" is me, and I suspect 99.99% of Atom users, this seems like a pretty unrealistic ask.

I've used several projects (mostly libraries) that got abandoned, and only two I had to adopt and maintain myself, and those were pretty low maintenance. If there is a community around it, somebody (who isn't you) might step up, so you don't have to do it.

The original point was how much time and effort is spent to save a pittance in the grand scheme of things. You're confirming how much effort is spent by rich engineers not to pay money. I know there is a principle, but in the end it's still so much effort.
There is nowhere mention about money in that article.
> Most of your points also apply to open source software, and aren't strict requirements for proprietary software.

Except I can still use discontinued open source software like Atom.

Try installing an older version of an app on an old iPhone. The app store won't let you. You might be able to jailbreak the phone and track down an older version of the app, but it's a pain and Apple makes it as difficult as they can for you instead of just letting you download the version you want from their store.

> Except I can still use discontinued open source software like Atom.

The same thing can be said about desktop proprietary software, so long as it does not rely on a cloud service to function.

> Try installing an older version of an app on an old iPhone. The app store won't let you. You might be able to jailbreak the phone and track down an older version of the app, but it's a pain and Apple makes it as difficult as they can for you instead of just letting you download the version you want from their store.

iOS is an extreme situation, but we are talking about desktop apps here, desktop OSes don't have these kinds of restrictions.

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. That may not matter as much in the context of Electron apps as the web platform is pretty stable. Not sure about the Java thing Jetbrains IDEs are running on though.

> The same thing can be said about desktop proprietary software, so long as it does not rely on a cloud service to function.

Please, launch 32-bit program on recent versions of Mac OS.

This is why I don’t, nor will ever use a Mac. Backwards compatibility matters.
> 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.

Surely that's a good point and it would definitely help, but just because something is open source does not necessarily mean that it will stay alive in the way you describe it - especially redesign or new features. Patches is the best the user of an abandoned app could hope for.

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.

> … just because something is open source does not necessarily mean that it will stay alive in the way you describe it - especially redesign or new features.

True, being open source doesn't guarantee that the app will be maintained. It does, however, provide the legal framework to make it possible. If the app has an active user base then it's likely that someone would step up to take over the development, and the open source nature of the project means that the new maintainers are not starting at a significant disadvantage.

> 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.

Okay, so you're assuming an app distributed mostly in source form to begin with. That's fair, but an Electron app can be minified or obfuscated (and in the case of a proprietary app, probably would be) so it wouldn't necessarily be easier to work with than a compiled binary. You also still have the copyright issues which would make it difficult to collaborate on any patches.

I'll my personal experience as someone who still prefers many proprietary softwares over open source (assuming the price is fair and the features are much much better):

- Photoshop is a market leader so definitely an exception. I personally miss apps like "Made with Mischief" which had unique features that I loved that are still not yet replicated but have completely disappeared and the only way to use them is to find shady places giving out cracked versions (even when I have a license).

- If there's enough demand for a feature, you can fork and bring it back. Waterfox is a popular example of push-back to some of Mozilla decisions (like killing XUL) and is still maintained and loved.

- I love thinkering with formats, but unless you rely on the reverse engineering community at large picking your favorite format apart, you're not gonna get far without a lot of background. I use Affinity Photo/Designer, two popular alternatives to Photoshop/Illustrator, which use their afphoto/afdesign formats and there's no published spec about them. If I ever wanted to do a tool that deals with them I'd have no starting point.

> discontinued: Atom just got discontinued. It's open source. Photoshop on the other hand has withstood the test of time.

Photoshop has not withstood the test of time for me. I did a lot of Photoshop a few decades ago. I can't afford > $1000 per year for a hobby. My old Photoshop files are dead, for all intents and purposes.

I do occasionally use decades-old, unmaintained open-source tools to open old files.

> Audacity's 3.0 update removed a feature I relied on. I wasn't forced to update to it, sure, but proprietary software doesn't force updates either.

Yes, it does. Cloud-based, you have no choice. Installed, increasingly, you have no choice either, since activation servers get taken down.

> Being able to fix your own bugs is a great part of open source! But not something most professional software developers really expect to do for their IDE.

It's a check-and-balance. I fix issues maybe in 0.0001% of the tools I use, but when I do, it's really important. With proprietary, you can work 70 hours per week for five years, and invest your blood and soul into a project, and be left hanging at the end, because you're reliant on someone else.

With open-source, you bite the bullet, fix it yourself, and keep chugging along.

> you'll never have a guarantee that a tool you invest time in or money in will be the leading tool in five years.

My experience is that "leading tool" is way oversold. The difference between JQuery a decade ago and React today is important, but even a huge difference like that won't make-or-break a business or a project. Technology is easy. If I needed to write my stuff in FORTRAN, I'd be less productive, but in the end, I'd learn FORTRAN and get the job done.

It's not a reason I'd pick proprietary over open-source.

What is important is all the other stuff. If you've bought something from Oracle or Google -- who are famous for this -- and they discontinue your product or ramp up licensing costings 100x once you've built your infrastructure around them, that CAN and WILL break a business (or a personal project).

Startups have a short half-life. Big businesses have a longer one ("No one got fired for buying IBM"). Open-source is eternal.

Legacy is important. If you don't believe me, have a look at all the FORTRAN and COBOL code still running on old mainframes. If you don't take long-term into account, you're unlikely to do anything lasting.

> I can't afford > $1000 per year for a hobby.

In the UK a year's license for Photoshop, Lightroom and Bridge is approx £110.

That doesn't help him if he doesn't live in the UK though?
No but I can't believe US prices are almost ten times more expensive. If they are, he has a point
> I did a lot of Photoshop a few decades ago. I can't afford > $1000 per year for a hobby.

Adobe's Photographer Plan, which includes Photoshop and Lightroom, is $9.99 a month, $119 a year. Not sure where "over a thousand dollars per year" comes from.

CS suite subscription. I also do illustrations, edit videos, do page layout, etc.

I used to have Photoshop, PageMaker (then Quark), etc.

Price is $55/mo, which comes out to $660 per year. Apparently, I misrecalled the price.

But I can't afford $660/year either, for a hobby.

lots of modern proprietary software does require a license to to continue to use and cloud version are updated all the time without any input at all for you.
Software like Photoshop exist because of software patents and lawyers, not because they legitimately make the best product. If we stripped their parents and any ability to enforce IP we would have an OS replacement tomorrow.