On Jun 9, 2006, at 5:32, M. Edward (Ed) Borasky wrote:

>> Their contribution to projects like Ruby (or even Java, if you  
>> include
>> its community process) has always been the marginal one of providing
>> incidental employment to people who made direct contributions in  
>> their
>> spare time.
> Uh ... OK ... but I don't consider my employment as a performance
> engineer "incidental". Maybe the Swiss Patent Office provided
> "incidental employment" to Einstein while he was pondering the
> photoelectric effect and relativity. I don't think of the role John
> Backus played at IBM as "incidental employment".

I have a hunch that I haven't been clear enough - it seems like we  
agree at the basics, so I'll try and restate it.  I have nothing  
against commercial motivation or business in general.  What I do  
recognise is that there are many different classes of business when  
it comes to their contributions and attitudes to software  
development.  So let me explain what I mean by 'incidental'  
employment: if I'm working on some project in my own time, my  
employment (no matter how interesting it is in and of itself) is  
incidental to that project (and vice-versa).  Implicitly, there are  
any number of jobs that I could have which would contribute equally  
to my other project.

Now, my employer can be said to be contributing to that project,  
since they're supporting me while I undertake that (unpaid) project,  
but it's a pretty marginal contribution.  I wouldn't suggest that  
Backus' contributions were incidental to his role at IBM at all,  
while I'm not a party to his job description, it seems likely that he  
was employed specifically to make contributions like that.

I think I should emphasise the fact that I'm not really talking about  
the IBMs and Suns of the world; companies who are in the business of  
creating tools like Fortran and Java.  They, rather obviously, are  
busy directly producing software tailored to their (business) needs.

> I don't know how it is with Ruby,
> since I'm a newcomer to Ruby, but the other open source communities I
> hang out in don't have any trouble getting contributions from  
> business.

That's exactly what I've been trying to say, along with the notion  
that not all businesses are the same.  The result of this is that the  
people involved don't have to pander to the traditional notion of  
"business acceptance" in order to get contributions and support,  
because there's another class of business which doesn't apply the  
usual criteria that "business acceptance" normally implies.

I think that's a brilliant situation, and only hope it expands.  It  
provides a much broader spectrum of employment for programmers, which  
can't be a bad thing, and is changing the way that business invests  
in software in a way that allows for much more flexible development  
priorities, and a process where technical concerns have a bigger  
place at the table than risk aversion.  The risk aversion implied by  
"business acceptance" (as I went into earlier) leads businesses to  
adopt less technically-sophisticated methods and prefer a relatively  
de-skilled type of commodity programmer - something I doubt anyone  
particularly wants to be.

What I particularly dislike is the notion that unless project X  
obtains this ethereal state of "business acceptance" that there's no  
way it can be used to make money - you've pointed out it's not true,  
I've pointed out it's not true, but people still say things like  
this: "It may be that [without business acceptance] Ruby's future is  
all about projects that are undertaken for love, not money."[1] and  
insisting that being used in mainstream corporate work is the all- 
singing all-dancing holy grail for a software project.





matthew smillie.

[1]http://www.ruby-forum.com/topic/68101#87612