Showing posts with label Eclipse. Show all posts
Showing posts with label Eclipse. Show all posts

Wednesday, May 20, 2009

Rise of WebKit Advances Mobile Web's Role, Opens Huge Opportunity for Enterprise Developers on Devices

Transcript of a BriefingsDirect podcast on new technologies and approaches that leverage the mobile Web for designing Web applications for hand-held and other mobile devices.

Listen to the podcast. Download the podcast. Find it on iTunes/iPod and Podcast.com. Learn more. Sponsor: Genuitec.

Dana Gardner: Hi, this is Dana Gardner, principal analyst at Interarbor Solutions, and you're listening to BriefingsDirect. Today, we present a sponsored podcast discussion on bringing enterprise applications effectively out to mobile devices.

This complex subject has required some harsh trade-offs from developers in the past -- trade-offs between rich, native applications targeted at specific devices, versus standardized mobile application approaches that have simply failed to impress users.

Such trade-offs have also limited the ability of Web developers to take their full PC browser applications out to the mobile tier without losing powerful features, or finding that the transition to smaller form factors just doesn't hold up. Yet, a new day might be dawning on the ability for enterprise developers to make the mobile leap.

Thanks to the sizable impact that the Apple iPhone and its WebKit browser have had in the market, the mobile device competition is responding. It's sniffing out new business opportunities around application stores, selling application by application, and the mobile commerce implications of that as well.

We're also seeing advertising creep into the mobile tier. All of these trends and effects are mounting now for development to increase and for more applications to find their way out to these devices. Also, such developments as HTML 5, Android, and advances in scripting and open source tools have made the mobile Web suddenly more attractive and attainable for mainstream development and developers.

So, we're going to look at how the development field for mobile Web applications is shaping up and how targeting the modern mobile Web browser may be removing some of the harshness from the trade-offs of the past over form, function and unsatisfactory standards.

To help us unpack the mobile Web, we're joined by our panel. First, I'd like to introduce Stephen O'Grady, founder and analyst at RedMonk. Welcome, Stephen.

Stephen O'Grady: Hey, Dana.

Gardner: We're also joined by Wayne Parrott, vice president for product development at Genuitec. Hi, Wayne.

Wayne Parrott: Hi, there. Great to be here.

Gardner: And also, David Beers, a senior wireless developer at MapQuest. Welcome, David.

David Beers: Thanks. Good to be on, Dana.

Gardner: Let's start first with Stephen at Redmonk. You've been following these issues for quite some time. Why have the mobile Web and mobile applications become so important now?

O'Grady: It's really for a number of different reasons. We have better wireless options than we've had in the past. Wireless pricing is more conducive to adoption. In addition, we've seen, just within the past 12-18 months, a real revolution in terms of the adoption of applications, largely due to the success of the iPhone platform, which just recently sold its billionth application.

The success there is again due to the environmental and contextual factors, but also the success in the design of the device itself, in which we finally have a real Web browser. In your introduction, you mentioned WebKit, which is the foundation for the browser. Obviously that's on the iPhone platform.

For the first time, users have a real Web experience, as opposed to a stripped-down, bare-bones site in terms of what they can experience via the mobile Web. We need to pair the environmental and contextual factors with the advances that we've seen in the devices themselves. They've all come together to give us a rich and deep experience that will allow us to do things that we haven't been able to do before with the devices.

Gardner: We're also seeing some economic factors, given the tough economy. When you see the success that a little game application can have and how engaging it can be, I think the enterprise bean counters

When you're an enterprise vendor or a consumer vendor looking to target a volume audience, the fact is that, there are a lot more mobile devices than there are desktops and laptops.

say, "Wow, why can't we bring some of our applications down to that same tier, but at a much lower price point and perhaps out to a much wider user base -- either employees or partners, or even end-customers?"

O'Grady: The user base is one of the important factors. Certainly, the pricing in the applications is very conducive to adoption. In other words, if it's a couple of dollars an application, as Apple has proven with its iTunes store and BlackBerry has attempted to duplicate, we're seeing real low barrier to entry price points. This will spur adoption of the individual applications themselves.

When you're an enterprise vendor or a consumer vendor looking to target a volume audience, the fact is that, there are a lot more mobile devices than there are desktops and laptops. There are mobile devices all over the planet.

You were mentioning economics. The economics are an excellent indication of one trend that we're seeing recently, with handhelds and the so-called netbook category of subnotebooks or ultra-light machines. We're seeing these devices repurposed, utilized, and leveraged in areas that we haven't seen them before.

For example, a lot of folks who might have traveled in the past and had applications like Siebel built into their laptops are now very often using those in a handheld or, in some cases, a netbook. So, economics, in terms of the application price and the volume audience that can be targeted is a big factor.

Gardner: I suppose that Metcalfe's Law kicks in to some degree. The more people on the network, the more people that can be involved in a business process, particularly in real time, the more powerful the process, and the more powerful the network.

O'Grady: You've got it.

Gardner: Let's move on to this issue about fragmentation. As Stephen pointed out, we still have many, many devices. This is by no means 1982 with MS-DOS as the single platform to be concerned with. We still need to work out a great deal of fragmentation on the mobile tier.

Let's go to David. You're a developer in the mobile tier. How does an organization like MapQuest handle this whole issue of so many choices on that endpoint?

Beers: It's both a problem and an opportunity. From a developer's standpoint, and I am a developer, it's obviously difficult, because the amount of energy that you put in is divided across all of these different platforms. You have to make difficult decisions about developing the features you want with the resources you've got and perhaps limiting the targets that you're able to reach, as far as devices are concerned. Or, you may be faced with, partly because of resource constraints and partly because of the need to try to fit across the lowest common denominator, releasing apps that aren't as powerful or as functional as you'd like them to be in order to get that reach. That's a difficult thing.

On the positive side, fragmentation is a pejorative term that we use for differentiation. It's painful for developers, but we can't pretend that it's all a bad thing, because it's really driven by rapid innovation. A lot of the fragmentation that we see out there is because we've got these capabilities now on handsets.

So many of them have GPS, for example, which is a huge opportunity for MapQuest. We would definitely want to be able to leverage those capabilities. As Stephen was saying, part of this uptake in application usage is because the technology is getting better. So, you've got to go to where that improvement is.

Gardner: So, we have choices and trade-offs, but we also seem to have some coalescing around a better path. Why don't we go to Wayne? Tell us how you see the improvement, now that we've identified the problematic past. How do you see things improving?

Parrott: Looking back, things have been a pretty big mess on mobile for the whole. You kicked off by talking about some of the improvements in the smarter phones and the capabilities they bring in, both higher-end horsepower on the smartphones and a much better browsing experience or engine now showing up on the iPhone-class machines. The programming model that is now available enables a whole new class of Web-type applications, which, in the past, has been reserved for native applications.

Going back to talking about native, again, the fragmentation issue pops up. As you start to move forward with the WebKit-type browsers now more prevalent on these smarter phones, it's starting to represent a more common platform that we have a choice to target our application functionality toward.

Gardner: So, perhaps this goal of being able to "write once, run once" doesn't really work, given the variety of devices. "Write once, run anywhere" doesn't work, because of the differences in the native approaches. So, we're stuck with "write many times, and run many places."

It's got to be better than that, though! How do we manage and make that a bit more amenable from a technology and a business perspective? Again, I'll take that to Wayne.

Parrott: Obviously, recognizing the advances in the platform itself and being able to take advantage of the mobile Web capability of the newer iPhone class machines is something that has caught a lot of enterprises' attention. Before, they were scared off by the prospect of the cost of going native and the fragmentation issues around that.

Going back to focusing toward mobile Web and the WebKit browsers gives them the opportunity to start to look at their existing resources and their know-how, in terms of what they've been doing in the past as far as Web. They can ask, "What's the gap that I have to close, in order to repurpose and retarget my resources, my content, services toward reaching people where they are now?" More and more people are living mobile. So, what is it you have to do?

They're quickly starting to realize that the new smartphones are giving them a great new capability, and it's not that big a gap that they have to cross over in order to be able to reach users in a much more cost-effective level by focusing on the capabilities that the mobile Web gives them.

Gardner: Stephen, where do you fall on this? Do you see that the developers are going to be making the choices that winnow down these variables, or are the market, the technologies, and some elephants in the room, like Apple, going to make these standards for them?

Target the largest market

