The reason we do open source and free software is to make life easier for everyone, including your job. It standardizes practices and prevents mudball codebases comprised of black box libraries and tools.
Not to mention that selling of extensions is like selling of game mods. There's tons of stolen code.
No, it is to maintain control. If you grow to depend on non-free software, you are at the mercy of its authors. Any benefits to quality are incidental.
I'm taking "paying for software" here to mean "commercial" vs "open source", or "incoming money oriented" vs "community building oriented" development.
Since, of course, you can also pay for open source, and there are free editions of proprietary commercial software, and foss can be sponsored by a big company who pays for 99% of the developer time through selling something else - so a distinction based on "paying" alone is not useful.
So, does open source/free vs proprietary/commercial make any difference with regards to quality?
It might not make in abstract, across the whole market, but in certain aspects and markets it does.
No open source DAW (audio/midi editor) or NLE (video editor) is even close to commercial ones, for example.
If you plotted features, maturity, stability, performance, etc. for foss and commercial versions of this types of product, you'd see a clear clustering of proprietary commercial software where you pay a lot for and free foss ones.
The same is true for many pro fields.
There are loads of domains where none of the free options are very good.
However, I can't help but take exception to Vivado and SOLIDWORKS being good software... While powerful, they are both incredibly buggy and prone to crashing if you so much as look at them wrong.
https://docs.scipy.org/doc/scipy/reference/generated/scipy.s...
https://www.mathworks.com/help/signal/ref/pwelch.html
Maybe my bias is showing, but I find the Matlab documentation to be superior. However, that is nothing compared the quality of the IDE which is critical when doing scientific compute. When I was re-evaluating our simulation environment at work, we looked at PyCharm. The plotting capabilities alone made it easy to stick with Matlab, even at the orders of magnitude higher cost.
N.B. This is my experience in an Optical Communications R&D environment.
Regarding IDE, I guess we tend to put priorities on different things. I find pycharm's (pro edition) git Integration, debugging, refactoring and profiling vastly superior. I plot using regular qt windows and I agree that for interactive plots where one wants to look at points etc, matlab has the edge, for publication ready plots matplotlib beats matlab hands down though (although the API is quite verbose, proplotlib is a wrapper that makes things more convenient IMO).
Anyway I think we have different priorities in what we are looking for. We use Python for labautomation and the matlab instrumentation toolbox is a buggy mess, our measurement times decreased by a factor of 5-10 when we switched from matlab.
Regarding cost, we are a university so matlab and python have equal costs. I do know of colleagues at industry labs where matlab cost was a factor though.
That hasn't been my experience. Solidworks definitely isn't as responsive as I'd like, but frankly I'll take "a bit sluggish but has all the major features and is not a UX disaster" over something like FreeCAD or Yosys.
The biggest thing Matlab has is the GUI (which is surprisingly good!), the documentation (excellent), and the plot viewer. The plot viewer is probably its killer feature. There's just nothing remotely as good in any other software, at least as far as I could find.
Octave's is terrible. Barely any features and incredibly slow.
GCC as it's constructed is a horrible framework. The way you port GCC to a new platform (say, a weird ARM variant) is to fork it hard and mangle multiple parts of the internals, then carefully feed it back. It's a mess. Nobody should be forced to port GCC.
The reason LLVM is good is because it has a corporate back (Apple, Google, IBM, ARM, Intel, Synopsys, NVIDIA, AMD, etc: https://foundation.llvm.org/docs/sponsors/) and it has a lot of work put into it to make extensible (which GCC isn't by design) and as a result have a clean interface for usage.
On the other side of this argument, paid extensions (and paid code in general) exists because at one point or another we live in a society run on capitalism. Unfortunately, that means that money has to come from somewhere to make bread hit the table. For a lot of open source, that money comes from one of two places:
* Corporations (people doing work on open source projects under the auspices of their company)
* Donations (people saying "this open source is good enough I want to make it continue happening").
One is sustained by maintaining the tools you use. The other is sustained by grace.
You missed a third place: government funding. Ironic, given that LLVM itself started as a University of Illinois research project. Private interests love taking credit for publicly-funded research:
https://www.theguardian.com/science/2021/apr/15/oxfordastraz...
Right now I'm stuck with an old version of a certain software, because the extensions are free, but some of the authors are not upgrading them anymore. If the extensions were commercial, I'd be happily paying, if that would give the extensions a longer lifetime.
Having somebody working on an extension at least a part of their time, because it represents a source of income, surely makes a difference.
Again, VSC's Ruby extension sucks big time. If there was a company behind, with a paid developer, like in IntelliJ's case, it would certainly have a different quality.
So, "I'm a professional developer, but I don't like other programmers getting paid for their extensions (that I do, nonetheless, find valuable, and want to use)"?
Truly a sight to behold!
But for programmers living off programming? Less so.
You're still missing "Most directly, the thing you do is theft."
I think the past 46 years have proved, that free software works, no matter how many Bills want (or will) get rich off the industry. If there were no hobbyists either literally stealing software, or indirectly "stealing" it, because it's free, there would be no industry to profit from.
But the gaming community being physically or mentally at an age of 14 prevented that with quite an outreach.
Would've thought someone with enough braincells to learn programming would look at this differently, but there you have it.
Mods work better in an open and free environment that lacks monetary incentives.
This is actually great news. Some extensions, especially language ones, are very poor, and paying for them (if someone makes a commercial version) is the only way to guarantee a good development experience. Ruby is an example, and switching to IntelliJ is not smooth for people used to VSC.