I'm terrible at writing short responses to comments, they tend to expand. And since the ratio of blog subscribers to comments subscribers is around 6%, most people will miss out on my brilliant replies to the even more brilliant comments. The comments feed is
http://feeds.feedburner.com/PeopleOverProcessComments in case you don't have it ;>
Jon points out some reasons for IBM (or any company once you generalize them) to use OSS:
to undermine Microsoft.
to get pull-through into services.
as on-ramps to more "enterprise class" offerings - DB2, Websphere.
to look good in the community.
because of the genuine benefits of the open source model.
[my wording] you open source things that are hard to sell because they've been commoditized or were born as open source.
Those are great points. I wrote several times in my notes "IBM would rather partner with open source than Microsoft." Steve and were trying to get IBM to stop using the term "on-ramp" since it points towards a bait-and-switch approach, which IBM themselves panned. The idea is that people don't want their OSS offerings to be "lite" versions, they want them to be light-weight and/or the real deal. Frankly, I don't think many of the people who download and use JBoss need all the extra integration, services, and RAD toolsets that come with WebSphere, SAP, Fusion, or WebLogic. They just need an app server, and usually just a web container. There's something to be said for needing management and governance: the first will be addressed in the coming years as more open source systems management tools get their footing and the second, well, maybe it's time to pony up in that case.
I think the biggest reasons for IBM, or any company, to get involved in OSS are that OSS is cheaper (download Apache HTTPD instead of write your own), better (in the light-weight, low barriers to entry, and often quality sense), and that OSS drives innovation because it allows anyone to drive product management, not just the people with that title (with no discredit to product managers: my point is
"the more the merrier"). Also, the developer in me says simply "because it's the right thing to do." I mentioned to several people at the briefing, using and even practicing open source now-a-days is like breathing: its just how programming works. It's normal.
The patronage model understands that the patron can't (or doesn't want to) create all this code, so it pays to support other people doing it. Also, the idea that you open source what you can't make money on ("Waste dumping") is spot-on too; my view is better to open source it than delete it. Of course, the number of coolness points you give to people who put lipstick'ed pigs out there is extremely low...actually it's nil. But so what? There's infinite space to dump in, and folks are (or are becoming) wise enough to spot trash vs. gold. Even better, the web is like TV: just click on a different link, and the junk goes away.
Another approach is that, as I was saying (I believe), my theory is that the majority of code out there will be open source one day, so "waste dumping" is just the natural progression (whether the dumpers know it or not) of code towards the everything is OSS days.
Every FOSS community wants their technology to be used as much as possible. Taking a FOSS technology and using it within a larger solution is fine if the tech is kept intact. It becomes Strip Mining when the tech is "Blue Washed" or blatantly forked with the intent of never contributing back changes to the original FOSS community and/or never releasing changes as part of an OSS product. The FOSS community deserves to hear and see the thoughts and ideas for change, otherwise their tech splinters into many different permutations (ala UNIX) causing headaches, supportability issues, and more work in general for all involved.
Indeed, there's a high degree of not being a good citizen if you take code and don't give changes, features, etc. back. Hell, maybe I'm too much of a Texan (the friendly stereotype we all used to embrace and cherish down here, not the reputation we currently have thanks to you know who), but maintaining a conversation with people who're helping you is just a basic tenet of life we call courtesy. Of course, it goes both ways, and once the two parties snow-ball, good luck sorting it out. Feudin' is another thing us Southerns have a deep history with.
In the OSS world, the relationship between the OSS authors and those who use that code gets nasty when the user goes and make money off it and doesn't give something back to those who helped. So goes group creativity and cash: it's always bad blood if you make money off other people's work. Perhaps those acts are legal, and even
ethical, but not giving people their due is always going to upset the original creators. Hence the established fact that money eventually screws up all altruistic thinking. On the other hand, I'm not about to go empty out my bank account and move into a commune. I hear it's not all it's cracked up to be.
On the other hand, it's interesting that the discussion focuses on the software providers and not the users of the software. I don't see the WordPress crew getting all upset that big-time bloggers have downloaded their software for free and don't give back a cut of all the TextAd money the make on their blogs. The same hold for all those big-money companies using OSS. Getting upset at actual customers who're getting a free ride isn't quite the posh.
Licenses
Speaking personally, I've never been a passionate fan of the [L]GPL or other OSS licenses. For one thing, it's hella confusing. I prefer something like putting code in the public domain. That's my personal preference with code I write, however: I'm not invalidating other people's choices about how they license their code. I'm
completely Voltarian on that issue. I may not agree with your license, but I'll defend your right to use it.
I don't really care how people use code I write, I'm more interested in writing and using it than the sort of "life" (or "imprisonment") that the code itself takes on outside of my hands. And, again, debating OSS definitions as if there's one true model to be found is actually contrary to
my core beliefs about truth: so goes the brains of a contemporary philosophy student ;> Instead, the "code owner's" desires will and should drive what license and operational philosophy they take, not the other way around
JBoss is LGPL, so the idea of dissing on "Blue Washing"/Strip-mining is completely consistent with who JBoss "is" on that point.
As I've pointed out before, I'm an extreme relativist, so I have no problem accepting how JBoss envisions OSS and what people "should" be doing and how IBM, Apache, Joe Blow, etc. view OSS and what those groups "should" be doing.
I'm more,
much more, interested in making sure that the people of the software world don't suffer during the transition between the closed and open source worlds of software. Indeed, I could have also called
this blog peopleoveridealism.com ;>