O'Grady: In large part, developers will be making the choice, and they'll be making the choice largely based on volume. In other words, whether you're a third-party application developer or an individual developer just putting out an application on your own, you want to target the largest market.

Now, there are exceptions to that. For example, even if the BlackBerry store is much smaller, in terms of the number of users, than the Apple Store, it will have a guaranteed, built-in audience simply because of BlackBerry's strength within the enterprise. Enterprise application developers might target that at the expenses of the Apple's iTunes store, but, ultimately, much of it will be determined by volume.

It's kind of a chicken and egg situation, because application volume is a function of the platform success and vice versa, but ultimately, the platforms that are successful will be determined by volume.

The difficult part here is that whether we're talking native or Web apps for the phone, it's still a fragmented market. The native clients, whether it's an Apple, a BlackBerry, or a Nokia device, are not going to be the same application. It's certainly not "write once, run anywhere," even for the Web. We have different versions of WebKit being employed for the different platforms. If the Mozilla folks are successful in making Fennec a real presence alongside of WebKit in one or more of these platforms, then we'll have fragmentation even at the Web space level.

So, fragmentation is going to be the status quo. That will carry into the future, but success will be determined largely by platform volume.

Gardner: Okay. So, volume is one major force in the market, but we are seeing some innovation technically,

It's kind of a chicken and egg situation, because application volume is a function of the platform success and vice versa, but ultimately, the platforms that are successful will be determined by volume.

and often the best approach for productivity that feeds that volume beast ends up winning. Let's go to David. We've seen developments around HTML advances, scripting language, and open source. From your perspective as a developer, what is getting you out of bed early Monday morning to get into work, when it comes to some of these new technologies?

Beers: I can tell this from the context of how things have evolved at MapQuest. We're a company that grew up on the Web, one of the first Web applications to hit the Internet back in 1996. It wasn't too surprising that we started on the mobile web with WAP technology, the early version of the mobile web. We've been pretty successful with that project within certain limits, but it's definitely been a least common denominator type platform, and it's been difficult to move that.

Gardner: WAP is Wireless Application Protocol (WAP), right?

Beers: Thank you, yes, and it's been a little bit of a silo for us. In other words, you can't really take a WAP website and evolve that very easily into an iPhone-class device, as Wayne is talking about.

Gardner: How long have you been grappling with this? As you say, you were early to the Web. How early have you been to mobile? It seems that when someone is traveling, they're not stuck at a desk, and the more value you can add to them. Right?

Beers: Mobile has been something that's been part of MapQuest right along. It comes in the nature of our business, which is getting people from A to B. So, it's intrinsically mobile oriented.

A lot of what we've been doing in the last couple of years has been developing what we've been calling native applications here. We've talked a little bit about some of the pain of that.

As to the question of HTML 5 and how this changes the picture for companies like MapQuest, we're beginning to see that these capabilities make it so that we can take technology that powers the mapquest.com website that people use on their desktop and repurpose that very quickly to provide a beautiful and powerful Ajax Web experience on modern smartphones.

An easy migration

We found that, considering the amount of development and energy that's gone into making our native applications, and has gone into the mobile website that we have out there right now, what it took to get a great application on the iPhone was minimal. It was very impressive.

A lot of what has made it so intriguing for us is the fact that we're doing real Ajax here on the devices. So, for the problems that have been around with Web apps, which are compounded when you're talking about a mobile network with a huge latency and everything, you really have tools to be able to handle those situations and provide a lot better user experience. It's finally starting to make sense as a Web application.

Gardner: Clearly if you peruse the Apple's App Store, as I like to do, we're seeing quite a shift. The games being promenaded first, but all of a sudden, we're seeing content providers, Web-service providers, and portal providers all coming out with their iPhone version. It doesn't seem like it was that difficult for them. Maybe it's not quite the same full set of features, but it's pretty darn compelling.

Beers: I think so. You asked me what really gets me up in the morning. The other piece of this is, looking at that difficult trade-off we have right now, HTML 5 seems to bring another possible answer to that trade-off.

It's not just a mobile Web story. We see companies like Palm coming out with essentially native application environments that use those

One way you can look at this, as far as where things will go, is you're starting to see phones that essentially will have two tiers on them.

tools for the presentation layer. That brings up all kinds of very interesting and productive new models for releasing essentially a native application that has really rich access to the underlying features on the device -- things like GPS and the accelerometer. That's also a very exciting application model for companies like MapQuest to look at.

Gardner: So, as a developer, it seems that, while it could be quite difficult, the best of these worlds would be to be able to take advantage of a certain set of native functions and specifics to a handset or even a carrier, but, at the same time, leverage what you can across the Web, in terms of Web services and the ability to mash up and take advantage of some of the rich Internet application features. How do you see that hybrid possibility evolving?

Beers: It's going to be very interesting. We're starting to see, with the Palm Pre and webOS, the first signs that this is going to be a new way that applications will be released.

You see another example with the Sprint's Titan platform, which hasn't had a lot of attention in the media. WebKit may actually be a piece of that story that's going to make you hear a little bit more about that.

One way you can look at this, as far as where things will go, is you're starting to see phones that essentially will have two tiers on them. You're going to see developers having a choice to say, "Do I want to be operating completely in JavaScript and exercise my skills there in the WebKit environment, or do I want to have some of the application logic below that, perhaps in a Java environment, where it's essentially being a local server on the device for the presentation layer on top?"

You start to combine those things, and it allows all kinds of different components that are out there and that have been driving the innovation in the Internet to come into play on mobiles in ways that we haven't seen before.

Gardner: Stephen, do you concur with that? Do you think we're going to see the equivalent of a distributed, multi-tier capability at this mobile-device endpoint?

Taking a different approach

O'Grady: Ultimately, we'll get there, and the Palm Pre is a great example, because Palm is taking a different approach to application generation. Undoubtedly, we'll see the hybridization of both Web and native features.

To some extent, we can see some signs of where this will head. Think of the iPhone and the ability of WebKit to automatically reformat due to the gyroscopic functions that are contained in the handset. A Web page can automatically resize itself if the handset is tilted one way or another. We'll see a lot more development like that, which combine the present Web applications with native abilities of the handset, and GPS probably is the most obvious example.

At present, however, the development story is still, generally speaking, one or the other. I don't think that we're there yet.

Gardner: It certainly sounds like an opportunity for the tools people. Let's take this over to Wayne at Genuitec. Coming from a Java, Enterprise, and Eclipse heritage, you're used to complexity. You're used to dealing with difficult integration problems, where developers are accessing assets and resources from a variety of different background technology sources. What do you have in mind for the tools aspect of what we've been discussing in the evolution of these mobile apps?

Parrott: Let me just echo what Stephen was talking about. We were talking about what will come in the future in terms of the hybridized,

One of the forces driving us has been enterprise organizations that want to move to the Web. They're being driven by their own workforce.


blended Web device-type programming model. Where we're at right now is that it's a binary decision. It's native or Web, for the most part, and the Web model is the lowest barrier to clear in order to go native.

Before we jump in and say, "Hey, mobile Web is it," I like to take the approach that, you can pick the right tool for the right problem or the right technology for the right problem. For anybody interested in mobile web, the first thing they should do is educate themselves and learn about what's out there.

If you're interested in mobile Web, Genuitec provides educational resources and a lot of good references. Again, the Web is replete with a lot of emerging information about mobile Web strategy, and we tie that together with our own experience.

Gardner: Let me be sure I understand. So are you talking about how to take an existing Web developer and train them to transition to the mobile Web, or are we talking about getting people native-ready for the mobile Web, almost from a starting blocks position?

Parrott: Obviously, one of the forces driving us has been enterprise organizations that want to move to the Web. They're being driven by their own workforce, sales staff, etc. I'm not thinking so much blue-collar, but white-collar staff that's very mobile, and wants to have a high connectedness, basically they want to run their businesses through their smartphones.

What they're pushing us for is, "How do we get there from here?" They already have a lot of their own infrastructure and resources in place, but moving that to the mobile Web has been a challenge for them.

First step: education

First, they need to be educated about what it takes to get there, looking it through, and evaluating their own resources. David mentioned the Ajax model, HTML 5, and the mobile Web model. It's not a static content type model. So, your traditional static Web developer needs to have some skills and awareness that it's much more functional. It's not just static data, but it's functional.

You have what we call the mobile Web programming model so that you can now build some very sophisticated functionality that you run directly in the browser. You have to be educated about what you want to run local. Do you want to serve static content or do you want to push functionalities directly to the particular smartphone device?

