Alessandro has posted 2 posts at DZone. View Full User Profile

SpringSource and the Lost Tag

09.23.2008
| 7561 views |
  • submit to reddit
Perhaps I am taking the subject too personally, but I feel disturbed by SpringSource’s new update policy.

For those who don’t know, how does it work? I will try to explain: SpringSource will develop and still make the source code available; they will also incorporate and render publicly available all the fixes. Where’s the catch then? The baselines. SpringSource will tag stable baselines for the first three months from the release of a new major version (e.g. 2.0, 2.5, etc.); after that, the next tags will be available only to paying customers. The next available tag for open source users will be the next major release.

I am not debating the objective of SpringSource making money from their flagship product. I am instead debating a number of other issues that arise from this:

  • Changing the licensing terms on the run is, let me say, unfair. Either a product is open source or it is not. If it is, source code and tags must still be available. There are a lot of other ways of making money with enterprises: extra features available to paying customers only, priority support, customization, and possibly many others. Restricting a license is like a stab in the back: they let the cows pasture in the field and then lock them in within the fence.

  • This episode stacks up to similar cases and is raising understandable doubts over open source adoption by small businesses. If enterprises have deep enough pockets to cater for an additional license, small companies with tight budgets may suffer from an unexpected cost for a framework that, one week before, was totally available for free.

  • Other products / frameworks - what I said in the previous point might also create a valuable precedent for all those products currently released as open source but actually developed by real businesses: Alfresco, Liferay, GWT, Guice, etc. - if Spring Source’s model will succeed, we shall expect more of this.

  • Raising an issue and problem determination will become a nightmare: with what “baseline” of Spring did the user encounter the problem? Were all the SVN commits applied?

  • Spring ecosystem: there are other products that are heavily relying up on Spring, CXF and Liferay just to name a couple. How will this new policy affect their development? How shall they keep in sync with Spring tags? Shall they package their own release? Or what else?


I am fairly concerned about what has happened. Besides any consideration about Spring (I've used it only for IOC and transaction management), the consequences of this highly debatable move can be disastrous. I can only manifest my disapproval for an unfair choice that can be detrimental for the whole open source community.

I will keep track of the ongoing developments. In the meantime, I will have a look at Tapestry 5’s and Guice's IOC containers. I am sure they are providing most of the features for which Spring has been so much followed and praised.

Published at DZone with permission of its author, Alessandro Santini.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Geertjan Wielenga replied on Tue, 2008/09/23 - 4:48am

Excellently argued. I share your concern that this will set some kind of trend for the open source community. I don't want to be a cow stuck behind a fence either, especially when I didn't know I would be from the start!

Jacek Furmankiewicz replied on Tue, 2008/09/23 - 5:03am

I agree. I suspect this will put a big wrench in the Spring adoption train. My employer started experiencing similar attitudes with JBoss after they got bought out by RedHat and as a result we slowly freed ourselves from any JBoss tools and technologies.

There are ways to make money off open source, but this is not the one.

On the bright site (for Sun at least), a lot of people may suddenly have a solid second look at EJB 3 (and 3.1).  So this news is probably manna from heaven for the whole Glassfish/Java EE gang :-)

And I wouldn't be surprised if a fork actually occurred, there is probably enough corporate adoption and interest in Spring to make it happen.  

I look forward to hearing the comments from folks whose entire frameworks are based upon Spring under the hood (e.g. Grails).

Jeroen Wenting replied on Tue, 2008/09/23 - 6:04am

Given that most people and companies don't work with bleeding edge products anyway, and you will get the source of any version you do get so you can tweak it if you want and don't want to pay for it, I see no problems with it.
Of course if outside contributors don't get the source of the versions they themselves contributed to that's another matter (and I have experienced that in the past with one OSS project that went commercial, except those from one day to the next locked out all outside contributors, removed any free versions, and publised a press release that from now on anyone interested could get a license (including sourcecode, but no distribution license for the source or binaries) for several thousand dollars per seat).

That's not something I expect the mature and rather wise people at Rod's operation to do.

So:
- there's no issue with having only some versions available as hardly anyone wants more
- there's no issue with them wanting to make money by giving paying customers more frequent updates

