Recent blog entries for anser

I have no posting voice here, so I cannot post into the Windows/Linux Software Quality topic, but if I could, I would answer ajv's question about why Linux and OSS in general has so many robust and interesting software packages to its credit without a formal SQA mechanism.

The answer lies in how software projects are chosen. In the commercial software business, projects are undertaken because there is a market for the results. The software may be easy to write or it may be difficult; it may be clean or it may be messy; the lead developers and their coding assistants may love the underlying application or they may be indifferent to it, but the project is pursued. Formal SQA's are needed precisely because there's no guarantee that the workers will be inspired to write great code. Even with SQA's, there are many bugs.

In the Open Source world of volunteer coding, projects tend to be chosen in the first place BECAUSE somebody already knows how to accomplish them, and wants to do so. When we're lucky, the resulting product will prove useful to others, be widely distributed, and join the standard box of tools. Otherwise it becomes one of the thousands of quasi-interesting, abandoned one-offs littering FTP archives worldwide.

Whenever Open Source tackles something moderately complicated, but useful or necessary on its own terms, rather than because somebody thought of a neat hack, the result tends to be more or less of a spaghetti mess.

The real genius of Open Source is that no matter how big a mess one developer makes, if the product is truly useful someone will come along to clean it up. In the business world, dead projects stay dead.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!