We're servicing both -- helping educate and provide tooling and educational services for both Web developers and traditional enterprise developers -- Java developers who are moving over, bringing their programming know-how and experience, and applying that to dynamic Web applications.

Gardner: It sounds like some path we've already been on. If you have a set of Java developers and you have a set of Web developers, how do they come together to form some sort of an alignment for the delivery

You have to be educated about what you want to run local. Do you want to serve static content or do you want to push functionalities directly to the particular smartphone device?

of these modern applications? That shouldn't be too different when you take them out to the mobile tier. Right?

Parrott: Definitely not, but at a higher level, an organization just needs to understand, how much and what kind of functionality they actually want to push out to the mobile Web. It's really our overall strategy.

Gardner: Right! There are architectural and network considerations that are unique.

Parrott: Correct. You have to remember that you're running on wireless networks. It's not running at Wi-Fi speed necessarily. There are things you have to take into account, as you work through the total end-user experience that you're targeting and then focus on what kind of developers have the experience to build and create that type of experience and delivery for your customers.

Gardner: What about Eclipse? What are some things going on there, some projects, interesting developments and innovation? We've certainly seen a lot of interest in OSGi over the previous year or two. What is the bearing that some of those activities have on moving out to mobile development?

Parrott: I can talk very specifically to one of the projects that Genuitec is heading up. It's called Blinky. The focus with the Blinky Project is to create a mobile-Web development platform. The concentration has been in two areas, both to provide frameworks for building tools that developers could then use for creating really compelling Web applications and also user interface (UI) frameworks or rendering frameworks.

You can think of these as themes. If you want to build a Web application and have it have an iPhone type look and feel, it's easily possible with the HTML 5 technologies. But, your starting point is to work with an existing UI framework that can help you create that kind of end-user native experience.

So, we're working on those two aspects. That's all of part of the open source. If anybody is not aware, Eclipse is a platform for building both tools and run times, and we're focusing mainly on tooling and the UI development in terms of the Blinky Project.

Gardner: Let's go over to the developer. Dave, this open-source development, I assume, is something you've been involved with, as a user, or perhaps a contributor as well. Tell me a little bit about the role that open source has in your mobile development, and then, if you're familiar with OSGi, does that hold any interest for you?

The benefits of open source

Beers: First of all, open source is very important to us from many different directions. We're using a lot of open-source tools. In my time as a developer, I've also had a chance to contribute to a lot of open-source projects, including Eclipse, and then kind of eat my own dog food. It's hard to be a developer these days and not be enjoying a lot of the benefits and productivity that come from the existence of open source.

OSGi is a particularly interesting area for me, and I think it may be becoming more important now with Oracle's acquisition of Sun, because it's really bringing about a new component model for Java, in particular. Part of this problem of fragmentation that we're talking about has to do with the fact that we deal so often, at least in Java applications, with these static stacks. We've got these configurations. We've got profiles. We've got all these optional packages in mobile Java.

OSGi presents the possibility of being able to have just the right stack for what you need and not to worry so much about whether the capabilities are there natively in the phone, because you can add them as a developer.

The idea of OSGi being a component model that's underneath, something like that WebKit layer, is an extremely powerful combination. There you've got standards at both of those layers that I was talking about. I'm very hopeful about seeing that evolve. I agree with Stephen, it's not going to happen this month, but I think we're headed that way.

Gardner: Stephen, any thoughts about it. With OSGi, of course, its heritage was in embedded. So, it's almost designed for this sort of a problem set?

O'Grady: I was about to say exactly the same thing. OSGi is eminently applicable, simply because it does offer you the componentization, to some degree, of the stack, as was just discussed. We've seen this before. Some of the mobile carriers have explored OSGi in varying degrees. We'll certainly see more of that.

The other Eclipse-related mobile story that's probably worth at least a mention is some of the Android work that's going on. There's a plug-in for Eclipse that will allow you to develop in Eclipse and toward the Android platform.

So, both on the server side with OSGi, as well as the tooling side, the client development side, with things like the Android SDK and some of the work that the folks at MyEclipse are doing, Eclipse will really have roles to play on both sides of that equation.

Gardner: Wayne, given that we've identified the mobile Web and its latest incarnations and innovations as an interesting way for the enterprise developers to move quickly to mobile, and the fact that they're getting the push for doing this from their own users, those mobile warriors, how do you get started?

If you're in this mode of training, experimenting, and getting up to speed, where do you even start on that process of going from traditional Web development to mobile Web development?

Parrott: I am going to go ahead and toot our own horn here, but at Genuitec, this is what we're specializing in. We provide a number of online resources and enterprise tools to help users target toward both their enterprise applications and also toward mobile. So, I would say, visit our site at genuitec.com.

The other would be to educate yourself. As I mentioned earlier, there is just a wealth of resources on the Web. Genuitec will provide a book list

We've also learned how these approaches are going to make it easier for the enterprise to get these processes that they've of course invested many, many years and probably millions of dollars in, and bring them out to more users with more payback and return on that investment.

or a bunch of book lists that you can access, read up on, and kind of educate yourself, just to understand whether you really even want to get into this field or not.

Finally, one of the things that I am really proud of is that I believe what really gets you connected is seeing and believing. When I talk to some people, not everybody has access to a smartphone. They may have seen other people with them, but they don't necessarily understand or grok it. One thing that we provide is a very simple micro WebKit browser that you can install and it can run off your desktop. You can explore and experiment with the mobile Web in a way that gives you a first-hand type of experience.

Once you're beyond that, then you have additional roadmaps, depending on the type of complexity that you want to adopt and the type of applications you're going to build, and provide tooling and expertise around that.

Gardner: Okay, I'm afraid we're about out of time. We've been learning about how Web developers can better take their full PC browser applications out to a mobile tier, perhaps without losing the features. We're also looking at how those native capabilities on these handheld devices can be utilized as well, and bringing them together over time is something that I'm pretty excited about.

We've also learned how these approaches are going to make it easier for the enterprise to get these processes that they've of course invested many, many years and probably millions of dollars in, and bring them out to more users with more payback and return on that investment.

So join me in thanking our panel. We've been joined by Stephen O'Grady, founder and analyst at RedMonk. Thank you Stephen.

O'Grady: Thank you, Dana.

Gardner: We've also enjoyed the input from Wayne Parrott, vice president for product development at Genuitec. Thank you, Wayne.

Parrott: Thanks, everyone.

Gardner: And David Beers, senior wireless developer at MapQuest. Thank you, David.

Beers: Thanks all. I enjoyed it.

Gardner: I also want to thank the sponsor of this discussion, Genuitec, for underwriting its production. This is Dana Gardner, principal analyst at Interarbor Solutions. Thanks for listening, and come back next time.

Listen to the podcast. Download the podcast. Find it on iTunes/iPod and Podcast.com. Learn more. Sponsor: Genuitec.

Transcript of a BriefingsDirect podcast on new technologies and approaches that leverage the mobile Web for designing Web applications for hand-held and other mobile devices. Copyright Interarbor Solutions, LLC, 2005-2000. All rights reserved.

Thursday, August 21, 2008

Pulse Provides Novel Training and Tools Configuration Resource to Aid in Developer Education, Preparedness

Transcript of BriefingsDirect podcast on Java training and education with Genuitec Pulse for Java and Eclipse.

Listen to the podcast. Sponsor: Genuitec.

Dana Gardner: Hi, this is Dana Gardner, principal analyst at Interarbor Solutions, and you’re listening to BriefingsDirect.

Today, a sponsored podcast discussion about the complexity around Java training and education. The development toolset, the plug-ins, the community are all very fast-moving targets. It's difficult for trainers, educators -- not to mention the students and budding developers themselves -- to get a full grasp of what's expected of them, and then to find resources that are up-to-date and timely.

We're going to be discussing with some experts how better to organize Java training and education. We're going to look at the Eclipse profiles that can be organized and coordinated using Pulse, a Genuitec-organized tools configuration network function. We're going to learn about how organizations can organize their training, so that students can better anticipate what's expected of them in the real world.

To help us understand some of these issues and work toward some solutions, we're joined by Michael Cote, an analyst with RedMonk. Welcome to the show, Michael.

Michael Cote: Hello, everybody.

Gardner: We're also joined by Todd Williams, vice president of technology at Genuitec. Welcome to the show, Todd.

