You think you know all there is about building apps for the JVM. You've used all the cool tools. You've written your own persistence library or web frameworks. Maybe you've even implemented a JVM language. But do you really know what happens to your code after you hand it off to the JVM? This talk will explore the guts of the OpenJDK VM, Hotspot. We'll take a few simple examples from bytecode through optimization and compilation all the way down to assembly code, and learn how you can ensure your code runs as fast as possible.

In the last years OAuth has become the standard for API authorization, making it easier and more secure to access different APIs. But it's still quite complicated and does not work well with mobile or desktop clients or JavaScript applications. But these shortcomings have been remedied in OAuth2. In this talk I'll introduce you to OAuth2, how it works, what is new and how to use it in your applications.

In the last years OAuth has become the standard for API authorization, making it easier and more secure to access different APIs. But it's still quite complicated and does not work well with mobile or desktop clients or JavaScript applications. But these shortcomings have been remedied in OAuth2. In this talk I'll introduce you to OAuth2, how it works, what is new and how to use it in your applications.

The open source development community is a continuous source of innovation and works continuously to make complex technologies easier to use. Open source ESBs provide attractive economics combined with better accessibility to users and attempts to break with the old approaches of large proprietary vendor stacks. The industry leader in open integration solutions, Talend allows organizations to easily integrate and expand systems and applications based on leading Apache open source projects. In this session, we will discuss the key Apache technologies that form the basis of Talend ESB (Apache Camel, Apache CXF, Apache ActiveMQ, Apache Karaf). Whereas the ESB focuses on solving application integration problems, a significant challenge also exists with how development managers "manage" the software development lifecycle. In this session, we explain how Talend ESB addresses not only how-to build integration applications to run on an ESB, but also how, through the use of Apache Maven, Apache Archiva and Apache Karaf, users can manage different versions of artifacts and configuration, which poses a significant challenge when supporting an integration project.

Angular teaches your old browser new tricks. It is what HTML would have been had it been designed for building web-applications. Angular is radical because it eliminates boilerplate code with declarative rather than imperative syntax. Having an awesome framework is not enough, one needs to also have an awesome testability story. In this session we will focus on all of the work which we have done to make applications written in Angular a joy to test.

Cassandra is a radically scalable, highly available enterprise database that has become a key player in a growing number of web-scale operations. It offers a compelling combination of a rich data model, a robust deployment track record, and an architecture that is as elegant as it is sound. Do you take scale seriously? So does Cassandra! Come study this compelling NoSQL solution.

Cassandra is a radically scalable, highly available enterprise database that has become a key player in a growing number of web-scale operations. It offers a compelling combination of a rich data model, a robust deployment track record, and an architecture that is as elegant as it is sound. Do you take scale seriously? So does Cassandra! Come study this compelling NoSQL solution.

The session will discuss different aspects of building a location-based services application based on the Nokia Location Platform API. It focuses on the integration into your service, application, or website. The session will show practical examples, like display maps, show locations, and perform routing for web-enabled applications. Find out more about the Nokia Location Platform APIs: http://developer.nokia.com/Maps/

You're serious about improving the quality of your code base, but with 10,000 lines of code, where do you start and how do you ensure the greatest ROI for the re-work your team members will perform? Sonar is an open source tool that brings together the best of breed static and dynamic analysis of Java projects. The result is a unified view of problematic areas of your code on a time-line basis, allowing the team to attack the problems with the best ROI, and maintain a more watchful eye for positive and risky trends in the codebase in the future. This talk will show you Sonar from the ground up and explain the critical metrics that affect your code's flexibility, stability, and durability.

Java SE 8 is packed with new features aimed at enabling new and powerful library abstractions. In this talk we will explore each of the three main Java SE 8 features - lambda expressions, method references, and extension methods - by covering the most relevant decisions that led us to the current design and by providing examples of how these language features can be used together to enable a new, more expressive and less error-prone programming model.

