3 ms·
In agreement: Creating "polished" software is enormously costly in time and effort, and involves the kind of work that people only tend to do for money: Elabora
by analog31 4y ago
In agreement: Creating "polished" software is enormously costly in time and effort, and involves the kind of work that people only tend to do for money: Elaborate GUI's, installers for multiple platforms, etc. Keeping specialized domain knowledge experts happy over a long time span costs money, because they probably know that they could jump ship and do mainstream development for even more money.
And the tools have to do everything because people outside of the programming world can't implement missing features themselves. Programmers can create programming tools, but mechanical engineers can't create CAD tools.
Of course there are downsides: Giving up everything that you get with open-source is a lot. Creating "everything" tools makes them bloated. Having to follow the rules of marketing encourages planned obsolescence and a continual upgrade cycle. Finite resources encourages focusing on "core competency" rather than making general purpose tools.
The choice to use less-polished but free tools is a tradeoff that makes sense for most programmers, and people like myself who are not employed as programmers per se, but do a lot of programming to support our work.
If someone wants to develop a free "alternative," their best bet is to piggy-back on existing free tools. So for instance, a programming language benefits from free text editors. A specialized math or science tool might benefit from being served up as a package with a Python API. And so forth.