Free Software Is More Reliable (2011)
&gt;They tested seven commercial Unix systems as well as GNU. By subjecting them to a random input stream, they could “crash (with core dump) or hang (infinite loop) over 40% (in the worst case) of the basic utility programs…”<p>As an end user, the least thing I care about is how the program behaves under some synthetic circumstances that I will very likely never encounter.<p>The thing I care the most is how much effort (physical time and also distraction) does it take to solve my typical workday problems with certain software. And, based on my experience, GNU tools very rarely excel at this metric.<p>I even have a fairly good assumption on why this is the case. Making software that works intuitively for most of your end users is a painstaking process. You need to research your market, document and prioritize use cases, run tests, update documentation, listen to feedback, quantify and prioritize it, provide support to your users. Then a thing or two changes about the &quot;typical&quot; workflow, or another OS version comes out, or some library you have been using gets broken, and you&#x27;re out of tens of hours to fix it. And after you&#x27;re done, the end user will install an update and think &quot;nah, nothing changed, why did I bother updating?&quot;. You&#x27;ve freed your end users from mind-numbing grind by grinding it yourself for them.<p>You&#x27;re not gonna be doing that unless that software is bringing in enough money to justify the hassle. There are numerous much more pleasant things to do in one&#x27;s free time.<p>What free software is good at is proof-of-concept solutions. Someone looked at a tough problem and spent some evenings making an elegant solution. Or got some cool idea that might work and demonstrated that it does under one set of circumstances. Or implemented a cool algorithm from a research paper. It is a mentally rewarding thing and many people would do it for fun. But in most of the cases it&#x27;s not enough to make a great end-user product.