You'll start the day with a brief introduction to the basics of EMF, with particular focus on Xcore, a concise textual syntax for defining models. You'll learn how to use this approach to define a model, generate a data layer, set up a shared repository, and create a compelling collaborative interface. You'll understand how to deal with concurrency, e.g., how to use transactions and locks, how to deal with huge models, even ones too big to fit in the Java heap, and how to orchestrate multi-user collaboration in real-time.

Getting software released to users is often a painful, risky, and time-consuming process. This workshop sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers and operations, delivery teams can get changes released in a matter of hours - sometimes even minutes - no matter what the size of a project or the complexity of its code base.

Getting software released to users is often a painful, risky, and time-consuming process. This workshop sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers and operations, delivery teams can get changes released in a matter of hours - sometimes even minutes - no matter what the size of a project or the complexity of its code base.

Getting software released to users is often a painful, risky, and time-consuming process. This workshop sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers and operations, delivery teams can get changes released in a matter of hours - sometimes even minutes - no matter what the size of a project or the complexity of its code base.

Getting software released to users is often a painful, risky, and time-consuming process. This workshop sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers and operations, delivery teams can get changes released in a matter of hours - sometimes even minutes - no matter what the size of a project or the complexity of its code base.

Getting software released to users is often a painful, risky, and time-consuming process. This workshop sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers and operations, delivery teams can get changes released in a matter of hours - sometimes even minutes - no matter what the size of a project or the complexity of its code base.

Getting software released to users is often a painful, risky, and time-consuming process. This workshop sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers and operations, delivery teams can get changes released in a matter of hours - sometimes even minutes - no matter what the size of a project or the complexity of its code base.

You'll start the day with a brief introduction to the basics of EMF, with particular focus on Xcore, a concise textual syntax for defining models. You'll learn how to use this approach to define a model, generate a data layer, set up a shared repository, and create a compelling collaborative interface. You'll understand how to deal with concurrency, e.g., how to use transactions and locks, how to deal with huge models, even ones too big to fit in the Java heap, and how to orchestrate multi-user collaboration in real-time.

Distributed version control is all the rage these days, but is it worth it? It has been transformative for the dozens of organizations and thousands of developers that I've mentored on the unique implementation called Git. But don't take my word for it. Discover the joy of a version control system that works for you, not against you, in a hands-on workshop. Bring a Windows, Mac, or Linux laptop and we'll install, set up, use and bend Git into workflows that weren't even possible with the version control systems of yesteryear. Be prepared to rethink how lightweight, fast, and refreshing source code control can be. After completing this workshop you'll be able to do practical work with Git for your day job or weekend OSS hobby.

Distributed version control is all the rage these days, but is it worth it? It has been transformative for the dozens of organizations and thousands of developers that I've mentored on the unique implementation called Git. But don't take my word for it. Discover the joy of a version control system that works for you, not against you, in a hands-on workshop. Bring a Windows, Mac, or Linux laptop and we'll install, set up, use and bend Git into workflows that weren't even possible with the version control systems of yesteryear. Be prepared to rethink how lightweight, fast, and refreshing source code control can be. After completing this workshop you'll be able to do practical work with Git for your day job or weekend OSS hobby.

You'll start the day with a brief introduction to the basics of EMF, with particular focus on Xcore, a concise textual syntax for defining models. You'll learn how to use this approach to define a model, generate a data layer, set up a shared repository, and create a compelling collaborative interface. You'll understand how to deal with concurrency, e.g., how to use transactions and locks, how to deal with huge models, even ones too big to fit in the Java heap, and how to orchestrate multi-user collaboration in real-time.

Distributed version control is all the rage these days, but is it worth it? It has been transformative for the dozens of organizations and thousands of developers that I've mentored on the unique implementation called Git. But don't take my word for it. Discover the joy of a version control system that works for you, not against you, in a hands-on workshop. Bring a Windows, Mac, or Linux laptop and we'll install, set up, use and bend Git into workflows that weren't even possible with the version control systems of yesteryear. Be prepared to rethink how lightweight, fast, and refreshing source code control can be. After completing this workshop you'll be able to do practical work with Git for your day job or weekend OSS hobby.