Todd Williams: Thanks very much, Dana.

Gardner: Lastly, we're joined by Ken Kousen, an independent technical trainer and president of Kousen IT, Inc. He's also an adjunct professor at Rensselaer Polytechnic Institute. Welcome, Ken.

Ken Kousen: Hi, Dana, glad to be here.

Gardner: As I mentioned, complexity and moving targets are part of the problem, but it also seems that there is a disconnect between book knowledge or training knowledge that one gathers about development and what happens in the real world, what goes on with code being checked in and checked out, and how teams are organized. It seems difficult for someone to anticipate what's really going happen.

Let's go to Ken first. Ken, what is the gap, from your perspective, between what students and budding developers get through training and in university settings, and then what's often expected of them in the real world?

Kousen: It's interesting. The gap between what's taught in academia and what's taught in the real world is very large, actually. The classes I teach tend to be in a master's level program, and I teach a couple of classes in developing enterprise applications that are specifically constructed to address this gap.

Academia will talk about abstractions of data structures, algorithms, and different techniques for doing things. Then, when people get into the real world, they have no idea what Spring, Hibernate, or any of the other issues really are.

It's also interesting that a lot of developments in this field tend to flow from the working professionals toward academia, rather than the other way around, which is what you would find in engineering, when I used to be in that area.

Gardner: Todd, when you're doing hiring or are doing development for business, and you're talking to your customers -- folks that use MyEclipse and your services for training and consulting -- are you seeing a worsening situation in terms of how to acquire qualified labor, or do people have a pretty good sense of where to go to find good Java developers?

Williams: Finding quality employees is always a challenge, and probably always will be. Part of what I see as being difficult, especially in the Java and Enterprise Java market, is the huge number of technologies that are being employed at different levels. Each company picks its own type of stack.

Ken mentioned Spring and Hibernate. There is also Java transaction API (JTA), Java server faces (JSF), and Struts, Web framework and persistence technologies, and application servers that are in use. Finding employees that fit with what you are trying to do today, with an eye toward being able to mature them into where you are going tomorrow, is probably going to always be the concern.

Gardner: Now, what's been going on with development, not just the function, but teams, the collaboration, agile types of activities, Scrum? It used to be that people could specialize, stay in one little niche, but now the "master of all trades" seems to be more in demand.

Let's go to Michael. Michael, is development fundamentally changing? When we think of developers, do we need to recast how we imagine them or conceive of them?

Cote: Yes. I think it's fair even to go to the extreme and say absolutely. You look at the employment patterns that most developers find themselves in, and they are not really working at some place three, five, ten, even twenty years. It's not realistic. So, specializing in some technology that essentially binds you to a job isn't really an effective way to make sure you can pay your bills for the rest of your life.

You have to be able to pick up quickly any given technology or any stack, whether it’s new or old. Every company has their own stack that they are developing. You also have to remember that there is plenty of old existing software out there that no one really talks about anymore. People need to maintain and take care of it.

So, whether you are learning a new technology or an old technology, the role of the developer now, much more so in the past, is to be more of a generalist who can quickly learn anything without support from their employer.

You're not going to get a lot of slack to learn things in a given time, paid training, and things like that. You're pretty much left on your own, or there are always cheaper alternatives to go to.

So the heat is really on developers to be Type A people who are always seeking out the best option.

Gardner: Alright. Well, now that we have scared anyone from ever wanting to be a developer, Ken, help us get a little bit closer to earth. What can students do, what can professors or instructors do, to help get more of this real-world perspective into what they do in these courses and in this preparation?

Kousen: It's interesting that while the various tools and technologies evolve, some of the basic principles always hold pretty fast. I've taught this class several times and I have to say that every time I've taught it, it's been very, very different, but the overall architectural issues are pretty constant.

Plus, what seems to follow in the industry are various trends, like an increased emphasis on testing, for example, the recent rise in dynamic languages, and things like that. The idea of continually trying to follow what's going on in the marketplace and seeing what's interesting seems to be very helpful.

I also emphasize to the students that a good source of information is to find some of the better open-source projects, and not necessarily join them, use them, or do anything with them, but follow what they do and see those projects as the communal efforts of some of the best developers in the world.

So, if they all say, "Oh yeah, we obviously have to have this source-control mechanism," then maybe that's an interesting thing that should be looked at, or this particular bug reporting tool, or whatever. I often emphasis that particular direction as well.

Gardner: How about that, Todd? Are these open-source communities, these chat rooms, these forums, the real, practical lab that the students and developer should be looking towards?

Williams: I think to a degree that it's certainly a practical lab that students have easy access to. Obviously, in open source, whether it’s something like the Eclipse Foundation, Apache, or what have you, they make a very explicit effort to communicate what they are doing through either bug reports, mail lists, and discussion groups. So, it's an easy way to get involved as just a monitor of what's going on. I think you could learn quite a bit from just seeing how the interactions play out.

That's not exactly the same type of environment they would see inside closed-wall corporate development, simply because the goals are different. Less emphasis is put on external communications and more emphasis is put on getting quality software out the door extremely quickly. But, there are a lot of very good techniques and communication patterns to be learned in the open-source communities.

Gardner: Now, when we go to community, that also means choice, which is a good thing. But, there is also a downside to choice. There are a lot of variables, many different things to look at. Tell us a little bit about the importance of profiling, and when you have got many new plug-ins to choose from, and you've got lots of commentary and social media being generated about what to use and what not to use.

Give us, Todd, if you could, some idea of the problem set that you saw in the marketplace a couple of years ago when you were thinking about Pulse.

Williams: Let me take a step back and quickly explain what Pulse is for those who aren't familiar with it. We built a general-purpose software provisioning system that right now we are targeting at the Eclipse market, specifically Eclipse developers.

For our initial release last November, we focused on providing a simple, intuitive way that you could install, update, and share custom configurations with Eclipse-based tools.

In Pulse 2, which is our current release, we have extended those capabilities to address what we like to call team-synchronization problems. That includes not only customized tool stacks, but also things like workspace project configurations and common preference settings.

Now you can have a team that stays effectively in lock step with both their tools and their workspaces and preferences.

What drove us to build something like this were a number of things. If you look at the Eclipse market, where we have been for a number of years, there are literally thousands of products and plug-ins for Eclipse. If you just want to go out and take a survey of them, or try some of them, it's a very daunting process for most people.

It starts out when you download Eclipse, go find some plug-ins, possibly looking into Eclipse Plug-in Central, find those update sites, type them in, download the plug-ins, and try them. This pattern repeats for quite some time, while the developer goes out and tries to figure out which of the plug-ins are good and which ones aren't.

With Pulse, we put these very popular, well-researched plug-ins into a catalog, so that you can configure these types of tool stacks with drag-and-drop. So, it's very easy to try new things. We also bring in some of the social aspects; pulling in the rankings and descriptions from other sources like Eclipse Plug-in Central and those types of things.

So, within Pulse, you have a very easy way to start out with some base technology stacks for certain kinds of development and you can easily augment them over time and then share them with others.

Gardner: Ken, help us understand how this can be used in the training and/or academic setting? What is it about Pulse that brings in more of the real world, and anticipates what choices developers are going to have once they get into the nitty-gritty of coding?

Kousen: Looking at academic and training settings, they are a little bit different. In a training setting, one of the real challenges the training classes face every time is getting the initial classroom set up correct. That is often very involved and complicated, because a lot of the tools involved are somewhat dependent on each other and dependent on environment variables and things like that.

So, trying to set up standard Pulse configurations and then being able to set up a classroom using those shared deployments is a very interesting opportunity. I haven't had the chance to do it yet, but I have definitely been talking to some training providers about giving that a shot.

I did try it in a classroom, and it's rather interesting, because one of the students that I had recently this year was coming from the Microsoft environment. I get a very common experience with Microsoft people, in that they are always overwhelmed by the fact, as Todd said, there are so many choices for everything. For Microsoft, there is always exactly one choice, and that choice costs $400.

I tried to tell them that here we have many, many choices, and the correct choice, or the most popular choice changes all the time. It can be very time consuming and overwhelming for them to try to decide which ones to use in which circumstances.

So, I set up a couple of configurations that I was able to share with the students. Once they were able to register and download them, they were able to get everything in a self-contained environment.

We found that pretty helpful, although I've got to say that this year the class size was sufficiently small, so that I don't know that we really got the same benefit we would get in a large classroom, where there would be many, many setup issues to deal with.

