On the JVM

Do you ditch Java and go with Kotlin, Scala, Groovy, Frege, or do you keep the Java faith?

Date/Time:
Thursday 11 October 2018, 6.00pm - 9.30pm

Venue:
BCS, 1st Floor, The Davidson Building, 5 Southampton Street, London, WC2E 7HA | Maps
The nearest underground stations are Covent Garden and Charing Cross.

View the live stream

Speaker:

Russel Winder

Details:

We welcome you to the opening talk of the group's 60th annual season. Advanced Programming is the longest standing BCS specialist group, with our 60th anniversary towards the end of next year.

Java has been around since the early 1990s. With it came the JVM. Both originally evolved very slowly, far more slowly than improvements in software development technologies and processes. The slow evolution of the JVM is not that big a problem. The role of the JVM is to commoditise hardware, for which it is very successful, at least for long-running server-like programs. It is much less successful in the command line tool arena dominated by Python, Bash, Ruby, etc.

Java, at least in its role as a server-side language, has been quite successful, but until recently it was old, it looked old, and it was not evolving to stay relevant. Of course, Java 8 was a huge revolution not just in the Java language but also in the attitude to Java evolution. Has this changed the JVM milieu?

Until the change of development process that gave us Java 9, Java 10, and now Java 11 all in a matter of two years, people had to create new programming languages to get modern programming techniques. We have had, over the years, a succession of languages with the most famous being (arguably) Kotlin, Scala, Groovy, but there are many, many more, such as Frege, Fantom, Gosu, etc.

Have the people who were clinging (desperately?) to Java when there were other, better languages for development done the right thing? Is the new-found evolution speed of Java a waste of time and energy because Java is still not keeping up with the current best of breed of programming techniques?

In this session, we will unpack some of these issues and possibly not come to a definitive conclusion. And yet we might.

About the speaker:

Russel is an ex-theoretical high energy physicist, ex-UNIX systems programmer, ex-computer science academic, ex-startup CTO, ex-startup CEO, ex-independent consultant, ex-analyst, ex-author, ex-expert witness, ex-trainer, not yet an ex-human being. Still interested in programming and programming languages, concurrency and parallelism, and build.