September 15, 2015

Event Details Track

07:30 - 08:30
1 hour
Marquis Ballroom

Groovy Advanced Track
Slides: http://www.slideshare.net/Spring...
Groovy is a compiled language for the JVM with a number of fascinating features: a language which is both dynamic and static, strongly or weakly typed, functional and imperative, supporting a modern type inference, DSLs, ... How does that all come together? How, from a source file, to you end up with classes compiled and loaded at runtime? If terms like parsing, abstract syntax tree, type checking, type inference, bytecode or even verifier puzzle you, then this talk is made for you!

08:30 - 10:00
1 hour 30 minutes
Monument

GG Special Topics Track
Slides: http://www.slideshare.net/Spring...
In this talk, Grails project lead Graeme Rocher, will update you on the latest release of Grails and what is coming up during the course of the next year.

Covering all the new features of Grails 3 including the new plugin model, Gradle build and profiles support, this talk promise to be packed full of information for those interested in the latest and greatest from the Grails community.

08:30 - 10:00
1 hour 30 minutes
Archives

Groovy Ecosystem Track
Slides: http://www.slideshare.net/Spring...
Grooscript is a library that converts groovy code to javascript (http://grooscript.org). Is a new tool that you can introduce in your web projects. I'll present it, the good parts and their limitations. Later, we will use it in a spring boot project. We will use domain classes in the server and the client. Navigate through a dynamic single page application created in groovy, all parts tested with Spock. Ast's, dsl's and traits will be used, grooscript will convert to js, and will run in the browser. We will use websockets to speed up development reloading pages on the fly. Finally, I'll show node.js support. Javascript is the new wave, and sure you have to use any js tool. With grooscript, you can use js libs in a groovy way, very funny experience.

08:30 - 10:00
1 hour 30 minutes
Supreme Court

Core Groovy Track
Slides: http://www.slideshare.net/Spring...
What should "idiomatic" Groovy code look like? What are the good practices in terms of syntax style, typing preferences? What are the nice shortcuts to be aware of to be more productive? Guillaume Laforge will answer those questions along the way!

08:30 - 10:00
1 hour 30 minutes
Capitol / Congress

Web / JavaScript Track

The HTTP/2 spec is here - clients are servers are racing to implement it, while browser support is increasing everyday... The JVM world is already working on it in the Servlet 4.0 and JDK9 specs. But we developers, are still trying to understand the implications of it.
Should we reconsider the way we build JavaScript applications and optimize them for front-end performance? Will our server application have new roles and abilities?
In this talk we'll look at the main features of HTTP/2 to understand how it will dramatically improve latency on the web. We'll also discuss with concrete examples how HTTP/2 could be integrated in our front-end and Spring Web applications.

08:30 - 10:00
1 hour 30 minutes
Salon A-D

Big Data Track
Slides: http://www.slideshare.net/Spring...
Finance market prediction has always been one of the hottest topics in Data Science and Machine Learning. However, the prediction algorithm is just a small piece of the puzzle. Building a data stream pipeline that is constantly combining the latest price info with high volume historical data is extremely challenging using traditional platforms, requiring a lot of code and thinking about how to scale or move into the cloud. This session is going to walk-through the architecture and implementation details of an application built on top of open-source tools that demonstrate how to easily build a stock prediction solution with no source code - except a few lines of R and the web interface that will consume data through a RESTful endpoint, real-time. The solution leverages in-memory data grid technology for high-speed ingestion, combining streaming of real-time data and distributed processing for stock indicator algorithms

08:30 - 10:00
1 hour 30 minutes
Salon N-P

Cloud Native Track
Slides: http://www.slideshare.net/Spring...
Lattice: A Cloud-Native Platform for Your Spring Applications

Lattice is a cloud-native application platform that enables you to run your applications in containers like Docker, on your local machine via Vagrant. Lattice includes features like:

Cluster scheduling
HTTP load balancing
Log aggregation
Health management

Lattice does this by packaging a subset of the components found in the Cloud Foundry elastic runtime. The result is an open, single-tenant environment suitable for rapid application development, similar to Kubernetes and Mesos Applications developed using Lattice should migrate unchanged to full Cloud Foundry deployments.

Lattice can be used by Spring developers to spin up powerful micro-cloud environments on their desktops, and can be useful for developing and testing cloud-native application architectures. Lattice already has deep integration with Spring Cloud and Spring XD, and you’ll have the opportunity to see deep dives into both at this year’s SpringOne 2GX. This session will introduce the basics:

Installing Lattice
Lattice’s Architecture
How Lattice Differs from Cloud Foundry
How to Package and Run Your Spring Apps on Lattice

08:30 - 10:00
1 hour 30 minutes
Salon E-H

Core Spring Track
Slides: http://www.slideshare.net/Spring...
Spring's programming and configuration model has a strong design philosophy with respect to application components and configuration artifacts. Spring's annotation-based component story is fine-tuned for source code readability as well as consistency across an entire application's codebase. This session presents selected Spring Framework 4 component model highlights, with a focus on the upcoming Spring Framework 4.2 and a selection of Java 8 enabled features, illustrated with many code examples and noteworthy design considerations.

08:30 - 10:00
1 hour 30 minutes
Salon I-L

Data / Integration Track
Slides: http://www.slideshare.net/Spring...
A year has passed and the Spring Data shipped two release train iterations packed with interesting features. This talk will give a broad overview of the most important introduced in the Fowler and Gosling release trains. We will cover recent additions and improvements in Spring Data Commons - the module that's shared amongst the store specific ones. We'll then delve into the latest and greatest features of individual store modules, like JPA, MongoDB and the community ones as well.

08:30 - 10:00
1 hour 30 minutes

Event Details Track

10:00 - 10:30
30 minutes
Conference Center Foyer

Data / Integration Track
Slides: http://www.slideshare.net/Spring...
Building highly scalable, low latency applications while simultaneously preserving consistency, high availability and resiliency requires a new breed of technology. In this presentation we introduce Pivotal GemFire along with the open source offering, Apache Geode. Apache Geode is a proven, distributed, in-memory database with ACID properties that can handle large volumes of transactional data under heavy load. Apache Geode gives Spring-based applications the edge they require as demand changes without sacrificing integrity or the end-user's experience.

Using Spring Boot and Spring Data GemFire, we demonstrate how to effectively build highly scalable applications with Pivotal GemFire/Apache Geode starting with configuration and setup, then moving into persisting and accessing data with Spring Data Commons Repositories, OQL with proper Indexing, and Spring Data GemFire's annotation-based, data-aware Function executions, based on the familiar Map-Reduce pattern of bringing business logic to your data. Next, we expand on these fundamental, foundational features with advanced topics on Partitioning, Collocation, Write-Through/Write-Behind, Register Interests/CQs, PDX and Cache as well as Global, JTA-based Transactions.

Finally, we show how Pivotal GemFire/Apache Geode can be used to seamlessly address other application concerns from caching with Spring's core Cache Abstraction to session management using Spring Session. And most importantly, we cover techniques for properly testing applications built on Pivotal GemFire along with techniques to manage and monitor your cluster. By sessions end, attendees should feel comfortable building highly-scalable applications effectively and productively.

10:30 - 12:00
1 hour 30 minutes

Groovy Advanced Track
Slides: http://www.slideshare.net/Spring...
Geb is a Groovy implementation of Selenium. This talk is for devs who want to learn more about functional testing and QA who want an introduction to automated testing.

I’ll show a few examples of how to bring a test plan through pseudo code and into concrete code. There will be live demos of Geb tests driven by Spock. Finally, we’ll look at code; but we’ll also look behind the code to understand what it means and why Geb is a great way to do functional automated testing."

10:30 - 12:00
1 hour 30 minutes
Monument

Core Spring Track
Slides: http://www.slideshare.net/Spring...
Join Sam Brannen and Nicolas Fränkel to discover what's new in Spring Framework 4.2's testing support and learn tips and best practices for testing modern, Spring-based applications. Sam Brannen is the Spring Test component lead and author of the Spring TestContext Framework, and Nicolas Fränkel is the author of the book "Integration Testing from the Trenches".

In this session, Sam and Nicolas will cover the latest testing features in Core Spring, Spring Boot, and Spring Security. In addition to new features, they will also present insider tips and best practices on integration testing with suites in TestNG, database transactions, SQL script execution, granularity of context configuration files, optimum use of the context cache, a discussion on TestNG vs. JUnit, and much more.

10:30 - 12:00
1 hour 30 minutes
Salon E-H

Cloud Native Track
Slides: http://www.slideshare.net/Spring... (mostly live demo)
Spring Cloud 1.0 is here! It offers a powerful way to create and consume microservices. As you introduce new services, you introduce integration problems: services can be shaky, they can disappear and - as they're often exposed over HTTP - they require a bit more footwork than in-process method invocations. In this webinar, we'll focus specifically on how Spring Cloud integrates service registration (e.g. Eureka), declarative REST clients (with Netflix's Feign), reactive programming and the circuit breaker pattern with Hystrix to support easy, robust service-to-service invocations, and messaging microservices with Spring Cloud Stream. This is a deep dive on how to make connect and consume microservices, and is a natural next step after the introduction to building microservices with Spring Boot.

10:30 - 12:00
1 hour 30 minutes
Salon I-L

Groovy Ecosystem Track
Slides: http://www.slideshare.net/Spring...
Scala is the other Great Force in the realm of alternative JVM languages. It has it's strengths, as well as it's weaknesses. This talk will look at Scala as a supplement to Groovy, showing that it can help us tremendously given specific circumstances. We will begin by looking at how Groovy and Scala differ philosophically, followed by a comparison of syntax used in the two languages. We will then dive into the most important part, dealing with their application and how they can coexist side by side. This talk aims to dismantle the wall that prevails between the Groovy and Scala communities, attempting to show that both are highly capable in their own way. It does so by showing that there is no right or wrong, but rather that they are flipsides of the same coin.

10:30 - 12:00
1 hour 30 minutes
Supreme Court

GG Special Topics Track
Slides: http://www.slideshare.net/Spring...
In this presentation we will migrate an existing application that is productive (http://www.allschools.de) and running with Grails 2 towards the newest version of Grails 3. This presentation will feature 3 slides and tons of code. You will learn which steps have to be taken and which gotchas you have to be aware of in order to make the migration to Grails 3 as smooth as possible.

10:30 - 12:00
1 hour 30 minutes
Archives

Web / JavaScript Track
Slides: http://www.slideshare.net/Spring...
This is your one stop shop introduction to get oriented to the world of reactive programming. There are lots of such intros out there even manifestos. We hope this is the one where you don't get lost and it makes sense. Get a definition of what "reactive" means and why it matters. Learn about Reactive Streams and Reactive Extensions and the emerging ecosystem around them. Get a sense for what going reactive means for the programming model. See lots of hands-on demos introducing the basic concepts in composition libraries using RxJava and Reactor.

10:30 - 12:00
1 hour 30 minutes
Salon A-D

Big Data Track
Slides: http://www.slideshare.net/Spring...
For this session we will explore the power of Spring XD in the context of the Internet of Things (IoT). We will look at a solution developed with Spring XD to stream real time analytics from a moving car using open standards. Ingestion of the real time data (location, speed, engine diagnostics, etc) into HDFS, analyzing it to provide highly accurate MPG and vehicle range prediction, as well as providing real time dashboards will all be covered. Coming out of this session, you’ll understand how Spring XD can serve as “Legos®” for the IoT. We've made some very cool updates to the app (multi-car support, uses Hadoop and Spark, and more). We also are hoping to be running our app on Cloud Foundy by the conference!

10:30 - 12:00
1 hour 30 minutes
Salon N-P

Core Groovy Track
Slides: http://www.slideshare.net/Spring...
Web APIs are everywhere, at every corner of the Web! To be "hip", let's stay at Rest. For even more hype, what can we do with the Groovy programming language and Restful Web APIs? In this session, Guillaume Laforge will talk about APIs, how do Groovy and Rest services interact, how to tests such APIs with Spock to be "Enterprisey"!

10:30 - 12:00
1 hour 30 minutes
Capitol / Congress

Event Details Track

12:00 - 12:45
45 minutes
Marquis Ballroom

Data / Integration Track
Slides: http://www.slideshare.net/Spring...
Search has become a major part in our applications. We want to find, quick and easy!
This session focuses on integrating search solutions like Solr, Elasticsearch as well as MongoDBs full text search into your application. We’ll have a look on Spring Data’s abstraction for those and do some hands on auto configuration using Spring Boot (100% XML free setup guaranteed).

12:45 - 14:15
1 hour 30 minutes

Cloud Native Track
Slides: http://www.slideshare.net/Spring...
So you've decided to go cloud native. You've got a number of microservices that your company builds and runs. They interact with each other in various ways. You've got testing and staging and production environments that may have taken a lot of effort to get right. How does an individual developer work on just one of those services without stomping on other developers using a shared environment? In this session we will explore a range of options for development, starting with deploying everything locally, through stubbing, to local development solution that allows a developer to run their service in their IDE and have the whole system interact on their local machine!

12:45 - 14:15
1 hour 30 minutes
Salon E-H

Web / JavaScript Track
Slides: http://www.slideshare.net/Spring...
An API's documentation is a vital part of making it easy to understand and easy to use. RESTful APIs are no different. In this talk we'll look at what should be included in your RESTful API's documentation and, just as importantly, what should be omitted. Using real-word examples, both good and bad, we'll discuss how the documentation should be structured so that it's informative, succinct, and easy to read. Having identified what good documentation looks like, we'll discuss some of the tools that are available for documenting services built using Spring. In particular, we'll look at some of the problems and limitations of choosing a tool like Swagger and how some alternatives, including Spring REST Docs, avoid these shortcomings and help you to produce documentation that your users will love.

12:45 - 14:15
1 hour 30 minutes
Salon I-L

GG Special Topics Track
Slides: http://www.slideshare.net/Spring...
Grails is a powerful framework to learn. Overall it can be easy to learn but it is important to understand some typical problems that developers run into. In this session we cover how to use a few best practices to avoid these Grails gotchas. We will discuss a few issues that beginning Grails developers run into with GORM and configuration as well as some things for intermediate and advanced users on architecture.

12:45 - 14:15
1 hour 30 minutes
Archives

Groovy Advanced Track
Slides: http://www.slideshare.net/Spring...
Reactive applications and Reactive programming are an alternative to the standard thread-based imperative programming model that can result in flexible, concise code. The Reactive approach has gained popularity recently for one simple reason: we need alternative designs and architectures to meet today’s demands. However, it can be difficult to shift one’s mind to think in Reactive terms. It doesn’t help that the descriptions around the web can be contradictory and the library documentation can be obscure. In this talk, we’ll explore the concepts of Reactive and Reactive Programming. We’ll demonstrate some of the useful Reactive functions and examine some practical implementations - including how we’re currently using Reactive libraries in production code. Most importantly, we’ll look at some of the open source options available to us in the Groovy community, including Reactor, RxJava, and Ratpack. If Reactive is new to you, this should be an excellent introduction.

12:45 - 14:15
1 hour 30 minutes
Monument

Core Groovy Track
Slides: all demo no slides
Words like fluent, cogent, convenient, and so many nice terms describe Groovy and the GDK. No one would ever suggest using Java classes or the JDK instead of the GDK from within Groovy code. Almost never. Java 8 and the streams library have changed the game. There's a good reason to use some of the Java 8 classes from within Groovy. In this presentation we will learn, why, what, and how to make use of these.

12:45 - 14:15
1 hour 30 minutes
Capitol / Congress

Core Spring Track

For many years, IntelliJ IDEA has been widely used in projects employing the Spring Framework. The latest version of the IDE (14.1) now ships with dedicated Spring Boot support. In this practical presentation we're going to look at some features from IntelliJ IDEA that will help you not only get started with Spring Boot but also guide you along the way, helping with coding and configuration management for your application. As a bonus, we'll also discover some nice hidden tips and tricks you might not know yet. This talk is all about being more efficient when writing code.

12:45 - 14:15
1 hour 30 minutes
Salon A-D

Big Data Track
Slides: http://www.slideshare.net/Spring...
In this talk we will cover the major new features added to Spring XD since last year as well as upcoming changes for the next major version. Key integrations driven by the Big Data ecosystem at large such as Kafka, Spark, functional programming, integration with Python, and designer/monitoring UIs will be introduced and demonstrated. The next major version of XD will shift to a foundation based on Cloud-Native architectural principles, where each individual module will be a standalone executable message-based microservice application based on Spring Boot. This allows us to more easily take advantage of Spring Boot and Spring Cloud functionality as well as map more natively onto runtime environments such as YARN, Lattice and Cloud Foundry.

12:45 - 14:15
1 hour 30 minutes
Salon N-P

Groovy Ecosystem Track
Slides: http://www.slideshare.net/Spring...
This talk is based on my experiences writing unit tests in a large code base with a team of accomplished test-driven developers. I'll share how we wrote tests that became an essential asset of the code base, not just an afterthought. These tests not only verified our code, they also improved our design, helped us learn how the existing code base worked, and helped new developers come on board. The tests were easy to find and run, and didn't break when we refactored unrelated functionality or changed implementation internals. In short, these were tests that developers WANTED to write. I'll also show examples of testing anti-patterns, including redundant testing, white box testing, and using the wrong type of test double. All examples are in Groovy and Spock. Example source code and a Test Driven Development crib sheet will also be provided to help you and your teammates write tests that are truly assets of your project.

12:45 - 14:15
1 hour 30 minutes
Supreme Court

Event Details Track

14:15 - 14:30
15 minutes
Conference Center Foyer

Groovy Advanced Track

How can medium and large projects use Gradle to scale their build infrastructure? This session looks at organizations such as Netflix and LinkedIn and how they scale with Gradle across hundreds or thousands of developers. It discusses how to solve the challenges of standardization, dependency management, multi-language builds, and automatic build infrastructure provisioning.

14:30 - 16:00
1 hour 30 minutes
Monument

Big Data Track
Slides: http://www.slideshare.net/Spring...
In all industries, as software is eating the world, data is feeding software. However, to truly get value out of the data being generated, it must be analyzed and made actionable. Transformation in many industries actually means precisely this, data-driven action. From creating new television shows, to smart devices that help make your life easy, save precious limited resources, or protect your health, ingesting the data and building models are crucial to success.
This session will focus on examples of how these models are built. What is required to build a model? How does data need to be processed? What do you have to consider to make your model effective? And finally what tools do I use to build these models?
In this session, we will address these questions through illustrative use cases using open-source technologies varying from medical, text and sensor data, from three different speakers:
- Approaches and Open Source Tools for Wrangling and Modeling Massive Datasets
- Scaling Java Applications for NLP on MPP through PL/Java
- A Scalable Framework For Realtime Monitoring & Prediction Of Sensor Readings

14:30 - 16:00
1 hour 30 minutes
Salon N-P

Web / JavaScript Track
Slides: http://www.slideshare.net/Spring...
RxJava is an awesome library for async data streams. It is both expressive and powerful but the learning curve can be quite steep at first. So we want to quickstart developers into the world of Reactive eXtensions with more context than just listing operators!
Adapted from a hands-on workshop, this talk will describe how one can migrate code into a fully async and RxJava-based application, built upon Spring Boot and Java 8.
What kind of changes does this require? What shifts in thinking? What are the traps and pitfalls to avoid? Hopefully you'll learn the answers to these questions in this talk!

14:30 - 16:00
1 hour 30 minutes
Salon E-H

GG Special Topics Track
Slides: http://www.slideshare.net/Spring...
For some web applications it does not make sense to have 1 monolithing process which handles all of the requirements of the application. More and more often Grails is showing up in microservice architectures where instead of building 1 monolithing web application which is responsible for all of the pieces of the application puzzle, microservice applications are being assembled which collectively solve the requirements of the larger application. Grails is very well suited for this type of architecture. A microservice based architecture can result in applications which are easier to build, easier to test, easier to extend and are easier to adapt to changing business requirements.

14:30 - 16:00
1 hour 30 minutes
Archives

Groovy Ecosystem Track
Slides: http://www.slideshare.net/Spring...
Ratpack is a high-through, reactive, non-blocking web framework for Java 8. Ratpack is designed to ease the complexities of programming in a non-blocking, asynchronous manner by providing a rich API and deterministic execution model. The framework takes a developer-first approach to development, sporting hot reloading and test fixtures that make the process of writing well-tested, powerful web applications easier than ever. This talk will showcase the framework's features, and attendees will leave with an understanding of how to write applications with Ratpack.

14:30 - 16:00
1 hour 30 minutes
Supreme Court

Core Groovy Track
Slides: http://www.slideshare.net/Spring...
The emergence of Spring Boot has significantly improved the development of applications with Spring, allowing you to create applications faster by improving the configuration and removing repetitive tasks. Some of the dependencies that can be included are support for ‘Groovy’ and also the use of ‘GORM (Grails Object Relational Mapping)’ as well as ‘Hibernate’ for persistence. We will see where and how to use them in our projects with Spring Boot and how this set of technologies can convert our work in a great experience

14:30 - 16:00
1 hour 30 minutes
Capitol / Congress

Cloud Native Track
Slides: http://www.slideshare.net/Spring...
Spring Cloud Netflix allows you to quickly take your existing Spring Boot application and transform it into a fully cloud-ready service (even if you are operating out of a private data center).

This talk will be largely live coded, taking a simple Spring Boot app and progressively augmenting it with more and more production-ready features.

1. Service discovery -- how we have extended Spring Cloud to integrate more seamlessly with Eureka.
2. Real-time Metrics -- Spectator/Atlas integration, including how we fold Spring Boot Actuator metrics into Spectator. We will show you how to use the Atlas stack language to generate real-time metrics graphics.
3. Inter-service Communication/Loading Balancing - When should you choose client-side load balancing (Ribbon) over traditional server-side load balancing? We will explain how Netflix OSS can contain both a client side load balancer in Ribbon and a software router in Zuul and when to use each.
4. Managing Failure - Provide a demo of Hystrix/Spring integration with Turbine.
5. Analytics - How Spring Cloud Netflix makes Spring XD an even more powerful real-time analytics platform with real-time operational insights.

14:30 - 16:00
1 hour 30 minutes
Salon A-D

Data / Integration Track
Slides: http://www.slideshare.net/Spring...
Check out Spring Data REST, a library than can rapidly bridge your data access layer to a RESTful interface using hypermedia. See how you can build the backend for your startup rapidly using top notch practices. We will then look at Spring-A-Gram, a sample application built with Spring Data REST and secured by Spring Security. Snap pictures from your laptop or smartphone and upload them to the server with little effort.

14:30 - 16:00
1 hour 30 minutes

Core Spring Track
Slides: All demo no slides
The new facilities in Java 8 is about the change the way we write code. Our code will become more expressive and concise. But, exactly how?

14:30 - 16:00
1 hour 30 minutes
Salon I-L

Event Details Track

16:00 - 16:30
30 minutes
Conference Center Foyer

Groovy Advanced Track
Slides: http://www.slideshare.net/Spring...
Using Groovy is easy and fun. After getting your hands dirty with a few basics it is good to go deeper. In this session we will cover Design Patterns in Groovy, compilation configuration, mixing Java and Groovy, and calling other languages from Groovy. We will show you how to call Scala and Clojure from Groovy. So get ready to take it to the next level.

16:30 - 18:00
1 hour 30 minutes
Monument

Groovy Ecosystem Track
Slides: http://www.slideshare.net/Spring...
iOS is a very popular platform for building mobile applications. However when it comes to ease of development, it leaves a little to be desired. In this session we'll look at how Groovy can make iOS development a pleasure.

16:30 - 18:00
1 hour 30 minutes
Supreme Court

Big Data Track
Slides: http://www.slideshare.net/Spring...
In the space of Big Data, Pivotal offers two powerful data processing tools namely HAWQ and GemFire. HAWQ is a scalable OLAP SQL-on-Hadoop system, while GemFire is OLTP like, in-memory data grid and event processing system. This presentation will show different integration approaches that allow integration and data exchange between HAWQ and GemFire. The practical experience in applying Spring Boot and Spring XD for some of the use cases will be shared while walking you through the implementation of the different Integration strategies. Amongst other we will show an integration path that leverages SpringXD to ingest GemFire data and store it in HDFS as well as the benefits of using Spring Boot to implement REStful proxy for the HAWQ Web Table integration scenario.

16:30 - 18:00
1 hour 30 minutes
Salon N-P

GG Special Topics Track
Slides: http://www.slideshare.net/Spring...
Gradle is a general purpose, multi-platform build tool. Plugins allow for extending Gradle's core capabilities with reusable and targeted functionality. In this session, we'll discuss techniques and best practices for developing your own Gradle plugins by dissecting the structure, code, documentation and supporting infrastructure of an existing Gradle plugin. Gradle plugins are extremly simple to write. But there's far more to learn. Once you get beyond the basics, you will want to know about guidelines and best practices. In this session, we'll identify concepts and techniques that work well in practice by having a look at the Gradle Docker plugin (https://github.com/bmuschko/grad...). We'll mainly focus on the following topics:
* Brief introduction to Gradle plugin concepts
* Applying proven software engineering practices
* Separating capabilities from conventions
* Implementing convention over configuration
* Writing flexible custom tasks
* Depending on external libraries
* Exposing a custom DSL to plugin consumers
* Using the Gradle Wrapper
* Writing different types of tests for plugin code
* Publishing the plugin binaries
* Creating functional documentation
* Registering the plugin with Gradle's plugin portal
* Setting up Continuous Integration

16:30 - 18:00
1 hour 30 minutes
Archives

Core Groovy Track

In this Q&A session, you can have your questions answered about what it is like to build a mission critical application for a Fortune 500 company using Groovy. We'll also cover issues about what it's been like to to support and maintain a Groovy application that's been in production for over seven years!

16:30 - 18:00
1 hour 30 minutes
Capitol / Congress

Data / Integration Track
Slides: http://www.slideshare.net/Spring...
Do you need to build cloud-native microservices for distributed stream processing and data integration but don't know where to start? All you need is a single annotation in your code and a single dependency in your POM. The new Spring Cloud Stream project combines the power of Spring Boot, Spring Integration, and Spring Cloud to make that a reality.

In a nutshell, Spring Cloud Stream provides support for auto-configuration of Spring Integration capabilities, such as Channel Adapters for Kafka, RabbitMQ and Redis. The apps you build sit on a profile-driven foundation that ensures portability across runtime environments from your laptop to the cloud. Once you scale those distributed apps, you'll appreciate the integrated Spring Cloud features such as service discovery and configuration management.

This session will feature a series of live demos on different platforms ranging from local to a remote Cloud to show the simplicity of the Spring Cloud Stream developer experience. We will also dive into the details of what's happening behind the scenes. There will be stories about the background of how this project got started and its relevance for the evolution of Spring XD, as the latter has itself embarked on a cloud-native microservice journey.

16:30 - 18:00
1 hour 30 minutes
Salon E-H

Cloud Native Track
Slides: http://www.slideshare.net/Spring...
We shall start this talk with an overview of the technology constraints of putting existing classic/legacy apps on the cloud. This talk will cover tools and prescriptive quantitative techniques for creating an application suitability funnel and comprehensive criteria for migrating applications to a PaaS. Rohit will also cover concrete approaches and code for migrating apps to a PaaS including:
1. Custom Buildpacks
2. Service Proxy
3 Dockerization
4. Bosh releases
5. Meta-Service Brokers

16:30 - 18:00
1 hour 30 minutes

Core Spring Track
Slides: All demo no slides
Almost every major version of Spring framework introduced a new way to configure the context: XML, Annotations, Java Config, Groovy... What's next, and, more important - why so many?! And how to know what to use and when? In this session Baruch, Viktor and Leonid will try to find the silver bullet, and you will have a chance to vote for the best feature implementations or even make a bet of the winner!

16:30 - 18:00
1 hour 30 minutes
Salon A-D

Web / JavaScript Track
Slides: http://www.slideshare.net/Spring...
The many benefits of a RESTful architecture has made it the standard way in which to design web based APIs. For example, the principles of REST state that we should leverage standard HTTP verbs which helps to keep our APIs simple. Server components that are considered RESTFul should be stateless which help to ensure that they can easily scale. We can leverage caching to gain further performance and scalability benefits.

However, the best practices of REST and security often seem to clash. How should a user be authenticated in a stateless application? How can a secured resource also support caching? Securing RESTful endpoints is further complicated by the the fact that security best practices evolve so rapidly.

In this talk Rob will discuss how to properly secure your RESTful endpoints. Along the way we will explore some common pitfalls when applying security to RESTful APIs. Finally, we will see how the new features in Spring Security can greatly simplify securing your RESTful APIs.

16:30 - 18:00
1 hour 30 minutes
Salon I-L

Event Details Track

18:00 - 19:00
1 hour
Conference Center Foyer

Event Details Track

19:00 - 19:45
45 minutes
Marquis Ballroom

Event Details Track
Slides: http://www.slideshare.net/Spring...

19:45 - 21:00
1 hour 15 minutes
Marquis Ballroom

Event Details Track

21:00 - 22:00
1 hour
Marquis Ballroom Foyer