"The most valuable commodity I know of is information."

rebelutionary / 2.0

JBoss "attitude training" / 2006 Jun 05

I've largely stayed out of the JBoss debate as I have some mates within JBoss and without. I've always maintained that - love 'em or hate 'em - JBoss is good for the Java community. It's shaken up the Java space, provided an alternative application server and generally made the entire community stronger. It also provides an Open Source application server

Then again, putting my "Open Source" hat on I've always maintained that JBoss hasn't been 'open source' - in the true meaning of the term to me - for a long time now. The code has an OSI license, but to me that's only part of being a true Open Source project.

For example, commits are by in large only made by JBoss employees, JBoss "projects" don't usually run outside of the JBoss sphere, there is a huge 'not-invented-here' syndrome about reusing external modules and the community as a whole I always find it to be almost the antithesis of open.

Note - this is not unusual - nor am I suggesting it's a "bad" thing, it's just something to be aware of. MySQL is almost exactly the same as a company.

What does amaze me though, is the constant "attitude" shown by JBoss employees. Here is the latest (but by no means isolated) example:

I suppose we can fork Spring and make it do what we want. But it is probably easier just writing our own. The IoC part in Spring is trivial to implement. The hard part is always integration with other services. :)

To me, this just reads as arrogant and spoiled. Why denigrate Spring? There is no need to. There is no need to. IoC in Spring is trivial? That just makes the commenter look stupid. It's clearly not a simple thing.

I'm not sure if you can invest in corporate "niceness" training, but it would certainly be a good idea. More and more new JBoss employees appear and they all seem to be cut from the same cloth.

To me it seems the equation is simple - being nice doesn't cost you anything, but the opposite certainly does.

Comments

Heh, that's not nearly as bad as another example just a couple days before. Check it out:

http://tinyurl.com/ow895

Specifically, see Christian's comments here:

http://forum.hibernate.org/viewtopic.php?t=960220

Christian has some serious anger management problems, not to mention issues about learning how to project a nice corporate image for his new bosses at RedHat.

Posted by: Patrick Lightbody at June 5, 2006 12:51 PM

[joke]
I bet the JBoss crews spent some time every 2 hours injecting each other's balls with Testosteron X - containing 99% arrogance and 1% ignorance.

And their recruitment interview involves Fleurian behavioral tests, i.e. you scored less than 95% in arrogance category, bye bye.

I wouldn't be surprised if someday DHH will join JBoss. Who wouldn't want Ruby on Rails on JBoss? DHH will come up with perfect score on Fleurian test, to the amazement of Marc himself.
[/joke]

All jokes aside, many people in the Java community needs to learn that being nice won't hurt.

Your way-too-kool Java skills might be superb, but that doesn't make you a better person.

If Marc, or the other arrogant crews had an accident on the road, I will help them, but for a sec I might ask myself 'Should I?'

Posted by: Ben at June 5, 2006 1:38 PM

I'm not sure it's a training issue so much as a reinforcing culture of arrogance, meanness, etc. It is unfortunate and unnecessary.

Posted by: Jason Yip at June 5, 2006 2:24 PM

I don't understand this obsession with "not open source enough for me". JBoss is 100% open source. Anyone can contribute to any project, and non-JBoss employees contribute to every project - even the core app server which is established and stable. The difference is that with JBoss, quality contributors often find themselves in the sad, sad position of being offered a paycheck. That's terrible, I know. "True" open source shouldn't offer any possibility of earning a living besides consulting and book writing.

And, of course almost all of the the JBoss projects run outside of the app server. Hibernate? Seam? JBPM? Drools? JGroups? JBoss Cache? Even the new EJB3 implementation runs outside of the JBoss App server. Where's this tie to JBoss? The microcontainer is the closest thing to a jboss tie, but that's only required in a few cases and there's really no reason that another IoC container like spring couldn't be used for most that stuff.

I think you are using very selective vision in picking on JBoss here.

Posted by: Just a JBoss Guy at June 5, 2006 4:02 PM

Nice out of context quote. (From Michael Yuan, one of the least arrogant guys I know.) Now lets provide the actual context:

Blogger writes: "We here try out JBoss Seam, and find JBoss Microkernel, is this a IOC from JBoss? Why dont we use Spring instead?"

(Seam has a TestNG integration testing harness where Java EE functionality like EJB3, JNDI, JMS, JTA, JCA are provided by the JBoss Microcontainer. Microcontainer is also used to let you run Seam apps in plain Tomcat, which does not have the needed Java EE services. No, Seam is not in any way tied to JBoss, and the microcontainer is not needed when running in another appserver.)