Gardner: So, almost mimicking a collaboration activity in a development setting, but in the classroom.

Kousen: Exactly.

Gardner: Are there any particular things that you learned from this exercise that those who might be evaluating and thinking about using Pulse could benefit from?

Kousen: It was pretty straightforward for everybody to use. We had to make sure that people using it had fast download speeds, but that had nothing to do with Pulse. That had to do with the size of Eclipse.

Of course, whenever you get students downloading configurations, they have this inevitable urge to start experimenting, trying to add in plug-ins, and replacing things. I did have one case where the configuration got pretty corrupted, not due to anything that they did in Pulse, but because of plug-ins they added externally. We just basically scrapped that one and started over and it came out very nicely. So, that was very helpful in that case.

Gardner: Michael, as you are listening to this, is there anything that jumps out at you in terms of understanding of Eclipse and its popularity, and then dealing with complexity that you could share?

Cote: I like the comparison of the Eclipse development world, versus visual studio, versus getting the one thing, because it is very accurate. That's sort of the ethos of Java -- maximum "choosability," if you will. It's one of these things in development that takes a long time to accept, but having lots of options is often more expensive and burdensome than having fewer options. Now that said, you want to make sure that you have good fewer options.

In every development team I have been involved with in my previous lives, as it were, anytime someone new comes onto the team, it’s always an extremely difficult issue just to get their tool chain setup correctly.

Having something wrong in the tool chain, the shared tools that the whole team uses, can really be quite disruptive. That's because the way that you assume your team members are going about solving problems is slightly wrong, and so they may not have the fully optimized way that your project is based around.

I guess you could call that the commercial application of that tediousness of setting up the configuration in more of an educational or a training environment. It's difficult to just sort of give someone a print out and say, go setup your stuff like this, because you are always missing little bits, and there is a lot of nuance in how things are exactly setup in the tool chains.

Gardner: Back to you, Todd at Genuitec. Have there been any surprises since you brought Pulse to market in how it’s being used? Are there unanticipated consequences that you would like to share -- the good ones anyway?

Williams: It's been interesting. We have seen a good number of people using Pulse, the way we anticipated it, sharing their tool stacks, and publishing them for their teams.

There seems to be a lot of people that use it privately. They don't share it with anyone, but they use it to manage multiple development profiles. So they might do C++ development one day and Java development the next, or what have you, and they like to keep custom tool stacks just for those things.

Even though they are kind of an island, and we made Pulse to share amongst teams, they find a lot of value in it, just to keep everything tidy.

Cote: If I can add to that, I personally haven't seen people using Pulse like this, because I haven't stuck my head in a developer shop when Pulse has been around. We would typically have a problem where -- across different versions of the project you are working on -- you would have your ID or your tools set up differently.

So, if you wanted to very quickly switch between those different versions, for example, to support or do some debugging in an old version, if there was some support issue, that switching cost between the two setups is a big part of going to fix an older version of something.

Nowadays, you have a lot of virtualization, so you can make this step a little easier, but you end up doing absurd things, like just having machines dedicated to specific versions of the software that you are working on.

If you can more easily switch between the profiles and the configurations that you have, then you can hopefully make it easier and less tedious to support these older products that you tend to have a lot of requests to support.

Gardner: Ken, did you see some advice that you might offer to those, either in academia or in the training field, things that they might want to consider as they are evaluating such things as Pulse?

Kousen: I agree with what the others were saying about the idea of setting up a series of alternative profiles that match the environment you are going to be working in.

I realized, as Michael and Todd were saying that, that I actually do that myself. I have a J2EE profile or Java EE profile, and I also have a regular Java profile, when I am working on different things, because there are certain shortcuts that won't conflict with anything in Java EE, if I use it in Java.

Eventually, I hope when you wind up adding Grails support or Groovy and Grails support to Pulse, it will probably have a configuration environment for that as well. The idea of having a variety of profiles that could each be used in its given time is very helpful.

I know that in a training environment we will definitely try to do that. We will be setting up alternative profiles that can be shared in a particular training class.

Academically, I like to leave things a bit more free form, although I agree that the initial setup is very helpful, because if the students don't have any feel for the environment at all, getting them over that initial hurdle is very, very helpful. After that, letting them experiment is always very, very useful. So that's good.

Gardner: Todd, Ken mentioned support for Ruby, dynamic languages, Groovy. Can you tip your hand a little bit and let us know what you've got in mind in that regard?

Williams: Actually, all of those things are in the Pulse catalog right now. Sometimes they are hard to find, because it's kind of big, but we added search to it to help you run them down. But, there are actually multiple Ruby solutions; I know Groovy is in there.

If a particular solution that you like isn't in there though, it's relatively straightforward to add it, not to the catalog, but you can still add it very, very easily to any of your profiles, either locally or shared.

So, the catalog is like a really good starting point that we try to keep up to date with what our users ask us to put into it. On the other hand, if it contains everything in the world, it gets a bit unwieldy as well.

Kousen: Dana, can I comment on that? I did speak very quickly on that issue. There is a Groovy plug-in in there. I was actually very pleased to see that, because I was concerned.

I've been using the Groovy plug-in for a while, and I wasn't sure whether that was going to be in the catalog at all. It did take me a while to find it, because it was filed under an area that I wasn't expecting, but once I put it in the search box, then it showed up immediately.

The only thing about Grails is that there isn't really a dedicated Grails plug-in yet, and the Groovy plug-in is really moving towards something like that. So, when that becomes available, I'm sure it will be incorporated into Pulse.

By the way, another issue that is very useful is that when I am browsing inside Pulse, just looking around to see what sort of components have been added, it's interesting to see what turns out to be popular; things that I hadn't really anticipated.

For example, I have been using Subclipse for the Subversion plug-in for a couple of years now. In browsing into the Version Control category I see that there are various other Subversion plug-ins as well and also others coming down the line. So that was another capability that I didn't anticipate and found rather interesting.

Gardner: Todd, looking forward a little bit, it seems that this profile information, while useful in a tactical sense, might actually have some strategic value too.

I'm thinking about the metadata that might be available through a profile and a definition of what a developer wants to do from an activity or behavioral or a pattern base. Then, applying that to when they do a search; perhaps refining the search based on their profile at that time, or perhaps using the profile in regard to when they do testing, bills, other aspects of lifecycle management for development.

Have you taken this a step further, where we could take these profiles and use them in a more strategic fashion, or is that something you are looking at?

Williams: That's a great question, Dana. Of course, we have a very large product plan for Pulse. We've only had it out since November, but you're right. We do have a lot of profile information, so if we chose to mine that data, we could find some correlations between the tools that people use, like some of the buying websites do.

People who buy this product also like this one, and we could make ad hoc recommendations, for example. It seems like most people that use Subversion also use Ruby or something, and you just point them to new things in the catalog. It's kind of a low-level way to add some value. So there are certainly some things under consideration.

Gardner: Michael, what do you think of that, taking more profile information; metadata about behaviors, uses, pattern of work, and then applying that to some of the other larger lifecycle activities in development?

Cote: Things like that work out really well, when you have the proliferation of choice that we were talking about earlier, where the systems can always be gained and everything.

This thing is a small enough subset that it doesn't happen, but just seeing sheer quantity-wise and rating-wise what people are using, helps you evaluate. I am probably making this figure up, but if there are 10 different unified modeling language (UML) plug-ins for Eclipse, then you need to somehow narrow down to the ones that are going to work out well for you.

The mixture of the fast and best way to get to that is really just to see which one is being used the most, because chances are, if people are still using it actively, its going to be a popular one. People are pretty fast to dump plug-ins that don't work well for them.

There is a place to capture the metadata or the usage data that's going around with things. That's the kind of thing that usually developers only get a chance to figure out when they are face to face with someone at a conference or other sort of events that don't happen as frequently as you might want to, to simply figure out which plug-in you might want to use.

Gardner: Any time you can take personalization information and automate that or refine searches and activities is certainly a productivity improvement, and Pulse really strikes me as setting up the opportunity to do that.

Cote: Absolutely.

Gardner: Alright. Let's stat wrapping up a little bit. Ken, any last thoughts as a technical trainer about where you would like to see this sort of capability go?

Kousen: I'm not exactly sure where I will be able to take advantage of it. Let me rephrase that. I think the current Pulse configuration is already very useful, and I'm not sure what else I need in order to start trying to incorporate it into an environment.