Distributed version control is all the rage these days, but is it worth it? It has been transformative for the dozens of organizations and thousands of developers that I've mentored on the unique implementation called Git. But don't take my word for it. Discover the joy of a version control system that works for you, not against you, in a hands-on workshop. Bring a Windows, Mac, or Linux laptop and we'll install, set up, use and bend Git into workflows that weren't even possible with the version control systems of yesteryear. Be prepared to rethink how lightweight, fast, and refreshing source code control can be. After completing this workshop you'll be able to do practical work with Git for your day job or weekend OSS hobby.

Distributed version control is all the rage these days, but is it worth it? It has been transformative for the dozens of organizations and thousands of developers that I've mentored on the unique implementation called Git. But don't take my word for it. Discover the joy of a version control system that works for you, not against you, in a hands-on workshop. Bring a Windows, Mac, or Linux laptop and we'll install, set up, use and bend Git into workflows that weren't even possible with the version control systems of yesteryear. Be prepared to rethink how lightweight, fast, and refreshing source code control can be. After completing this workshop you'll be able to do practical work with Git for your day job or weekend OSS hobby.

Distributed version control is all the rage these days, but is it worth it? It has been transformative for the dozens of organizations and thousands of developers that I've mentored on the unique implementation called Git. But don't take my word for it. Discover the joy of a version control system that works for you, not against you, in a hands-on workshop. Bring a Windows, Mac, or Linux laptop and we'll install, set up, use and bend Git into workflows that weren't even possible with the version control systems of yesteryear. Be prepared to rethink how lightweight, fast, and refreshing source code control can be. After completing this workshop you'll be able to do practical work with Git for your day job or weekend OSS hobby.

Distributed version control is all the rage these days, but is it worth it? It has been transformative for the dozens of organizations and thousands of developers that I've mentored on the unique implementation called Git. But don't take my word for it. Discover the joy of a version control system that works for you, not against you, in a hands-on workshop. Bring a Windows, Mac, or Linux laptop and we'll install, set up, use and bend Git into workflows that weren't even possible with the version control systems of yesteryear. Be prepared to rethink how lightweight, fast, and refreshing source code control can be. After completing this workshop you'll be able to do practical work with Git for your day job or weekend OSS hobby.

Distributed version control is all the rage these days, but is it worth it? It has been transformative for the dozens of organizations and thousands of developers that I've mentored on the unique implementation called Git. But don't take my word for it. Discover the joy of a version control system that works for you, not against you, in a hands-on workshop. Bring a Windows, Mac, or Linux laptop and we'll install, set up, use and bend Git into workflows that weren't even possible with the version control systems of yesteryear. Be prepared to rethink how lightweight, fast, and refreshing source code control can be. After completing this workshop you'll be able to do practical work with Git for your day job or weekend OSS hobby.

Distributed version control is all the rage these days, but is it worth it? It has been transformative for the dozens of organizations and thousands of developers that I've mentored on the unique implementation called Git. But don't take my word for it. Discover the joy of a version control system that works for you, not against you, in a hands-on workshop. Bring a Windows, Mac, or Linux laptop and we'll install, set up, use and bend Git into workflows that weren't even possible with the version control systems of yesteryear. Be prepared to rethink how lightweight, fast, and refreshing source code control can be. After completing this workshop you'll be able to do practical work with Git for your day job or weekend OSS hobby.

Big Data, and its ability to transform business and society, has quickly emerged as one of the most important macro trends sweeping IT. But as technology professionals begin to fully understand how new storage and analytics innovations will enable them to extract maximum value from massive, rapidly growing data sets, we have only scratched the surface of what Big Data really can mean for the way that enterprises approach their businesses. The value of Big Data means much more than just a healthier bottom line for manufacturers, retailers, banks, research institutes and a wide range of other industries -- it holds the potential to usher in a new era of collaboration, discovery and achievement.

