Java’s key to success is simplicity

Java's key to success is simplicity

Java’s dominant success in equaling  relevant on the ever-changing landscape of software development has been its relative simplicity.

On Wednesday, Oracle celebrated the 20-year anniversary
of the birth of the Java programming language with a blitz of
marketing. Certainly the largely pre-Internet IT landscape was far
different when the language was introduced by Sun Microsystems (which
was purchased by Oracle in 2010). Yet Java has remained on the
development workbench when many other widely used languages of the
1990s, such as Delphi or Perl, have been pushed to the side or used only
for a select set of duties.
“The core values of the
language, and the platform, are readability and simplicity,” said Mark
Reinhold, Oracle’s chief architect for the company’s Java platform
group.

It acts as the engine for both very
small devices and the largest cloud computing systems. Google uses the
language as the basis for programs that run on Android-based mobile
devices. On the other end of the spectrum, the Map/Reduce framework for
the Hadoop processing platform requires Java code to crunch petabytes of
data.

 Recently as published ,
you’d be hard-pressed to find programming languages in as many corners
of the computer industry as Java. It routinely tops, or is near the top
of, surveys
of the most widely used programming languages. Oracle estimates that
the language is used by over 9 million developers and powers more than 7
billion devices.

Readability
is a particularly valuable trait for a programming language, especially
one used for writing enterprise software, Reinhold explained. With
complex software, programmers must be able to understand code that may
have been written months, or even years earlier.
“Most of the cost of maintaining any body of code over time is in maintenance, not in initial creation,” Reinhold said.

Programmers like Java because, among other things,
it is a very readable language, compared to the thickets of dense code
often produced using languages such as C++ or Perl. “It is pretty easy
to read Java code and figure out what it means. There aren’t a lot of
obscure gotchas in the language,” Reinhold said.

Other properties also have worked in Java’s favor, Reinhold added. One
is Java’s long-touted “write once, run anywhere,” capability. Because
the code runs on the cross-platform Java Virtual Machine,
developers can write a Java program on a Windows laptop, then run it on
a Linux or Solaris server without recompiling the code for the new
platform.

Oracle, and Sun before it, were also mindful
about long-term compatibility, which helps keep perfectly serviceable
software running for as long as possible. “Every time we do an update
release, or a major release, we, and the entire ecosystem, are strongly
committed that old applications will continue to work,” Reinhold said.

For
Al Hilwa, who covers software development for IDC, this long-term
support, along with the “methodical evolution” of the language, is what
gives Java its staying power.
“Using Java in Android was
definitely something that has extended its life as a valuable skill-set
and good Oracle governance in recent years has been helpful,” Hilwa
wrote in an email. “The maturity of the technology … should not be
underestimated, especially when compared with the many dynamic languages
that have become popular in recent years, though have not been able to
exceed Java’s adoption rate.”

The
idea is to make Java more suitable for smaller devices, such as the
expected wave of Internet of Things devices. “We want to subdivide it
into modules so you can choose what you can use for your application,”
Reinhold said.
Such work may be instrumental in keeping Java vital for the next 20 years of computing.

Oracle continues to move the language forward with these goals in mind. For the next major version of the language, Java 9, due in September 2016, the language’s designers are reorganizing Java into a modular architecture.

 I rest my case!!!