Micheal replies: "It requires a number of features that are currently not available in Spring...."

Which is correct, JBoss MC is a service container, not a container for application components, so it must do a bunch of fancy dependency management, classloader magic and deployment stuff that Spring is not architected for. That stuff is needed by our EJB3 environment, and eventually by JBoss 5, which will be built on top of JBoss MC.

Michael continues: "I suppose we can fork Spring and make it do what we want. But it is probably easier just writing our own. "

Which is correct.

He also says: "The IoC part in Spring is trivial to implement."

Which is also correct. Dependency injection is a basically trivial trick and I'm sorry Mike, but it is just silly to claim otherwise. Any half-decent developer can implement the core of an IoC container in a few days.

Yes, sure, Spring adds a bunch of somewhat more complex functionality that turns Spring into an application framework, but most of that is just not needed for what JBoss MC is to be used for.

I don't see how that statement is "denigrating Spring". It is merely answering a direct questions of "why not reuse Spring" for as an application server microkernel, not making any kind of value judgment about Spring as an application framework.

And yes, some guys at JBoss are arrogant, me included. Speaking only for myself, one of the things that made me so arrogant was having to put up with years of this kind of sniping and lecturing from people I had counted as friends. Every time I read a blog like this one, I get more arrogant. But y'know what - I ain't goin' nowhere, and it doesn't seem like the JBoss hataz are going to get any quieter, so therefore you guys are just going to have to learn to deal with arrogance. Sad but true.

Posted by: Gavin at June 5, 2006 4:18 PM

Oh boy - have I opened a hornet's nest here.

Firstly, let me apologise if the post didn't sound balanced - it was not my intention. I'm far from a "JBoss hater", anyone will tell you that.

I'm not sure how many times I can state that I think JBoss is good for the Java community and that we have hundreds (!) of customers running on JBoss.

Gavin - If the above came across as sniping or lecturing, it wasn't meant to. Rereading it, it doesn't resonate that way in my head - but that's why we're all different.

I think JBoss can improve in a lot of areas, and I'm simply sharing that - take it or leave it.

Take it as advice - put simply - that being nice and friendly doesn't hurt and generally, I feel this is an area that JBoss could improve.

Now, as fascinating way to look at this is to see how such advice is taken.

Do we ever see _this_ from JBoss?

"That's an interesting view point. I can see where you're coming from. Thank you for that information, I'll take it on board and see if we can improve."

Not to my knowledge. All I see is the following roughly summarised:

"Fuck off. I disagree completely. You're a JBoss hater."

Now which way seems smarter to respond? Which is going to make people like you more? Most importantly, which is going to let you open your mind to actually _learn_ something and improve?

Perhaps I'm pushing shit up a hill here, but I feel JBoss could still maintain the same competitiveness and drive without the angry, arrogant, fuck-you-all edge. For my money, it's simply unnecessary and hurtful to the company itself.

I may have to 'learn to deal', but in a strange twist I feel that you might have to 'deal to learn'.

m

Posted by: Mike Cannon-Brookes at June 5, 2006 4:44 PM

Mike:

* I have never had anything but a smile and friendship for you personally, or for Scott, for Charles, or any of the other guys
* I have never had anything but good words for your company, your product, or for you personally
* Nor, as far as I recall, have I ever found the need to say the slightest negative thing about OpenSymphony
* JBoss is an actual paying _customer_ of Atlassian

If you want to offer well-meaning advice, you know my email address. Is this the way you usually offer advice to your friends and customers - ie. write attacking, public blog posts? _That_, to me, is arrogance. Once again I feel betrayed by a friend, but this is a feeling I am getting used to, and it no longer hurts me so much.

Posted by: Gavin at June 5, 2006 11:21 PM

"...learn to deal with arrogance."

Uh, no we don't have to deal with the arrogance. We can get rid of all JBoss products from our company. We did that and we are much better off. Some of JBoss products are very good, but we found that there are plenty of alternatives that are just as good and are actually much cheaper (when you factor in the support contract you almost always require for jboss products).

So, we're happier all around. I recommend it to everyone. :)

Posted by: john smith at June 6, 2006 12:19 AM

I submitted this to Digg because I feel it's an important issue. Feel free to digg it if you feel the same.

http://digg.com/programming/How_not_to_treat_your_Open_Source_users

Posted by: Grant Gochnauer at June 6, 2006 12:35 AM

