Enterprise Java development remains challenging but will Sun's
new kid on the block JSC build support to challenge the might of
Visual Basic and .NET?
Java is generally perceived as being less productive and more
complex than Microsoft technologies, in particular .NET. However,
many Java suppliers have developed tools to bridge this gap. Sun,
with its Java Studio Creator (JSC), is one of the latest to hit the
market .
The number of suppliers providing a credible software
infrastructure services stack to build, integrate, deploy, and
manage enterprise applications will stabilise in the next year or
so, but which should you choose?
To reduce risk, organisations should evaluate a broader platform,
covering web services, development, enterprise application
integration, business process automation, portals, security, data
and content management. And competition is bound to be fierce in
areas where suppliers provide functional overlap.
Developer productivity is the focus of most commercial development
tools. The move from client/server to internet applications has
introduced new levels of complexity to application development,
often to the detriment of productivity. This has certainly been the
perception with J2EE.
Sun has recently shipped its JSC product and joins others in
delivering Java tools designed to provide productivity similar to
Microsoft's Visual Basic. Derived from Sun's Netbeans open source
project, JSC is focused on building web applications using standard
Java functionality, without the need for additional programming
frameworks.
The battle for developers' hearts and minds will continue during
the period 2004 to 2006, as each of the platform suppliers seeks to
solidify and grow market share and to pre-empt Microsoft's drive
toward its Longhorn platform and associated technologies.
In addition, the shift toward web services and composite
applications will create new competitors in the market, as package
suppliers such as SAP and software-as-service suppliers such as
Salesforce.com approach the market from alternative vectors.
By 2007/2008, the market will have shifted to three key development
elements using the model-view-controller pattern:
- Forms: the view is defined with XML using visual construction
tools
- Services: the model elements are defined with traditional
systems languages such as Java or C# or by wrapping legacy
systems
- Scripts: the controller will be driven by dynamic scripting
languages (eg Groovy or the evolution of Visual Basic) performing
composition, workflow, translation, and event
management.
Up to 2009, this churn of technology will improve overall
productivity but will also keep IT busy with changing paradigms and
technology platforms.
Several suppliers have tackled the J2EE complexity issue. Many of
these products have been created by start-ups that have come and
gone, often failing because of the use of non-standard Java
technologies. Such products rely on proprietary runtime frameworks,
and betting on a small supplier can present too high a risk.
In addition, many of these products have been targeted to
traditional Java developers who are often more code-focused and
resist having their "craft" trivialised or made "easy".
Prior to the release of .NET, the trend was towards moving all
development to Java. However, as Java complexity rose to meet the
needs of distributed applications and .net appeared, many former
Visual Basic developers pushed to stay with Microsoft to retain
productivity and to make use of existing skills.
In addition, interoperability through web services meant this was
not an either/or decision. For the main Java tools and platform
suppliers (BEA, Borland, IBM, Oracle), this created a renewed need
to address the Java productivity gap. However, Sun was fairly
dormant toolwise in the period 2000 to 2003, though it was not a
pure tool issue, and most solutions tended to require proprietary
extensions to Java.
When IBM released its Eclipse project to open source, it quickly
gained momentum and obscured Sun's open source Netbeans project.
Eclipse has now become a dominant integrated development
environment platform for Java development, supported by numerous
third parties and used by multiple suppliers as the foundation for
their development environments. Through all this, nothing has
really occurred to blunt the fast adoption of .net.
According to Meta Group research, .net adoption has grown from 24%
of organisations in 2003 to more than 60% by the end of 2004. Java
use has grown from 48% to 72% of organisations during the same
period. Such figures emphasise the point that most organisations
will use both technologies.
In 2003, Sun announced project Rave, an attempt to offer simplified
development with the productivity of Visual Basic to Java. This
product has now been delivered as JSC. However, though the product
is built on a mature foundation, it is still far from the polish of
Visual Basic.
Unlike Borland, IBM, or Oracle, Sun lacks its own integrated
lifecycle support, relying instead on partners or more basic open
source options (eg CVS for version control versus IBM Rational's
market-leading Clearcase product).
It is also questionable who will be attracted to JSC. The product
does not have the breadth of Visual Basic either in function or in
choice of components. JSC's relative newness to the market means
there are few mature third-party components and fewer
out-of-the-box components (50 for Microsoft, 23 for JSC). However,
this will change with time.
The primary interest for JSC is likely to come from the educational
market, hobbyists and small departmental websites in Java-centric
organisations. The majority of developers will be attracted to
full-feature environments such as Borland's JBuilder, which have a
full integrated lifecycle suites backing them up.
In the same fashion, Sun's JSC product should gain broader overall
adoption, though this will ultimately depend on Sun's marketing
efforts.
Organisations that use web applications and have struggled with
productivity or developer resistance to Java should explore JSC as
a potential solution. The general concept of migrating developers
to a single technology platform and programming language has merit:
ease of maintenance, "portability" of developers, and long-term
reduction in overall training costs.
However, it will be very difficult to move an organisation to pure
Java use. The current trend toward smart clients, and the ability
of .net to integrate neatly with the Windows desktop, will continue
to create a strong demand for this technology. Also, though Java
tools may make many programming tasks as easy as Visual Basic, this
will not overcome familiarity with Windows APIs.
Pure developer productivity will become less important than
building fast in a well-architected way and working well in team
situations. To play a strong role in this market, Sun will have to
fill out its development platform and market extensively to
developers. Introducing JSC and reinvigorating the Netbeans
community is a good first step, along with innovative pricing
policies for Sun's Java Enterprise System platform.
Thomas Murphy is vice-president of integration and development
at Meta Group