So what is the issue (except some people having a massive sense of entitlement and wanting everything for free, always)?
I expect there to be no such issues whatsoever.

John Denver replied on Tue, 2008/09/23 - 6:53am

What about Google Guice? also it is a nice IoC. I download Guice yesterday after the sad news about Spring and Guice works great but Im also waiting for EJB3.1.

 Greetings.

John Denver replied on Tue, 2008/09/23 - 6:58am in response to: Jeroen Wenting

hmm ... this is a serious hit to the open source community, It is harmed psychology way. Maybe they will not trust anymore Spring Source.

Geertjan Wielenga replied on Tue, 2008/09/23 - 7:31am in response to: Jeroen Wenting

[quote=jwenting]

So what is the issue (except some people having a massive sense of entitlement and wanting everything for free, always)?
I expect there to be no such issues whatsoever.

[/quote]

 

If I give you an ice cream and then, while you're in the middle of eating it, I say to you: "By the way, after you've licked your ice cream three more times you're going to have to start paying me...", wouldn't that be very odd?

Sultan Rehman replied on Tue, 2008/09/23 - 7:53am

First ExtJS, and now Spring... Maybe the "Not-Invented-Here" attitude isn't so bad, afterall? :)

Alessandro Santini replied on Tue, 2008/09/23 - 8:12am in response to: Jeroen Wenting

Jeroen,

"Given that most people and companies don't work with bleeding edge products anyway"

 That is not entirely true. Suppose you are developing a product like Alfresco, CXF or others. Also suppose you know that the next Spring version will contain features you will want to use. You start developing using the beta versions and then integrate with the release. All of a sudden, Spring tags are not available anymore. How will you support your product? Will you purchase a license? And what if your product is open source and free (as in beer)? Will you start charging users to cope with the sudden license cost?

"- there's no issue with having only some versions available as hardly anyone wants more"

I must disagree. I want a new version anytime a bug is fixed. A version indicates a "stable mass" which is fruit of a QA process.

"- there's no issue with them wanting to make money by giving paying customers more frequent updates"

This is incorrect. It's not about having more frequent updates; it is about having STABLE versions of Spring. Would you develop a product using a work-in-progress product? Also, don't forget tha, being versions available to paying subscribers only, you can expect delayed major release to maximise the income.

"So what is the issue (except some people having a massive sense of entitlement and wanting everything for free, always)? "

This has nothing to do with entitlement and for free - Spring is, to some extent, still free.

This is about:

  • changing license on the fly;
  • repercussions on the open source community
  • repercussions on other open source products
  • lack of trust to SpringSource.

 

David Karr replied on Tue, 2008/09/23 - 9:59am

I don't have the exact statement Rod Johnson made in front of me, but I believe he clarified the policy later  (the original statement certainly doesn't say this) to point out that the 3 month window does not apply to the latest major version, just the previous major version. I would try harder to confirm that, but ServerSide is crashing right now (probably with people trying to rant about this).

John Denver replied on Tue, 2008/09/23 - 10:19am in response to: David Karr

hmmm ... Spring Source even does not have an answer for the Enterprise subcription, I dont think they clarified anything, I have watching TSS and there is nothing good news.

Nah, Not more of this, We are not their dummy or What Spring Source think the community are?, Fools?. Try Guice, try EJB and the coming 3.1 it will rock.

Check this article from Rod Johnson said Java EE 6 gets it right:

 http://blog.springsource.com/2007/07/03/java-ee-6-gets-it-right/

Jim Bethancourt replied on Tue, 2008/09/23 - 12:54pm

One case I'd be really concerned about is if there is a critical bug discovered after the 3 month period is over.  Since the 3 month period only covers major releases, and bug fixes are usually included in minor / point releases, where would this leave all other non-subscription users?

Is anyone familiar with what would happen in such a case?

Alessandro Santini replied on Tue, 2008/09/23 - 1:52pm in response to: Jim Bethancourt

Jim,

in that case the fix would still be available through Subversion. However you must rebuild the JAR files yourself as there will be no official binary release after the three months for non-paying customers.

Alessandro

