Paul Boddie wrote: > Ben Sizer wrote: > > > > It's worth remembering that there is a massive amount of software that > > has nothing to do with 'infrastructure', that won't need to be > > maintained, or upgraded. Examples include most retail software for the > > home or small office, and most entertainment software. Developers of > > such software often have understandable reasons for making it > > inconvenient to examine the algorithms at a high level. > > Sure, developers of such software may not want their competitors to > find out how their products work - certain companies also like to file > patents for that added anticompetitive edge, should their competitors > even consider figuring out the not-so-magic formula - but as end-users > of software ourselves, we don't have to share such an understanding of > their motivations, especially when such motivations directly conflict > with our own: with respect to the above evidence, our own motivations > are to have a reasonable level of control over the tools to manage our > own data.
I think you're possibly being a bit idealistic here. I use and endorse open source and open formats wherever possible but I don't believe we would have the same degree of diversity of software available if everything was open. Imagine if you were the single-person developer of a small application that did something quite innovative, and charged a small fee for your product. Now imagine you were practically forced to make your algorithm obvious - a couple of months later, Microsoft bring out a freeware version and destroy your business in an instant. Sure, they and others can (and have) done that with closed-source products, but you increase your chances of survival 10-fold if the key algorithms are not obvious. The only other way to protect against that would be a software patent, and I disagree with their existence on the grounds that it punishes those who discover the techniques independently. > It may not matter if some console game or other doesn't work after 20 > years... Certainly; yet this is a valid example of software that requires a degree of protection since some of the algorithms employed truly are 'worth stealing'. They can usually be replicated in time, but that may be months and allows the original company to have a deserved commercial advantage. > ...although I think it's actually something of a shame given that > such artifacts, no matter how apparently trivial they are, are actually > part of our culture and shouldn't be so readily discarded and > forgotten... Thankfully we have emulators for most platforms, and hopefully litigation won't kill those off. > ...but when your own data is not easily accessible within a > much shorter timeframe, the scandal is (at least to me) so much more > obvious. I think it's quite possible to have a closed binary but an open document format, thus allowing the user to migrate away at any point while still preserving any 'secrets' in the implementation. -- Ben Sizer -- http://mail.python.org/mailman/listinfo/python-list