The only other issue that I wind up having in a training environment is setting things like environment variables onto the operating system. If there is some way we can get that into Eclipse for example, or rather into Pulse, rather than having to do it on the operating system itself -- maybe through the tools or whatever -- then that would be helpful. But I don't know. Right now, I think the situation is pretty good. I can't think of anything else concrete that I would want to add right there.

Gardner: Okay. Todd, thoughts about what educators and trainers should be considering as they look at something like Pulse, and how to exploit it and leverage it.

Williams: One thing that came to my mind, from a student's perspective, is the integrated development environments (IDEs) that are available right now; even the various configurations of Eclipse, are really made for professionals. When you take something like MyEclipse, there is just so much in it.

We need the ability to actually strip down the IDE to only what is needed for a particular exercise. For example, you could set up a profile for the first exercise of the class with just a limited set of tools that a new student would need to get their hands on. It limits the confusion factor. When you do the next exercise, you could easily update the profile; add a few additional tools to it.

So, you have kind of a selected discovery of additional tools and capabilities that coincide with the level of expertise the students are developing, as they are going up the learning curve in a particular course. I was just wondering. Is that the kind of thing that now we have enabled through having a technology like Pulse, that makes delivery of that straightforward, versus what had to be done before.

Gardner: Just for those interested in perhaps getting started, Pulse uses its network. How do people access that, how do they find it, how do you get started?

Williams: Sure. The Pulse website is www.poweredbypulse.com. There is a little 5 MB installer that you download and start running. If anyone is out in academia, and they want to use Pulse in a setting for a course, please fill out the contact page on the Website. Let us know, and we will be glad to help you with that. We really want to see usage in academia grow. We think it’s very useful. It's a free service, so please let us know, and we will be glad to help.

Gardner: Terrific. I want to thank our panelists for helping us dig a little bit into training issues, and some of the solutions that are welling up in the market to address them. We have been talking with Michael Cote, he is an analyst at RedMonk. Thank you Michael.

Cote: Absolutely.

Gardner: Todd Williams, vice president of technology, Genuitec. Appreciate your input, Todd.

Williams: Thanks, Dana, I have enjoyed it.

Gardner: Ken Kousen, independent technical trainer, president of Kousen IT, Inc., and adjunct professor at Rensselaer. Appreciate your experience and input, Ken.

Kousen: Oh, you are welcome, no problem.

Gardner: This is Dana Gardner, principal analyst at Interarbor Solutions. You have been listening to a sponsored BriefingsDirect podcast. Thanks for listening, and come back next time.

Listen to the podcast. Sponsor: Genuitec.

Transcript of BriefingsDirect podcast on Java training and education with Genuitec Pulse for Java and Eclipse. Copyright Interarbor Solutions, LLC, 2005-2008. All rights reserved.

Friday, February 08, 2008

New Eclipse-Based Tools Offer Developers More Choices, Migrations and Paths to IBM WebSphere

Transcript of BriefingsDirect podcast on Eclipse-based tool choices for IBM WebSphere shops.

Listen to the podcast here. Sponsor: Genuitec.


Dana Gardner: Hi, this is Dana Gardner, principal analyst at Interarbor Solutions, and you’re listening to BriefingsDirect. Today, a sponsored podcast discussion about choices developers have when facing significant changes or upgrades to deployment environments. We'll be looking at one of the largest global installed bases of application servers, the IBM WebSphere platform.

Eclipse-oriented developers and other developers will be faced with some big decisions, as their enterprise architects and operators begin to adjust to the arrival of the WebSphere Application Server 6.1. That has implications for tooling and infrastructure in general.

The platform depends largely on the Rational Application Developer (RAD), formerly known as the WebSphere Studio Application Developer. This recent release is designed to ease implementations into Services Oriented Architecture (SOA) and improve speed for Web services.

However, the new Rational toolset comes with a significant price tag and some significant adjustments. Into this changeable environment, Genuitec, the company behind the MyEclipse IDE, is offering a stepping-stone approach to help with this WebSphere environment tools transition.

The MyEclipse Blue Edition arrives on March 15, after a lengthy beta run, and may be of interest to developers and architects in WebSphere shops as they move and adjust to the WebSphere Application Server 6.1.

To help us understand this transition, the market, and the products we are joined by Maher Masri, president of Genuitec. Welcome to the show, Maher.

Maher Masri: Thank you, Dana.

Gardner: Also, James Governor, a co-founder and industry analyst at RedMonk. Welcome, James.

James Governor: Hi, Dana.

Gardner: James, let’s start with you. We’re looking at a pretty dynamic marketplace around tools. There are certainly lots of different frameworks and approaches floating around. Folks are dealing with SOA, with Software as a Service (SaaS), with agile development. They are dealing with mashups and Enterprise 2.0 issues. We’re seeing increased use of REST and SOAP. This is just a big, fluid, dynamic environment.

On the other hand, we’re also seeing some consolidation around runtimes. Organizations looking to cut cost and infrastructure and trying to bring their data centers under as few runtime environments as possible. So, we’re left with somewhat of a conundrum, and into this market IBM is introducing a major upgrade.

Maybe you could paint a picture for us of what you see from the enterprises and developers you speak to on how they deal with, on one hand, choice and, on the other hand, consolidation.

Governor: It's a great question. In this industry we can expect continuing change. If anything is certain, it's that. When we look at this marketplace, if we go back a couple of years into the late 1990s, there was a truism that you could not make money as a tools company. The only way you could really sustain a business would be connected to, and interwoven with, the application server and the deployment environment. So it's interesting that now, sometime later, we’re beginning to rethink that.

If you look at a business like Genuitec, the economics are somewhat different. The Eclipse economics, in terms of open source and the change there, where there is a code based being worked on, have meant that it's actually easier to maintain yourself as an independent and work on a specific set of problems.

In terms of your question about Web 2.0, agile development, and so on, there are an awful lot of changes going on. That does create some opportunities for the third parties. Frankly, when you look at the very largest firms, it's actually quite difficult for them to maintain the sorts of innovation that we’re seeing from some of the smaller players.

In terms of the new development environments, it might be something like the fact that we’re seeing more Ruby on Rails. P scripting languages continue to be used in the enterprise. So, supporting those is really important, and you are not always going to get that from the lead vendors.

I'll leave it up to Genuitec to pitch what they do, but one of the interesting things they did, which you certainly wouldn’t have seen from IBM, was a while back, when they bridged the Eclipse world with the NetBeans ’ Matisse GUI building application development set.

Crossing some of those boundaries and being able to deal with that complexity and work on the customer problems, it's not surprising to me that we’ve seen this decoupling, largely driven by open source. Open source is re-enabling companies to focus on one thing, rather than saying, "Okay, we've got to be end-to-end."

Gardner: So, we've got a dynamic environment. We have some amazing uptake in Eclipse over the past several years becoming a dominant job oriented IDE. We have WebSphere as the dominant deployment platform.

As you pointed out, the economics around tools have shifted dramatically. It seems that the value add is not so much in the IDE now, but in building bridges across environments, making framework choices easier for developers, and finding ways of mitigating some of these complexity issues, when it comes to the transition on the platform side.

Let’s go to Maher. Tell me a little bit about why Eclipse has been so successful, and do you agree that it's the value add to the IDE where things are at right now?

Masri: Let me echo James’ point regarding the tools environment, and software companies not being able to make money at that. I think that was based on some perceived notion that people refuse to pay money for software. In fact, what we've found is that people don’t mind paying for value, and perceived value, when it’s provided at their own convenience and at their own price point.

That’s why we set the price for the MyEclipse Enterprise Workbench at such a low point that it could be purchased anywhere in the world without a series of internal financial company decisions, or even a heartbreaking personal decision.

Although the product was just the JSP editor when it was first launched, today it's a fully integrated development environment that rivals any Tier 1 product. It's that continuity of adding value continually with every release, multiple releases within the same year, to make sure that, a) we listen to our customer base, and b) they get the value that they perceive they need to compensate for the cost that we charge them.

Eclipse obviously has become the default standard for the development environment and for building tools on top of it. I don’t think you need to go very far to find the numbers that support those kinds of claims, and those numbers continue to increase on a year-to-year basis around the globe.

When it started, it started not as a one-company project, but a true consortium model, a foundation that includes companies that compete against each other and companies in different spaces, growing in the number of projects and trying to maintain a level of quality that people can build upon to provide software on top of it from a tools standpoint.

