James Law’s Joint

SpringSource and Adobe – A match from heaven!

June 20, 2008 · 3 Comments

This week our development teams were in training by SpringSource. For some reason I blurted out to the trainer that SpringSource should get cozy with Adobe. It was an off hand remark, but the more I think about it, the more I think it is a good partnership for both parties.

First some background: I have been involved in J2EE development for about 10 years, and lately have had a lot of concerns about the platform. Language is languishing, J2EE is way too complicated, SUN is empty, etc. I also work for a conservative IT department which isn’t going to jump head first into say- hosting our apps on the google platform, or amazon, or start writing apps in python or ruby- as cool as these ideas and languages are.

In my opinion, organizations like mine, writing applications within a large enterprise, the choice is typically Microsoft or Java. One unfortuneate aspect to the java platform at this point in time is the lack of cohesive commercial vendor support. Risk averse companies hate the idea of coordinating with multiple vendors to get support. There are moments where because of this, I actually dream about doing .net. Not because c# 3.x is cool (it is), but I wouldn’t have to deal with the bickering of the java developers as to the best way of doing something from the (far) too many options, but mostly because our organization can’t negotiate support with 20 vendors of all those cool open source jars out there. In many ways Java is the new Unix.

So why should SpringSource and Adobe join forces? First, why might it be good for ME, the developer in Corporate IT:

Spring provides 90% of the glue code I need on the java platform. By using spring to its fullest, you won’t find developers working on “frameworks” or utilities, instead, they are usually, after some training, able to actual concentrate on the business domain and its problem space. I have been successful in implementing nearly 10 medium -large size applications in the last 4 years, and I attribute most of this to the fact that Spring simply “took out the trash”. (Credits should go to Hibernate and others for the underlying technology of course)

Because of this experience, I see SpringSource as being a serious workhorse of corporate IT shops. It certainly is not limited to that, but it is a good fit.

Adobe on the other hand, does not really know how to sell and do corporate IT. I have used flex a enough to know a little about this. I don’t know if this is because there are HTML designers running the show instead of software guys, but they can miss some of the real basics. For instance, take BLAZE DS, their open source connector stuff that allows a java developer to easily connect java object back end to a flex/flash front end. The distribution is shipped as a sample war file with a bunch of sample web applications. Their idea is I’m going to deploy MY CODE to their web app. This is foolish, and would turn away a huge swath of java developers that are used to a jar file with some instructions, or perhaps some MAVEN pom’s. A serious J2EE shop isn’t going to use your tooling if their is a sample application WAR file as its main distribution.

After some time, I figured out the actual architecture and added the flex servlet (they call it the messagebrokerservlet) to my existing J2EE application. Actually, their underlying technology is pretty good. Flex is great, and from a corporate development perspective is nearly perfect: Deployment (easy), coding (Actionscript, easy), WebBased distribution… well, flash is excellent for UI development, and certainly easier than the alternative (AJAX+ ?)

However, I do think Adobe is trying to get better at servicing “enterprise” customers. A few months ago Adobe was doing some internal re-org to make an entire section of the company aligned with selling to organizations like where I work. I read their 10k financial reports , as I was considering purchasing their stock after seeing their amazing forms stuff. The reports do seem to point toward a more directed mission to selling to folks like us.

Thus, I see Adobe as needing Spring Source as they know how to sell to corporate IT. They have millions of downloads, and presumably thousands of enterprise IT customers in consulting, training, and support. They write software that developers love, business folks should love (if they knew software). In addition, SPringSource knows how todo the details to deliver to the dev community: packaging, deployment, excellent documentation.

SpringSource also has huge J2EE “street cred” and mindshare. Adobe is not a company an IT shop thinks of when it thinks of solutions. SpringSource and serious java platform support would be a huge asset to Adobe.

So what could this partnership bring to SpringSource?

The java platform has no shortage of UI frameworks, none really making it easy for developers to build a world class UI. JSF is ubsurdly complex, and still falls short of usability expectations, even with 3 layers of added glue (Ajax, seam, Spring Webflow). SpringSource has helped integrate many java based UI frameworks, but has yet to pick a serious “RIA” platform to integrate with. Working with Adobe would bring the support of the top RIA platform. (Silverlight and JavaFX are still years away from being on PAR).

Another concern with SpringSource is the buyout scenario. Eventually someone WILL buy them. Their VC’s will want a return on investment. Oracle, IBM, and many others would be nasty partners that would inevitably lead to eventual brain drain. I think Adobe’s lack of overlapping technology would NOT lead to the negatives that others might. Widespread panic by spring developers would not take place. Sure they would wonder why the photoshop guys would want them, but they would come around.

Back to the enterprise IT shop. I get one stop shopping. Spring AS, with Spring Framework, bundled support with the UI needs for the data entry apps from adobe. Sounds good doesn’t it?

What do you think?

Categories: Uncategorized

3 responses so far ↓

  • Peggy // July 23, 2008 at 1:43 pm | Reply

    Are you guys using OSGI at all?

  • jlawmi // July 24, 2008 at 3:07 am | Reply

    Hi Peggy. Definitely evaluating it. Given the fact that todays typical j2ee application is capable of running on any servlet engine and doesn’t use 98% of what app servers provide, I definitly see OSGI as the future. I’m intrigued by 2 main features- transparency of dependencies (like maven built in to the app server, thus no need to include jars with your .par file) and the allowance of multiple versions of same jar within an app is compelling. However, for smaller applications I think developing with the .war on a simple servlet engine as the end result is adequate- as you won’t really use the osgi features.
    I’ve tried spring modules and think it is the future of application servers. JBoss 5 might catchup but perhaps they are too little too late.

    What about you?

    Cheers-
    –JL

  • Peggy // July 24, 2008 at 2:49 pm | Reply

    We are looking at OSGI for a number of reasons, one you mentioned, allowing multiple versions of the same jar within an app. We deploy a lot of version of our apps, we are up to 12.0 and 13.0 on one of them. Work on both of these versions is going on concurrently.
    Secondly, I think it might help how the team does development. A lot of our staff are new to java so maybe just limiting them to one module might make the app seem less confusing to them.
    I am still reading about it. One issue is we already have these apps either done or at least in development and so need to migrate them, I guess. I am hardly at the point where I can even talk about it intelligently, still reading up on it.
    Peggy

Leave a Comment