Bill Burke replied on Tue, 2008/09/23 - 3:36pm in response to: Jacek Furmankiewicz

Hey Jacek, just wondering... What "attitude" did you get from JBoss that made you switch?  We still deliver community versions/updates for free on all our projects.  Thanks.

Marc Ende replied on Wed, 2008/09/24 - 3:37am

Reading the announcements and the policy on springsource I had the impression to be in an sales-tv-show:

"... and on top of that, you'll get more updates than others..."

[sarcasm]Great deal spring source!![/sarcasm]

I think that this would only be the first step. May be they change other points later or they'll change the whole license (see extjs). Currently I would think twice to use spring in a project especially when developed for clients. 

 

Jacek Furmankiewicz replied on Wed, 2008/09/24 - 6:05am in response to: Bill Burke

BTW, I think there's nothing wrong from making money from open source.

But the golden rule is to come up with a business plan from day one and stick with it. Examples of successful open source companies who have done that are Trolltech or MySQL (by clearly specifying a dual licensing approach) or to a certain degree Sun (by offering a full stack of hardware/software/support built on open source components).

The wrong way to make money of open source is the newly popular bait-and-switch (ExtJS and now it seems SpringSource)...offer your work as free open source to gather adoption and user base and then pull a rabbit out of the hat once you have them locked in.

I think you will find a lot of companies will now think twice before adopting Spring, whereas before it was a no-brainer decision.

Jacek Furmankiewicz replied on Wed, 2008/09/24 - 6:07am in response to: Bill Burke

Weird...I replied first to your post and it just dissapeared...so here we go again....

Basically the person dealing with JBoss experienced a not so subtle push towards paid support ever since RH bought out JBoss. There were other issues along the way, but that was the core of it. He said it had changed greatly compared to the support he was getting prior to RH buyout.

I was not here at the time, so I am relating the story as is.

Yaozong Zhu replied on Wed, 2008/09/24 - 6:15am

Spring has created a Frequently Asked Questions document to help people to understand exactly what this means for them.

Bascally to my understand, open-source users need to build Spring based on source code in repo themselves after three month. Any bug-fixes will be included in your self-made build as both commercial and non-commercial users share the same source code.

Marc Ende replied on Wed, 2008/09/24 - 6:31am in response to: Yaozong Zhu

Yes of course, but currently you'll get a tested release when you download a release. In case of errors you can post issues regarding spring x.y.z but now, you'll checkout sourcecode and build it on your own.

After three months they stop tagging new releases. They only provide releases for customer and support:

After 3 months SpringSource will continue to make maintenance releases as needed to support our customers. There will be no tags in the repository corresponding to those releases.

 Currently you can search for workarounds or help based on a version number. In the future you'll search for a checkout date and a r123456 or something similar.

It's okay to earn money with open source software. There are many business cases which are running great but this step wasn't a good idea!

Jeroen Wenting replied on Wed, 2008/09/24 - 7:01am

They don't change the license on the fly, Alessandro. The software will still be available under the APL 2, just not as often as before.

APL doesn't require an instant release the moment someone wants it, last time I checked, so releasing on a longer cycle is no problem.
Nor does APL restrict you from providing extra services (like prerelease versions) to paying customers.

John Denver replied on Wed, 2008/09/24 - 8:18am in response to: Jeroen Wenting

Do not wait for Spring Source to give you a beautiful flower, Their goal is to make money, Do you remember Microsoft?, I don't need to explain what Microsoft did to make money right?. Well this is a similar case, As Jacek said they could change their license anytime as ExtJS did. Spring Source loves to change everything in the middle of the game.

I will said move on guys, Take a look to Guice or EJB3.1, We don't need Spring, Even really think twice before use their products.

Regards.

John Denver replied on Wed, 2008/09/24 - 8:31am

Also check this paragraph from their FAQ: "making SpringSource Enterprise the best option for production systems."

So the open source version or the version that is without subscription inst the best production ready?. Give me a break.

Also the price of the subscription I think it will only be available for Big companies with Big wallets.

Hmm, I was a Spring fanboy but with this ruined my week. Anyway as I said time to move on.

Regards.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.