A lot of people forget that Eclipse is not just a tools platform. It's actually an application framework. So it could be, as we describe it internally, a floor wax and a dessert topping.

The ability for it to become that mother board for applications in the future makes it possible for it to move above and beyond a tools platform into what a lot of companies already use it for -- a runtime equation.

The next Ganymede 3.4 and the 4.0 extension of Eclipse is pushing it in exactly that direction. The OSGi adoption is making a lot of people reconsider their thought in terms of, "What application do I write for productivity applications internally, for tools that I provide to my internal and external customers, for which client implementations?"

It's forcing quite a bit of rethinking in terms of the traditional client/server models, or the Web-only application model, because of productivity requirements and so on.

IBM was the company that led the way for all of the IBM WebSphere implementation and many of their internal implementations. A lot of technologies are now based on Eclipse and based on Eclipse runtime.

Gardner: So, we have this big bear, Eclipse, in the market and we have this big bear, WebSphere, in the market. Why is there a need for someone like you to come in between and help developers?

Masri: The story that we hear internally from our own customers is pretty consistent, and it starts with the following. "We love you guys. You provide great values, great features, great support, except I cannot use you beyond a certain point." Companies for whatever internal reasons, from a vendor standpoint, are making the choices today to move forward with WebSphere 6.1, and that’s really the story we keep hearing.

"I am moving into 6.1, and the reason for that is I am re-implementing or have a revival internally for Web services, SOA, Rich-net applications, and data persistence requirements that are evolving out of the evolution of the technology in the broader space, and specifically as implemented into the new technology for 6.1."

Gardner: They need to modernize it.

Masri: But their challenge is similar. Every one of them tells us exactly the same story. "I cannot use your Web service implementation because, a) I have to use this web services within WebSphere or I lose support, and b) I have invested quite a bit of money in my previous tools like WebSphere Application Developer (WSAD), and that is no longer supported now.

"I have to transition into, not only a runtime requirement, but also a tools requirement." With that comes a very nice price tag that not only requires them to retool their development and their engineers, but also reinvest into that technology.

But the killer for almost all of them is, "I have to start from scratch, in the sense that every project that I have created historically, my legacy model. I can no longer support that because of the different project model that’s inside."

For example, Rational 7.0 is only one of the few versions of WebSphere that supports 6.1 and supports all of the standards for Web services, for AJAX support, for persistence requirements that they need to modernize. They have to implement it, but cannot take, for example, an existing WSAD project, import it into Rational 7.0, and continue development. They pretty much start from scratch.

Gardner: Let’s go to James for a moment. James, you’re familiar with the IBM stack and their road map. Why are they doing this? It seems to me that there is an application lifecycle management (ALM) set of benefits that the Rational toolset and platform bring that IBM is trying to encourage people to take advantage of. It does require transition, but they have a larger goal in mind. Perhaps we should address this ALM, or do you have other thoughts about this transition?

Governor: From an IBM perspective, it’s a classic case of kind of running ahead of the stack. If you see the commoditization further down the stack, you want to move on up. So IBM looks at the application developer role and the application development function and thinks to itself, "Hang on a second. We really need to be moving up in terms of the value, so we can charge a fair amount of money for our software," or what they see is a fair amount of money.

From an IBM standpoint, I think they really looked at players such as Genuitec, looked at where Eclipse was going, and they thought, "Wait a second. We really do need to be moving forward with this notion of software development."

If you talk to a lot of developers, they don’t really think of the world that way, but many of their managers do. So, the idea of moving to situation where there is better integration of the different datasets, where you've got one repository of metadata moving forward with that kind of stuff, that’s certainly the approach they are taking.

The idea is you've got "auditability," as you build applications. You’re going from a classic distributed development, but you’re doing a better job of centralizing, managing, and maintaining all the data that’s associated with that.

The fact that IBM is making that change is indicative of the fact that when they look at the market more broadly, they think to themselves, "Well, where is our margin coming from?"

IBM’s strategy is very much to look at business process as opposed to the focus on just a technical innovation. That certainly explains some of the change that's being made. They want to drive an inflection point. They can't afford to see orders-of-magnitude cheaper software doing the same thing that their products do.

Gardner: As we mentioned earlier, there are so many complexities involved in decision making now, different approaches to creating services, that the operators and the vice presidents of engineering are saying, “Wow, we need to manage this complexity.”

They are looking for life cycle approaches, ways of bridging design time and runtime. IBM is addressing some of these needs, but, as you point out, developers are often saying, "Hey, I just want my tool. I want to stick with what I know." So we’re left with a little bit of a disconnect.

I’m assuming, Maher, that this is where you’re stepping in and saying, "Aha, perhaps we can let the developers have it their way for a time to mitigate the pain of the transition, at the same time recognizing that these vice presidents of engineering and development are going to need to look at a much more holistic life-cycle approach. So, perhaps we can play a role in satisfying both." Am I reading too much into that?

Masri: No. We understand internally that different technologies have different adoption life cycle behind them. ALM is no different. It’s going to take a number of years for it to become the standard throughout the industry, and it is the right direction that almost every company is going to have to face at some time in the future.

The challenge for everybody, us and IBM, is the bottom-up sale process, to provide the tools and the capabilities for companies to embrace, for people to embrace those technologies, and, at the same time, putting the infrastructure in place for managers to be able to continue to manage projects into success.

Our decision is very simple. We looked at the market. Our customers looked back at us and basically gave us the same input. If you provide us this delta of functionalities, specifically speaking, if you’re able to make my life a little easier in terms of importing projects that exist inside of WebSphere Application Developer into your tool environment, if you can support the web services standard that’s provided by WebSphere.

If you can integrate better with ClearCase from a code management standpoint, and if you could provide a richer deployment model into WebSphere so my developers could feel as if they’re deploying it from within the IBM toolset, I don’t have the need to move outside of your toolset. I can continue to deploy, develop and run all my applications from a developer's standpoint, not from an administrator's.

Obviously if you are an administrator and have one to three people within the company that maintain a runtime version of WebSphere, you will need specific tools for that. We’re not targeting those one to three people. We’re targeting the 10 to 500 developers internally that need to build those applications. That’s really where Blue is coming from.

Governor: Maher, can you be a little bit more specific about it. You just used the top-down bottom-up or top-down in terms of your argument. Can you talk a little bit more to sort of that and your sales staff?

Certainly, from RedMonk’s standpoint, we do tend to be more aligned with the bottom-up, just in terms of our customer and community base. But, in terms of what you’re seeing and saying, how is what you do different from IBM? I didn’t quite get that from your last comments.

Masri: I'll give you a very simple example. Just take the experience of a developer installing MyEclipse or installing RAD from ground zero. MyEclipse, you can install in a two-megabyte root install. It installs a 600-megabyte version on your desktop that contains all the tools. You no longer need to buy additional tools from somewhere else. If you need to do UML development, if you need to do UI design, all that is included as one bundle within MyEclipse.

If you install RAD, you need a multi-DVD, six or seven gigabytes, I understand, in order just to begin the installation. The configuration is a nightmare. Everyone is telling us that it's a very difficult configuration process just get started.

MyEclipse is part of a very rich, simple profile that a user can download directly through the MyEclipse site or through our managed application environment inside of Pulse. You can be up and running with tools, with runtime configurations, and with examples, literally within minutes, as opposed to within hours or days beyond that.

On the issue of simplicity, the feedback that we keep getting is that our response level in terms of request for features, request for innovations, request in the technologies, we can deliver within months, as opposed to years or multi-months, when looking at the competition. All of that becomes internalized from the developer standpoint into, "I like this better, if it can bridge that gap that I now have to use this technology, in order to satisfy my business requirements."

Gardner: Perhaps another way of asking a similar question is: you are in beta now. You’re going to be coming out on March 15 with MyEclipse Blue Edition. What's the difference between MyEclipse and MyEclipse Blue Edition?

Masri: Excellent point. MyEclipse Blue Edition is inclusive of all MyEclipse professional features. It’s roughly on the order of 1,000 to 1,500 features above and beyond what the Eclipse platform provides, as well as the highly targeted functionalities that I mentioned. It can import and manage an existing project that you had previously inside WebSphere application developer and can develop to the Web services SOA standards that are specified into the WebSphere runtime.

It has much better integration into IBM code management, ClearCase technology, and almost an identical implementation of what you possibly could see inside Rational for deployment model and the ability to debug an existing project or a new project into the runtime environment.

