Software as society (was: Re: Documentation Standards was Re: [ox-en] UserLinux)
- From: "Niall Douglas" <s_fsfeurope2 nedprod.com>
- Date: Thu, 11 Dec 2003 19:34:12 -0000
On 11 Dec 2003 at 11:28, Russell McOrmond wrote:
Software is first and foremost an engineering solution. It cannot be
What I am saying is that I believe this is false. It may just be
something we have to agree to disagree on.
Well let's explore this. I think I'm understanding where you're
coming from now ...
If you try to focus on engineering proficiency when you are coding
public policy, you will end up creating considerable and potentially
dangerous governance problems. There are many books written about
this outside of the software world. One Canadian named John Ralston
Saul writes about a managerial class taking over governance, and his
warning applies equally to engineers taking over governance software.
Just as "efficiency" is not a goal unto itself in public policy,
is a perfectly engineered solution. You first need to decide what
governance outcomes you wish to create as a matter of public policy,
and only as a minor implementation detail do you worry about whether
it is efficient.
Are you saying that by creating software in a certain fashion, you
give forth to a certain user experience, societal impact and of
course forms & methods of successful and failed management?
In which case, I completely agree. Too many programmers think "if it
works, it's done". This is IMHO very poor engineering - software
needs aesthetics and quality. It needs to be far more than simply
getting the job done - it needs to create dreams within people, to
inspire them and to change the world around it.
I happen to believe that most government IT projects fail because of
not recognizing the full social, economic and governance implications
of software "code is law" and hand projects entirely over to software
Here we would disagree. Almost every failed software project I've
seen is due to inept management. Programmers tend to be intelligent
guys and quite capable of managing themselves - free software proves
that programmers manage themselves even over large geographical
distances, language & cultural barriers just fine.
I feel the traditional hierarchical management model is just a really
bad thing for software development period.
This is not to say that the programmers should be given too much
freedom. I've seen the bad effects of one or two bad programmers not
held to account and the much more insidious "too many cooks spoil the
broth" effect. But they certainly need a much lighter touch than is
traditional - and far more realism from management that it's a tricky
job, the schedule *will* slip and you won't get out what you thought
it would be at the start. But that's fine - there are processes
available to smooth out the bumps which if more commonly practicised
with improve the success rate no end. Unfortunately, most of them run
counter to prevailing opinion & the domination-control culture of
The single biggest way of saving on costs is to reuse as much
quality software as possible something not enabled by the GPL for
the vast majority of software production.
You believe that the vast majority of software development is
incompatible with the GPL. I have yet to see any study that proves
this. Where are your references? (Note: Quoting a Microsoft or
CompTIA study doesn't qualify as a reference ;-)
I don't have any. But then neither do you. Since you didn't pick me
up on my statement that GPL commercial development is dwarfed by
BSD/MIT/etc commercial development, are you agreeing? I think it's
self-evident from a quick search on google myself.
This proves beyond any doubt that business simply does not like the
GPL. Since the majority of software necessarily must be produced
commercially, ergo the majority of software development is
incompatible with the GPL. If there were any benefit for business to
go with the GPL, they'd do so - the fact they're not after 10 odd
years of it being around shows it's not attractive. Especially if a
BSD license is seen as more attractive.
I will easily grant you the truth that "software manufacturing"
business models based on collecting royalties are incompatible with the
GPL. This is like saying that business models based on the making of
candles are incompatible with the electric light bulb. You seem to be
suggesting that the problem is the GPL rather than recognizing that the
real problem are legacy royalty-based "software manufacturing" business
Ah, the old "the world is bad let's all do this this better thing"
fantasy. People will do what they think is best for them. There are
inescapable business reasons why the GPL is a bad idea and no
shortage of engineering ones too. Of course, economists have been
saying these ad nauseum for ages but the GPL cult does not want to
hear. They need to believe that the GPL will save the world and
anything not confirming that doesn't exist.
As I pointed out last email, most software production is bespoke.
Bespoke does not like the GPL anything like as much as some think it
should. I outlined a few reasons based upon my time working within
EuroFighter why I think this is the case. Unfortunately, you appear
to have ignored my observations :(
The choice between free software, Open Source, and proprietary
software is not a technological choice. It is a social choice, and
a choice of business arrangement. It is a social choice, like
deciding you want your citizens to be able to send email, not just
receive it. It is also a business arrangement, like deciding that
you want to buy a car rather than rent one. It is a matter of
sovereignty also: If the government uses non-free software, it
hands control of the government's computing to a private party,
I understand all of this, but I'm not seeing why you think it's so
important. Software is a function of its users and its application so
obviously it will have knock-on effects throughout society. But then
so do mobile phones, or the fax machine. It's obvious.
As I've said before, this more than anything else makes the GPL
fundamentally broken and choosing it an act as bad as closing the
source. The GPL is bad for software.
Since I don't understand what you are trying to say here, I can't
even begin to discuss it. Sorry.
Would you agree that for every algorithm implemented in code there's
at least 1000 other implementations?
Why then doesn't someone just write one implementation and everyone
else use that implementation instead of duplicating the time &
effort, especially when debugging takes 50% of production cost?
Therefore in order to improve the quality of software, our principal
aim must be to encourage reuse. Anything doing so is good. Anything
preventing so is bad.
The GPL helps open source software not waste production, but it
doesn't proprietary. Therefore it's not a good idea as there are
alternatives which don't have this problem.