Big Data, and its ability to transform business and society, has quickly emerged as one of the most important macro trends sweeping IT. But as technology professionals begin to fully understand how new storage and analytics innovations will enable them to extract maximum value from massive, rapidly growing data sets, we have only scratched the surface of what Big Data really can mean for the way that enterprises approach their businesses. The value of Big Data means much more than just a healthier bottom line for manufacturers, retailers, banks, research institutes and a wide range of other industries -- it holds the potential to usher in a new era of collaboration, discovery and achievement.

Big Data, and its ability to transform business and society, has quickly emerged as one of the most important macro trends sweeping IT. But as technology professionals begin to fully understand how new storage and analytics innovations will enable them to extract maximum value from massive, rapidly growing data sets, we have only scratched the surface of what Big Data really can mean for the way that enterprises approach their businesses. The value of Big Data means much more than just a healthier bottom line for manufacturers, retailers, banks, research institutes and a wide range of other industries -- it holds the potential to usher in a new era of collaboration, discovery and achievement.

Big Data, and its ability to transform business and society, has quickly emerged as one of the most important macro trends sweeping IT. But as technology professionals begin to fully understand how new storage and analytics innovations will enable them to extract maximum value from massive, rapidly growing data sets, we have only scratched the surface of what Big Data really can mean for the way that enterprises approach their businesses. The value of Big Data means much more than just a healthier bottom line for manufacturers, retailers, banks, research institutes and a wide range of other industries -- it holds the potential to usher in a new era of collaboration, discovery and achievement.

Continuous Integration has firmly established itself as a software development practice, and many people today embrace the notion of automated continuous builds and test executions. But the shift in our industry, toward the abundance of computing, continues to push us further in automation. This trend is sometimes referred to as "continuous delivery." In this talk, we look at the underlying changes that are pushing us toward more automation, some of the emerging best practices, with discussion on how recent improvements in Jenkins make them feasible.

In this era of Big Data, with the recording, storage and access to vast quantities of data increasing at such an incredible rate, the appetite to extract insight and unlock the stories contained within also increases. Facilitating such enlightenment is the objective of data visualisation. In this presentation we will be showcasing some of the best contemporary visualisation projects from prominent designers across the globe, with a focus on identifying the most effective techniques, methods and resources being used today.

Data management has reached another inflection point. A new breed of applications and data types are pushing traditional, mostly relational data management solutions beyond their limits, driven by an ever growing mountain of data, ubiquitous access to information, the consumerism of IT, cloud computing, mobile computing, and last but not least the "hunger" for smarter applications. The presentation analyses and assesses the benefits and trade-offs of the emerging NoSQL database types such as key-value, document, and graph/object stores in the context of Enterprise Application development. It then takes a strategic look at enterprise application architectures and provides guidelines what evaluation criteria should be applied to assess those Big Data requirements and NoSQL stores, and what features to look for to successfully build real time enterprise applications. Target audience: Project Managers, Software Architects, and Database Developers

Learning the syntax of a new language is easy, but learning to think under a different paradigm is hard. This session helps you transition from a Java writing imperative programmer to a functional programmer, using Java, Groovy, Clojure, Scala for examples. This session takes common topics from imperative languages and looks at alternative ways of solving those problems in functional languages.

Learning the syntax of a new language is easy, but learning to think under a different paradigm is hard. This session helps you transition from a Java writing imperative programmer to a functional programmer, using Java, Groovy, Clojure, Scala for examples. This session takes common topics from imperative languages and looks at alternative ways of solving those problems in functional languages.

Continuous Integration has firmly established itself as a software development practice, and many people today embrace the notion of automated continuous builds and test executions. But the shift in our industry, toward the abundance of computing, continues to push us further in automation. This trend is sometimes referred to as "continuous delivery." In this talk, we look at the underlying changes that are pushing us toward more automation, some of the emerging best practices, with discussion on how recent improvements in Jenkins make them feasible.

Continuous Integration has firmly established itself as a software development practice, and many people today embrace the notion of automated continuous builds and test executions. But the shift in our industry, toward the abundance of computing, continues to push us further in automation. This trend is sometimes referred to as "continuous delivery." In this talk, we look at the underlying changes that are pushing us toward more automation, some of the emerging best practices, with discussion on how recent improvements in Jenkins make them feasible.

