Sessions at GOTO Amsterdam 2011 about Java

Your current filters are…

Thursday 13th October 2011

  • JVM: Titanic, COBOL and the 100 year platform

    by Ola Bini

    The Java ecosystem is experiencing an interesting time, both with large technical changes but also a changed political landscape. Oracle is a very different company than Sun, and that's been obvious from such things as how the Java Community Process has been handled, and also in interactions with projects such as Hudson and Android. So is Java still relevant? Is it the platform or the language we are interested in, and what will have to be done to future proof these technologies? This presentation will take a critical look at both the technical and political landscape of Java, and also look at what kind of changes in process might be necessary. You will leave knowing a bit better what might be coming next, and how it will impact you.

    At 10:20am to 11:10am, Thursday 13th October

  • JVM: JVM performance optimizations at Twitter's scale

    by Attila Szegedi

    Twitter is increasingly relying on services written in either Java or Scala and running on the JVM. While JVM gives us a world-class runtime in terms of operational stability, performance, and manageability, it is still not trivial to achieve the desired performance characteristics of the programs being run on it, especially when you're dealing with services that need lots of memory, or have very low latency requirements, or both. In this talk, we'll present examples of performance problems we encountered while operating JVM-based services and the ways we solved them.

    At 11:30am to 12:20pm, Thursday 13th October

  • JavaScript: Mozilla Rhino

    by Attila Szegedi

    Mozilla Rhino is a JavaScript interpreter written in Java and running on the JVM. It's one of the oldest implementations of a non-Java language on the JVM platform, and has the distinguished honor of having a version of it being shipped in the Oracle JRE distributions as the default JVM scripting language. In this hands-on talk we'll discuss how to integrate Rhino into your JVM-based project, the Java-JavaScript bridging, as well as unorthodox features (i.e. first-class continuations) and newer features (support for CommonJS modules). You should come away from this talk with a good idea of what can Rhino do for you, and how can you easily make it do it.

    At 1:20pm to 2:10pm, Thursday 13th October

  • JVM: What's new in Spring 3.1

    by Arjen Poutsma

    Spring Framework 3.1 continues Spring's mission with a focus on flexible Java-based configuration. This session introduces foundational 3.1 facilities such as environment profiles for application contexts, feature specifications within configuration classes, and Spring’s new caching abstraction. Finally, the session will cover Spring’s ongoing support for enterprise Java specifications: in particular Servlet 3.0 support.

    Keywords: Java, Spring
    Target Audience: Spring Users

    At 1:20pm to 2:10pm, Thursday 13th October

  • JVM: Java 7 In Action: Using New Java 7 Features In Real Code

    by Stuart Marks

    This session will describe several new features introduced in Java 7, including a couple of the "Project Coin" language features. These features will be described and their benefits shown by using them to improve an actual piece of code from the JDK. The features to be shown are try-with-resources, more-precise rethrow (which are two language features introduced by Project Coin), and one of the new NIO utilities. The presentation will begin by showing a single method taken from the JDK 6 code base. It will continue by applying the features one by one using NetBeans, including an explanation of the feature and of its significance. Finally, the "before" and "after" code will be compared. The resulting code will be more concise and more correct than the original, showing that the new Java 7 features offer the opportunity to make great improvements to your Java code.

    Keywords: Java, Java SE 7, JDK 7, OpenJDK, NIO, Files, Project Coin, Exception Handling
    Target Audience: This session should be of interest to any Java programmers who are interested in using Java 7 features to improve their code.

    At 3:50pm to 4:40pm, Thursday 13th October

  • Solution Track: Introducing Scala in Java programmer territory

    by Peter Maas

    As an early adopter of Scala, I quickly noticed its vast potential and decided I want to use it on my next project. It took over two years of workshops, presentations, code examples and perseverance to actually get developers to accept it as a useful tool in their toolbox.

    During this presentation I would like to share my learnings. Not in the form of lengthy philosophical discussions about learning curves, productivity or adoption rates but by running through a collection of the various code fragments I used in my quest to interest people in learning a new language. Do built-in parser combinators help? Do Java developers miss tail recursion? How many DSLs do you implement per year? Everybody is tired of annotation-riddled Java… right? Does "just start by writing tests in Scala" work? Is interoperability with Java frameworks straightforward?

    The intention of all this is to help other people in their mission to keep innovating on a team or organizational level… and to share some of his love for the Scala language.

    Keywords: Scala, Java, Innovation, Change, Tools
    Target Audience: Developers, Architects and IT Managers

    At 3:50pm to 4:40pm, Thursday 13th October

Friday 14th October 2011

  • Architecture: Tackling the folklore surrounding high performance computing

    by Martin Thompson and Dave Farley

    Building a high performance financial exchange is tough, especially when you're flying in the face on conventional wisdom. In this case it is widely assumed that it's not possible to build a high throughput near real-time system in Java. Over the past 4 years our experience of building LMAX, the world's first multi-asset financial exchange, we've learnt that much of what the industry believes about computer performance is based on folklore.

    Using evidence and experience from solving real world problems, this talk aims to dispel some these performance myths. We will cover a number of areas of software development including distributed systems, concurrency and parallelism, I/O, algorithms, garbage collection, and memory efficiency.

    We need to reintroduce the science into computer science and stop depending on mythology, technology is changing and mythology is not keeping up.

    At 2:30pm to 3:20pm, Friday 14th October