Languages
Even YOU can write safe concurrent code!
Dierk König
Canoo Engineering AG
For much too long, concurrency has been solely occupied by the propeller-heads. It is high time that we average application programmers learn how to write concurrent code but without the fear of falling for the traps. The trick is to use the right concepts! Check out what is at every Java developer's disposal since recently.
Groovy mythsbuster
Dierk König
Canoo Engineering AG
Groovy has evolved to being the de-facto standard for dynamic programming on the JVM. However, some myths are constantly retold about its scripting nature, type system, performance, tooling, and other "enterprise relvant" concerns. We will go through those rumors and conduct some experiments to (in-)validate their truth.
Busy Java Developer's Guide to Scala
Ted Neward
Neward & Associates
Scala is a new programming language incorporating the most important concepts of object-oriented and functional languages and running on top of the Java Virtual Machine as standard "dot-class" files. Sporting the usual object-oriented concepts as classes and inheritance, Scala also offers a number of powerful functional features, such as algebraic data types, immutable objects by default, pattern matching, closures, anonymous functions and currying, and more. Combined with some deep support for XML generation and consumption, Scala offers Java programmers an opportunity to write powerful programs with concise syntax for a new decade of Java programming. In this presentation, we begin by looking at the Scala type system and flow-control primitives, such as if/else, pattern-matching, tuples, lists, and more. Despite the name, "basics" in Scala can get the newcomer Scala developer quite some distance.
An Introduction to Clojure
Neal Ford
ThoughtWorks
In an increasingly crowded field of languages on the JVM and CLR, Clojure stands out as unique. It is a dynamic, functional, high performance dialect of Lisp that runs on both the JVM and CLR. The creator cast aside assumptions from both the Lisp and Java communities to create a remarkable language implementation. This session introduces Clojure to Java developers who might not have seen a Lisp and don't yet understand why that's such an advantage. I introduce the language syntax (what little there is of it), cover interoperability with Java, macros, mutlti-methods, and more. I also cover the functional aspects of Clojure, showing it's powerful immutable data structures, working with threads and concurrency, and sequences. Attending this session will show enough to pique your interest and show why many of the people who were interested in Java in 1996 are interested in Clojure now.
Working with Eclipse and MS Visual Studio Team Explorer
Giles Davies
Microsoft UK
Working within a heterogeneous development team with Visual Studio Team Explorer Everywhere Microsoft Team Foundation Server includes enterprise class version control, work item tracking, an automated build engine, reports and project dashboards. That's great if you're a .NET developer working in Visual Studio, but how can Eclipse based development teams also take advantage of these features and share a common development environment with .NET developers? This session will provide an overview of Team Explorer Everywhere and will demonstrate how this provides integration from Eclipse into Team Foundation Server.






