Review: NorDevCon Pre-Conference Special

pre-conf

The evening before NorDevCon, I went along to the pre-conference special meetup which was held at the Liftshare offices, followed by a meal at Pizza Express where we had a chance to speak to some of the presenters and other attendees.

This was my first visit to the Liftshare office and I think it looks very smart and modern. I enjoyed the quirky décor such as the hanging egg chairs in the reception area. Also, many of us had a go on the Liftshare slide before the talks began, which was fun!

The session kicked off with Russel Winder and his talk “Why wait for Java 8 when you have Groovy?”

Russel explained that Java 8 changes the whole Javaverse. It is a massive revolution in Java despite being an incremental change and it is due for release on 18th March. The new features include Nashorn, JavaFX, Lambda expressions (the single most important feature) and enhanced collections. Russel explained that Groovy already has these features, so you don’t have to wait until Java 8 is released to try them out.
From a straw poll of the audience, the majority of Java developers present were still using Java 6, with a few using Java 7.

Here is a brief summary of each of the new features:

  • Nashorn. Nashorn is a JavaScript engine developed in the Java programming language by Oracle. This will allow users to embed JavaScript in Java applications via JSR-223 and to develop standalone JavaScript applications.
  • JavaFX. JavaFX is a set of graphics and media packages that enables developers to design, create, test, debug, and deploy rich client applications that operate consistently across diverse platforms.
  • Lambda expressions. Lambda expressions (anonymous functions) are designed to allow code to be streamlined. The point of Lambda is to be able to pass some code to a method rather than objects. When a Lambda expression is written, it is translated into a functional interface at compile time.
  • Enhanced collections/Java 8 streams. In Java 8 there is new collection called a “stream.”, which is a one-time-use object. They are meant to make manipulating the data easier and faster.
  • No more PermGen! G1 garbage collection is now the standard. The Permanent Generation (PermGen) space has completely been removed and is kind of replaced by a new space called Metaspace.

Russel argued that Java has a reputation for being verbose, and that Groovy was designed to have a very light-weight syntax.

I personally haven’t used Groovy. In fact my manager advised me against learning it, saying that it’s mostly aimed at people who are moving to Java from PHP and similar scripting languages.

Next up was Jon Jagger talking about Systems Thinking. This involves thinking about systems as dynamic, evolving patterns of interaction and feedback. Jon explained that influence is both a cause and effect, and that nothing is ever influenced in just one direction. As an example, if a development project has bugs, does this cause lateness or is it the other way round? If a project has bugs, this can cause lateness due to the time required to fix the bugs and re-test the changes. On the other hand, if a project is running late, it could result in bugs being introduced as developers rush to get it completed.

Jon also introduced the interesting “scrum buses” theory, which explains why you sometimes end up with 2 or 3 buses arriving at once.

Le Chatelier’s Principle says that systems tend to oppose their own proper function. An example of this is how the body regulates its blood-sugar levels, to prevent hypoglycaemia and hyperglycaemia.

Jon explained that moving from 75% to 95% utilisation increases variability by 25 times. So, there needs to be some slack in a system for it to work most effectively.
Jon wrapped up the session by discussing the Law of Unintended Consequences – aka the “cobra effect”. I found this fascinating and it occurs when an attempted solution to a problem actually makes the problem worse.

 

The meal at Pizza Express

This was the first time I’d visited the Pizza Express branch on St Benedict’s Street. I really enjoyed the meal. I sat near Chris O’Dell and Cyrille Le Clerc and we discussed our jobs and the technology we use.

Overall, it was a good warm-up for the main conference the following day.

Words: Victoria Holland

Image: Paul Grenyer

One thought on “Review: NorDevCon Pre-Conference Special

  1. Russel Winder

    Victoria, Groovy is definitely not mostly aimed at people coming to Java from PHP and other dynamic languages (though that is fine if they do), your manager has a total misconception of Groovy, Java and the relationship between them. Groovy is mostly aimed at providing a dynamic symbiote to Java for creating systems on the Java Platform. Anyone using Java should be learning Groovy as well, the two complement each other. If you are going to use a modern build framework, you will be using Gradle, which uses Groovy for the build specification. If you are going to use a modern test framework, you will be using Spock, which uses Groovy as the language for describing (TDD or BDD style) all your tests: unit, integration and system. Please reassess taking advice from a manager who is so badly misinformed. Russel.

    Reply

Write a Reply or Comment

Your email address will not be published. Required fields are marked *


    Keep up to date by email

    Sign-up to receive regular updates on all of our content and site activities.