Design decisions made too early are just speculations without facts. But you must have architecture in place before you can do anything. This session talks about the tension between architecture & design in agile projects, discussing two key elements of emergent design (utilizing the last responsible moment and harvesting idiomatic patterns) and how to de-brittlize your architecture)

Java 7 is out, and the biggest new feature is invokedynamic. For the first time ever, the JVM has been extended to support the features of non-Java languages. But what does it mean for you? How will invokedynamic help you build better software today and in the future? We'll learn what invokedynamic is, how JVM languages are taking advantage of it, and how you can start to use it right now - even from Java. Invokedynamic is the most important change to the JVM ever... find out why.

You've heard the noise... invokedynamic is changing the JVM forever. What is it? How does it affect you? Where will it take the JVM and Java developers in the future? We'll look back at where the JVM has been and discuss why it will never be the same after invokedynamic.

Continuous Integration has firmly established itself as a software development practice, and many people today embrace the notion of automated continuous builds and test executions. But the shift in our industry, toward the abundance of computing, continues to push us further in automation. This trend is sometimes referred to as "continuous delivery." In this talk, we look at the underlying changes that are pushing us toward more automation, some of the emerging best practices, with discussion on how recent improvements in Jenkins make them feasible.

Open source integration projects such as Apache ServiceMix and Apache Camel disrupt the traditional, commercial ESB market. These projects are highly innovative a have a proven track record of being deployed in mission-critical environments. This presentation will provide an introduction into Apache ServiceMix and how it can be leveraged for integration projects. The talk will cover the benefits of using ServiceMix over commercial ESBs, touch base on OSGi concepts, explain the ServiceMix shell for managing your OSGi runtime and using a live demo, illustrate how quickly you can get up and running with an integration project.

Learning the syntax of a new language is easy, but learning to think under a different paradigm is hard. This session helps you transition from a Java writing imperative programmer to a functional programmer, using Java, Groovy, Clojure, Scala for examples. This session takes common topics from imperative languages and looks at alternative ways of solving those problems in functional languages.

Learning the syntax of a new language is easy, but learning to think under a different paradigm is hard. This session helps you transition from a Java writing imperative programmer to a functional programmer, using Java, Groovy, Clojure, Scala for examples. This session takes common topics from imperative languages and looks at alternative ways of solving those problems in functional languages.

Twelve years ago, Intel predicted we would have 10 GHz chips by now. However, instead of becoming faster, our chips are becoming slower in order to cope with all the heat generated by our many cores. The largest supercomputer, "K" in Japan, currently has over half a million cores, running at 2GHz each. This gives us an incredible amount of processing power, but contention can also become a huge drain on performance. In this talk, we will look at some tips on how to think about performance in the multi-threaded world. We will compare latency and throughput and show now Little's and Amdahl's laws influence our ability to scale up our systems.

JBoss's Business Rules Management System, BRMS, integrates various community projects such as Drools and jBPM bringing together a unique combination of business processes, business rules and complex event processing, unavailable elsewhere in the industry. Delivered in a single open source distribution and accessible from a common set of authoring tools, with JBoss BRMS customers can combine business processes, business rules and event processing in support of a broad range of decision management and process driven applications. This session explores the use cases for the BRMS, the benefits for the customer, and we will walk through many of the new features now available to enterprise developers. The discussion will center around the many powerful solutions that can be built leveraging rules, complex events, business process automation and the combination of the three. A special focus will be on the new BPM features that are coming with the integration of jBPM5/BPMN2.0 into version 5.3 of BRMS.