Gardner: Developers, of course, are hard to come by in a lot of regions around the globe. There’s a lot of competition. Organizations like to keep their developers happy and productive. At the same time, they need to deal with some of the complexity issues of moving to SOA. If they're WebSphere shops, they know that they are going to be tied into that for some period of time. It does sound like you are trying to give both of these parties something to be a little bit cheery about.

Governor: The one of the things that I think is important about open source and understanding open source in the enterprise, but also more broadly. Sometimes you think about open source as a personal trainer for proprietary software companies. You've got these fat, flabby toys and they need to get a life. They need to get on the treadmill. They need to get thinner and more agile. They need to get more effective. Frankly, it was ever thus with IBM. IBM is a pretty big beast.

Let me go back to the old mainframe times to think about Amdahl as a third party. When the IBM salesperson came in, you always made sure you had an Amdahl mug on the desk, right in front of the salesperson. Obviously, we’re a few years on now, but that dynamic remains important. As much as organizations balance BEA WebLogic and WebSphere against one another, or WebLogic and JBoss Application Server against one another, you would also want a balance in your toolsets.

One interesting thing here is that because you've got the specificity around WebSphere, and the sort of value prop the third party is putting forward, you're able to start that balance, that conversation to drive innovation, to drive price down. That’s one of the really useful things that Eclipse has enabled and delivered in the marketplace. It helps to keep some of the bigger vendors honest.

Gardner: So, the need to support heterogeneity is going to remain in both tools and runtime, but we’re also facing the time when heterogeneity isn’t going to include hybrid approaches to deployment. And so, we’re seeing more people interested, particularly if they are ISVs or perhaps small- to medium-size businesses in taking advantage of some of these cloud-computing options. I'm thinking of course of Amazon and some others. Tell us, Maher, how this choice in tool and heterogeneity plays into some of these hybrid approaches of deployment in a cloud of some sort.

Masri: Let me expand on James’ point and then I’ll add to it. I just want to make sure that we’re not trying to present MyEclipse Blue as if we are trying to compete with IBM, which is really could be easily perceived there. What we see is an under-served market and people that are trying to make the decision, but cannot afford to make that decision.

There are companies that are always going to be a pure IBM shop and no one is going to be able to change their mind. The ability to provide choice is very important for those that need to make that decisions going forward, but they need some form of affordability to make that decision possible. I believe we provide that choice in spades in our current pricing model and our ability to continue to support without the additional premium above that.

Going forward, I fully agree with you that the hybrid model is very interesting, and we see it in the way that companies come back to us with very specific feedback on either MyEclipse or our Pulse product. There's quite a bit of confusion out there, in terms of how Web 2.0, Rich Internet Application (RIA), and Rich Client Application are designed and geared to provide and all the underlying technology to support that in terms of runtime.

There seems to be a dichotomy. I could go in the Web 2.0 world and provide a very rich, all Web enabled, all Web centric technologies for my end-users because I need to control my environment. The other side of that is the rich client application, where I have to have some form of a rich client implementation with full productivity applications for certain people, and I have to divorce the two because there is no way I can either rely on the Web or rely on the technologies or rely on anything else.

Everyone that we’ve talked to so far has a problem with that model. They have to have some form of very strong, rich implementation of not necessarily a very fat client, but some form of a client on the end-user’s desktop. They need to be able to control that, whether you are using very specific implementation of Web Services, talking to somebody else’s Web services, need to use a very specific persistent architecture, or have to integrate with other specific architectures. It gets very dicey very quickly.

That’s really where we saw the future of the market. This is probably not the right time to talk about this specifically, since the topic is Blue, but that’s why we also moved into the managed-application space and into our other product line called Pulse. This is for end-users who are using Eclipse-based technology right now, and in the future far more than that. They'll be able to assemble, share, deploy and manage a stack of applications, regardless of where those applications reside and regardless of the form of technology itself.

Take, for example, a rich-client runtime of Eclipse running on someone’s desktop. All of a sudden, you have a version of software that’s you can deploy and manage, but it already has an interface into a browser. You can provide other Web 2.0 and RIA models, as well as other rich Internet technology, such as a Flex and Flash. These technologies are merging very quickly, and companies have to be right there to make sure they meet those growing demands.

Gardner: It sounds like you're really talking about risk mitigation, trying to find some focal point that allows you to support your legacy, move to the rich-client and SOA activities, as well as be ready to go to what some people call Web Oriented Architecture, and take advantage of these new hybrid deployment options. Does that sound like what you're doing?

Masri: That's a fair statement.

Gardner: James, is this something that we can expect to shake out soon, or are companies going to be dealing with heterogeneity -- not just in terms of technology, but in approaches -- for some time?

Governor: We actually see an acceleration in this area -- tools and apps that span clients and the Web. I’ve taken to calling it the "synchronized Web." How can you have two different sets of services talk to one another? In terms of how you develop in that environment, you’ve got to develop conversationally. It’s about message passing. Because of that, we all are going to see some changes around the language choices.

We're seeing some interest in terms of some interesting new development languages, such as Erlang and Haskell. We are certainly seeing interest from developers in those areas.

It's like enterprise software companies not having an open-source strategy. Basically, you need one. From an economic standpoint, you just don't have a choice. Any software company that doesn’t have a thorough-going strategy for understanding and developing both for Web modes and offline modes is really missing the point.

Whether we're thinking of our clients that come from Google Gears, whether we are thinking about offline clients using an environment like Adobe's Apollo Integrated Runtime (AIR), we're already thinking about spanning clients and websites.

From an enterprise standpoint, the same choices need to be made. User expectations now are that, they are going to be able to have some of those benefits and centralization, but they are also going to be able to have rich experiences that they're used to on desktop clients.

This is a very important transition and, whether it’s Pulse or any number of the Web apps we're seeing this from, we are definitely seeing this in enterprise Web development. It's really important for us to be thinking about the implications, in terms of the language support and in terms of runtime. We've already mentioned the Amazon Web services back end. We're going to be seeing more and more of that stuff.

There’s a little company called Coghead, and it’s really focused on these kinds of areas and it’s now excellent. They've chosen Amazon Web services as a back end and they've chosen Derby Flex as a front-end to give that interactivity. The Amazon model teaches, or should teach, a lot of software companies some important lessons. When I look at developers, certainly grassroots developers, it has almost become a badge of honor that you're getting, "This is what Amazon charged me this week."

The notion of the back end in the cloud is growing in importance again. That’s probably why IBM just announced yet another one of its, "Hey, we're going to take a billion dollars and move it towards cloud-computing" kind of initiatives.

Gardner: Right. We’ve obviously seen a lot of change in the market. Organizations and enterprises that depend on an ongoing evolution on a single-stack approach need to try to come up with the tooling and framework and environment that allow them to accomplish what they need from the backwards-compatibility perspective. They also need to put themselves into as low a risk position as possible for taking advantage of these dynamic environments and the change in the economics and the landscape.

We've been talking about the transition to WebSphere Application Server 6.1 and the implications for tooling, the pending arrival of MyEclipse Blue Edition from Genuitec, helping companies find some additional choices to manage these transitions.

Helping us weed through some of this -- and I have enjoyed the conversation -- we have been joined by Maher Masri, president of Genuitec. Any last words, Maher?

Masri: Just a reminder that the Blue Edition first milestone releases will be available in February. There will be a number of milestone releases that will be available for immediate access and we encourage people to download and try it.

Gardner: Very good. And, also James Governor, co-founder and industry analyst at RedMonk. What's your parting shot on this one, James?

Governor: Let’s get specific again. Some of this has been a little bit blue sky. I think it’s very interesting that IBM is has posted a pretty good set of financial results today.

Gardner: They're not going away, are they?

Governor: They are not going away. That’s exactly right. It used to be said that IBM is not the competition; it is the environment in which you compete. It seems to me that Genuitec and many others are probably a pretty good example of that. That was well put by you. IBM isn't going away.

Gardner: Well, thanks. This is Dana Gardner, principal analyst at Interarbor Solutions. You’ve been listening to a sponsored BriefingsDirect podcast. Thanks, and come again next time.

Listen to the podcast here. Sponsor: Genuitec.

Transcript of BriefingsDirect podcast on tool choices for WebSphere shops. Copyright Interbarbor Solutions, LLC, 2005-2008. All rights reserved.