by Paragon » Thu Sep 22, 2011 1:25 pm
I have been a software developer since 1983, so if I may share my insights they would be that software suffers from having to endure perhaps the most unpredictable set of variables known in the universe: the human user. It's bad enough to have to account for one's self, the only user of the software throughout the development cycle, much less the unique personalities of users in the wild. It is impossible to get it right on the "first try." If you want good software, don't let me see it until it's gone through tens of thousands of "trys" on what you consider a version worth publishing.
This is why I support open software development. Good software requires a science-based draft and review process that repeats throughout the life time of the product. Open development widens the scope of input considerably, and allows the drafts to be honest, and the changes requested solve actual problems. Closed software must follow pathways based on unscientific concerns, often under the general headings of Marketing and Politics.
Even to this day, one shells out thousands for commercial software, full in the knowledge one is being used as a guinea pig.
RailWorks strikes the proper balance, in my view. It allows all of us to get involved to whatever extent our talent and time permits, while providing a platform for artists to be paid for their work. And you get all of this for essentially pennies, and a major upgrade for free. This makes me want to publish how-tos on everything serious I do for others to use. Again, my costs to do this are 99% my time alone.
As an aside, it should be noted that the software known as Human Genome Expression follows the first-fit model. No testing. Hardware upgrades only. You get one version, 1.0, and that's that. This is the fundamental reason good software is so difficult to write: you have to accommodate THAT.