Sessions at QCon San Francisco 2011 about Java with slides

Your current filters are…


Wednesday 16th November 2011

  • Have Your Cake and Eat It Too: Meta-Programming Techniques for Java

    by Howard M. Lewis Ship

    Ever been envious of how easily Python, Ruby and even JavaScript can “meta-program”? Meta-programming provides new ways of writing your code that goes beyond traditional object-oriented composition or inheritance. It’s like magic: seemingly simple or innocuous code takes over big responsibilities; new methods appear out of thin air. Your code, your primary code, stays simple and easy to follow.

    Now, we know you can do that for scripting languages, but what do we do about Java? With the proper context (some kind of framework responsible for instantiating classes), it is possible to emulate many of those same capabilities, by applying a simple set of code transformations at runtime. In this session you’ll learn about meta-programming and how it can apply to traditional Java. You’ll learn about the techniques needed to transform classes at runtime, adding new behaviors and addressing cross-cutting concerns. The presentation will discuss a new framework, plastic, designed for this specific purpose, but also draw examples from the Apache Tapestry web framework, which itself is rich in meta-programming constructs.

    At 12:05pm to 1:05pm, Wednesday 16th November

    Coverage slide deck

  • Java.next

    by Erik Onnen

    Programming server-side Java can still be concise, effective and iterative but doing so requires changing long-standing assumptions about how Java should be written. For Java to continue to compete for developer mindshare, Java idioms need to be informed by frameworks like Sinatra and languages like Scala and Erlang.

    This talk will cover techniques for writing Java applications that are highly performant and operate at scale while keeping maintenance and operational impedance low. The talk will challenge long held beliefs about Object Oriented programming, IoC and ORM frameworks and techniques for building HTTP services. The talk will attempt to demonstrate that by using simplified idioms while leveraging the power of Java tooling (such as IDEs), Java is still one of the best programming languages for the JVM and the best for deploying high performance applications on the JVM.

    At 2:05pm to 3:05pm, Wednesday 16th November

    Coverage slide deck

  • 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 3:35pm to 4:35pm, Wednesday 16th November

    Coverage slide deck