Love the irony of Gavin's frenzied response reinforcing Michael's point. ;-)

Posted by: Anonymous at June 6, 2006 2:46 AM

I don't understand why it's so hard for the JBoss guys to grasp that this is _not_ a technical debate any more, this is about you running a business, yet you keeping pissing off people who happen not to be asking the "right" questions or saying what you want to hear. And those are the people who, when asked by their manager/client which one to pick between JBoss and a commercial app server, could have answered:

"Of course JBoss. It's open source. And there's a vibrant community where you can get free and responsive support."

Instead, they might go:

"Yeah, I'm not sure. JBoss is a cool product all right, but unless you pay for JBoss Inc's service, chances are you'll get verbally abused on the forums..."

Posted by: Jing Xue at June 6, 2006 5:25 AM

JBoss haters don't hate JBoss products or the company, just the attitude of the people (the namely arrogance and fuck you JBoss haters responses).

Any organization with such attitude will produce a group of cult haters.
How many people start to dislike JBoss because Marc astroturf practices? Many.
Multiply that with each incidents where JBoss employees are involved in and we get lots more.

JBoss' is the one creating their own cult haters.
The more haters there are, the more bitter and twisted they've become. Gavin would be a good example with him feeling betrayed.

All of these wouldn't have happened in the first place if they've acted differently in the first place.
JBoss, if you don't care and you want to keep your attitude, then have fun with the negative feelings you will get for yourself.
The feeling of betrayed, the feeling of disliked, the feeling of despised.

You might think that there are people other than the haters out there, to hell with the haters. Bear in mind, if you keep your attitude, the JBoss lovers will betray you too!

Your friends are the ones who criticize you. It's up to you whether you want to keep on feeling bitter.

Oh Java community, the drama.
.NET, Ruby, and PHP communities are more peaceful :p. Yea yea, I'll just fuck off.

Posted by: Ben at June 6, 2006 12:42 PM

"For example, commits are by in large only made by JBoss employees, JBoss "projects" don't usually run outside of the JBoss sphere, there is a huge 'not-invented-here' syndrome about reusing external modules and the community as a whole I always find it to be almost the antithesis of open."

Mike, that sounds a little snipey (is that a word?). Calling an open source company that its practices are "the antithesis of open" is strong words. Like calling Steve Irwin "un-Australian" ;)

Please do keep in mind that JBoss has been growing, many of us who were once tinkerers on independent open source projects ended up becoming employees (perhaps a majority?) so that can explain the skewing of committer numbers for some in the medium term. In any case, there are many "projects" where there are many outside committers, contributors and often the direction is influenced strongly by the community, not just by JBoss agendas - and there are contributors coming and going all the time (typical of open source projects I guess).

It is kind of a little personally insulting as well, we put in a lot of work, and spend a lot of time with "the community" to make things work (we can't live without the community). And to often get slapped in the face does kind of make you bitter (often just because of the JBoss name). But I will try to stay nice.

Posted by: Mic at June 6, 2006 1:44 PM

Gavin, you are proving that you are an arrogant ass. Yeah right, you feel betrayed by a friend. Like you and Mike used to go skiing in the Alps before this happened. I am going to go out on a limb and say that you were nothing more than casual acquaintances if even that. Really why would you care about what he has to say about JBoss. If I worked for JBoss right now I would be rolling around in my money from the stock options.

Thanks for creating Hibernate. I heard it's great but I've never used it. Guess what, 10 years from now, you'll be lucky if it's a footnote in some crappy textbook on databases.

Posted by: Bob Smith at June 6, 2006 4:06 PM

A flexible, unit tested, IoC container would NOT be trivial to complete. Maybe it's no longer rocket science, but add in solid documentation, hooks for other tools/APIs and a build system - you're talking many weeks or months of work. Version 0.1 is not really an implementation.

Integration with other services is only really hard if the API doesn't provide good encapsulation- i.e. when you're at version 0.1.

Integrating with Hibernate is pretty easy and definitely not the hardest part of any project.

Just my personal pet peeve when anyone says something is 'trivial to implement' :) I mean you know unless it actually IS trivial.

A database connection pool sounds trivial to implement, but it's not. It takes a long time to debug the odd ball scenarios till you have something reliable.

Posted by: Anonymous coward at June 8, 2006 12:45 AM

Follow / ACTIVITY

About / LIFE

Atlassian

Atlassian / WORK

Photos / PERVE

Search / SEEK

Mates / BLOGROLL

Investments / FUTURE

© Mike Cannon-Brookes - 2000-2006