Most people think that to work with an operator you need to be either a huge company with time to waste or a small company with deep pocketed VCs. The number of developers who've burnt their hands on the problem are here to testify of the issue. But things (and operators) are changing (albeit a bit too slowly for those living at the speed of web). This session will explore the options opening up for Android developers to make use of these operator services and the new opportunities raising for them. If we wanted to be full of buzzwords we'd call it innovative telco cloud services for new web to mobile business model generation. If we wanted to be full of operator lingo we'd call that exposing our infrastructure services through an SDP to facilitate access to SMS, MMS, lbs, payment and context services. If we wanted to be a socnet we'd call it building services and application for the 3rd largest social network in the world. If we wanted to be really startupy we'd call it infrastructure APIs for developers to build high-value, high touch, differentiated and mobile-first services. If we wanted to be super geeky, we'd call that accessing traditional SMS, MMS services through REST APIs and Android libraries. But we'd rather be quite honest about things so we'd rather tell it as is it with a mix of code samples, application examples and with a bit of humor and promised not a pinch of sales pitch!

Relational databases (RDBMS) come to a limit in scalability and performance with applications as web 2.0 services, real-time analytics, and anything else that deals with the exploding data volume, data velocity, data variety and the need to derive more value out of this growing mountain of data. Suddenly, existing Java and JPA knowledge seem outdated as a new breed of database systems, so called NoSQL is storming into the market, requiring to learn new and usually proprietary APIs for the NoSQL product. Really?! The session presents database developers with a JPA implementation for a NoSQL data store for on-premise and Cloud implementations that leverages the established industry standard without sacrificing the JPA benefits such as true object persistence, while offering NoSQL services such as high availability, partition tolerance, various consistency models and more. It then compares traditional and NoSQL JPA implementations in a live benchmark test.

Ceylon is a new programming language designed to execute on the JVM. We're fans of Java and its ecosystem. However, we think that the language and class libraries, designed more than 15 years ago, are no longer the best foundation for a range of today's business computing problems.
Ceylon's design goals include:
easy to learn and understand for Java and C# developers
eliminate some of Java's verbosity, but keep its readability
improve upon Java's typesafety
provide a declarative syntax for expressing hierarchical information (user interface, external data, system configuration)
support and encourage a more functional style of programming with immutable objects and higher-order functions
great support for meta-programming
built-in modularity
Come and join us for this introduction to Ceylon where we will show you its main features as well as the ongoing progress of the compiler, IDE, tools and the community behind it.

Design decisions made too early are just speculations without facts. But you must have architecture in place before you can do anything. This session talks about the tension between architecture & design in agile projects, discussing two key elements of emergent design (utilizing the last responsible moment and harvesting idiomatic patterns) and how to de-brittlize your architecture)

If you wanna know what your garbage collector is up to the best place to look is in the GC logs. That said, the GC logs are like any other ascii log file in that they can be full of 1000s of cryptic entries which make trying to figure out what the logs are saying without any tooling, a daunting task. In this session I will introduce Censum, a free tool designed to help you make sense out of your log files. Some of what Censum can tell you is if your JVM's heap is misconfigured. For example, a large number of applications currently running in products systems are starved for memory in at least one of their internal memory pools. But it's not only starvation that can a cause of poor performance or long GC pauses. Too much memory can be equally as problematic. Or your problem could be as simple as your application calling System.gc(). With Censum sort out what your GC logs are telling you so that you can go on to solve your Java heap rooted performance problems.

Design decisions made too early are just speculations without facts. But you must have architecture in place before you can do anything. This session talks about the tension between architecture & design in agile projects, discussing two key elements of emergent design (utilizing the last responsible moment and harvesting idiomatic patterns) and how to de-brittlize your architecture)

If you wanna know what your garbage collector is up to the best place to look is in the GC logs. That said, the GC logs are like any other ascii log file in that they can be full of 1000s of cryptic entries which make trying to figure out what the logs are saying without any tooling, a daunting task. In this session I will introduce Censum, a free tool designed to help you make sense out of your log files. Some of what Censum can tell you is if your JVM's heap is misconfigured. For example, a large number of applications currently running in products systems are starved for memory in at least one of their internal memory pools. But it's not only starvation that can a cause of poor performance or long GC pauses. Too much memory can be equally as problematic. Or your problem could be as simple as your application calling System.gc(). With Censum sort out what your GC logs are telling you so that you can go on to solve your Java heap rooted performance problems.

