Friday, July 29, 2005

Java Economics

How important is portability? Since the release of J2EE, vendors have claimed adherence to standardization, while telling customers how to implement special features only available on their platform. But beyond specification compatibility, what is portability and how does it relate to developers?

First, portability is simply the ability for applications to be deployed on two or more app servers. Second, the measurement of this rests with Sun's Application Verification Kit (AVK). This is all that needs to be known about portability. If a vendor does not provide a standard run-time, then it does not support the value proposition of portability. If an application does not deploy on two or more app servers, then the developer has chosen not to adhere to J2EE standards. The implications of non-portability are nearly always higher maintenance costs, whether or not the customer re-deploys on a different app server at any point in the application's lifecycle. To avoid non-portability, customers should use the AVK to test all of their J2EE applications and components, and take steps to correct for non-portability. If the AVK certifies that the application is 100% J2EE, and it can be determined that the app server is non-compliant, then the customer should switch platforms. If the application or component proves to be less than 100% J2EE, steps should be taken to make the application compatible, and thus portable.

Developers, more than any other IT constituency, understand the benefits of portability, especially as it relates to maintainability. It cannot be epected that the same developer will manage the app throughout the lifecycle, and therefore developers monitor portability to enable other developers to make changes and enhancements. However, the best means to ensure portability and save customers many hours of development work is to use Sun's AVK.

What are web services? Java web services defines the specifications necessary to enable inter-operability of applications and components. The specifications to allow Java applications and components to be exposed as web services are the Java API's for XML, known as the JAX technologies. The JAX technologies to map, bind, register, and issue remote procedure calls on web services. JAX became a standard implementation with J2EE 1.3, and will provide additional capabilities with the release of J2EE 1.4. The key point for customers, developers, and system integrators is to get started with utilizing the ease and flexibility of Java web services by learning the capabilities of JAX.

1 Comments:

At 12:51 PM, Blogger javamaniacho said...

Yawn, give me a break. We've probably never met but I must say Your comments although lucid, in part, stop short of bringing us current with what we've been seeing out in the market place. Although IT spend has risen slightly, the race is to optimize existing infrastructures to the nth degree and then some. No chip is at rest in the data center. If it is not crunching algorithms it’s hosting an international Halo tournament.

It is estimated that over half of all CPUs in large data centers sit idle for 25 to 555% of the time on average in a seven day week. Harnessing that lag time is the main focus on most CTOs today since it represents huge cost savings that they rather spend on strategic initiatives such as IT productivity and readiness, fulfilling back orders on business line productivity and analytic apps, end point services and the elusive, flexible heterogeneous architectures. Which supports your argument on open, component based, apps since integration is still the biggest monkey on IT's back.


It is the same ol' record we've been hearing for a decade only the title has changed along the way. Of course there has been some success in portability and componentization as the community continues to increasingly adopt and depend on J2EE and J2SE for mission-critical apps. that require more flexibility, quicker deployment, and simplified integration, integration and, oh yeah zero down time.

However, the appserver, the container or plumbing if you will, where these apps perform has not been able ton seriously address the optimization issue on the CPU. Its been ~about 6+years since the execution of Net Dynamics, and only last year had its capabilities been surpassed. Architectures on aspersers have been rewritten and re written and we are still only dhal way there to meet the customer demand. Oracle ripped out and bought a new architecture every quarter it seemed for a while to still only claim a small slice of a huge market. Further more, the commoditization of the appserver and its add-ons like portal and integration etc. coupled with the increasing reliability of open source solutions makes it seem likely that this will whittle down to one or two providers as it is now, but with out the hungry innovators which are in fact the only hope that left to figure it out.

So all pessimism aside there is hope to bleed those CPUs dry 24X7 effectively but it lies in hardware not all software. A couple of players have had some exciting results with a little box that plugs into the node and manages all the optimization routing and reporting etc. Best feature is the simplicity. You plug it into a node, cluster or what ever and walk away. This little router size, maybe bit bigger box, managed what seemed to be about 24CPUS in a heterogeneous environment with no problem maxing out the CPUS and a slew of slick management intuitive features to boot. In one case reducing idle time to less than 3% from the 45%in this mostly Sun and IBM setup. MSFT sat on the sidelines for this test but proponenets say the little router can do it with all and any, we’ll see.

If a real traffic cop has finally hit the street and delivers on its promise As a community we’ll finally address customer needs and maybe even have some time to continue innovating rather than working to just keep it all glued together.

Open source apps to which I eluded earlier are available all over the largest Web based Java Pioneer Community on the planet: http://java.net . Globally collaborating ,businesses, community experts and enthusiasts alike, are together bringing to market the snap in snap off architectures and apps that will redefine the approach to software development. They have found a common model for rapid open source based software development with mutual benefit. The meeting plaece? The platform for global collaborative software development, java.net, bridging divides across global new allies; Big business, leading scholars, technology and community leaders and tooling them with the latest global collaboration tools enabling then to finally harness andn bring to market the true killer apps redefining the way we will live.

Its a jungle out there...

 

Post a Comment

<< Home