If you wanna know what your garbage collector is up to the best place to look is in the GC logs. That said, the GC logs are like any other ascii log file in that they can be full of 1000s of cryptic entries which make trying to figure out what the logs are saying without any tooling, a daunting task. In this session I will introduce Censum, a free tool designed to help you make sense out of your log files. Some of what Censum can tell you is if your JVM's heap is misconfigured. For example, a large number of applications currently running in products systems are starved for memory in at least one of their internal memory pools. But it's not only starvation that can a cause of poor performance or long GC pauses. Too much memory can be equally as problematic. Or your problem could be as simple as your application calling System.gc(). With Censum sort out what your GC logs are telling you so that you can go on to solve your Java heap rooted performance problems.

If you wanna know what your garbage collector is up to the best place to look is in the GC logs. That said, the GC logs are like any other ascii log file in that they can be full of 1000s of cryptic entries which make trying to figure out what the logs are saying without any tooling, a daunting task. In this session I will introduce Censum, a free tool designed to help you make sense out of your log files. Some of what Censum can tell you is if your JVM's heap is misconfigured. For example, a large number of applications currently running in products systems are starved for memory in at least one of their internal memory pools. But it's not only starvation that can a cause of poor performance or long GC pauses. Too much memory can be equally as problematic. Or your problem could be as simple as your application calling System.gc(). With Censum sort out what your GC logs are telling you so that you can go on to solve your Java heap rooted performance problems.

If you wanna know what your garbage collector is up to the best place to look is in the GC logs. That said, the GC logs are like any other ascii log file in that they can be full of 1000s of cryptic entries which make trying to figure out what the logs are saying without any tooling, a daunting task. In this session I will introduce Censum, a free tool designed to help you make sense out of your log files. Some of what Censum can tell you is if your JVM's heap is misconfigured. For example, a large number of applications currently running in products systems are starved for memory in at least one of their internal memory pools. But it's not only starvation that can a cause of poor performance or long GC pauses. Too much memory can be equally as problematic. Or your problem could be as simple as your application calling System.gc(). With Censum sort out what your GC logs are telling you so that you can go on to solve your Java heap rooted performance problems.

Dozens of toolkits offer a range of widgets to build rich web applications, but the included widget set is rarely enough. This presentation shows how a new component can be designed and implemented from scratch. Topics covered include considerations for choosing DOM structure, finding a balance between performance and features, implementation considerations and testing the component.

Dozens of toolkits offer a range of widgets to build rich web applications, but the included widget set is rarely enough. This presentation shows how a new component can be designed and implemented from scratch. Topics covered include considerations for choosing DOM structure, finding a balance between performance and features, implementation considerations and testing the component.

Dozens of toolkits offer a range of widgets to build rich web applications, but the included widget set is rarely enough. This presentation shows how a new component can be designed and implemented from scratch. Topics covered include considerations for choosing DOM structure, finding a balance between performance and features, implementation considerations and testing the component.

JavaFX 2 was introduced last year and is rapidly becoming the new standard for creating media- and graphics-rich client Java applications. In fact, JavaFX is now bundled with the JDK 7, so every JDK 7 download automatically comes with JavaFX. JavaFX features a multitude of advanced graphics, UI, and media features, a scalable high-performance pipeline, a number of advanced UI components, properties binding, and much more. And because all JavaFX functionality is exposed through Java APIs, JavaFX can be leveraged by any language running on the Java VM, such as Groovy, JRuby, and others. JavaFX also features tight integration with web technologies, such as XML, CSS, and HTML 5 - for example through a the JavaFX WebView component which features a complete and modern web engine. In this session, learn about the goals, fundamental concepts, and architecture of JavaFX, and see some demos and code samples that help you understand how to leverage the power of JavaFX for your own projects.

Xtend is a statically-typed programming language hosted at Eclipse.org. It reuses Java's syntax, terminology and concepts as much as possible, but abandons some dead freight at the same time. Xtend is not meant to replace Java altogether but focusses on improving the weaker parts. Therefore the language as well as the state-of-the-art Eclipse tooling integrates nicely with existing Java code.