Home » SpringOne 2014, Dallas TX

SpringOne 2014, Dallas TX

SpringOne_Dallas_2014

Dealer.com provided me the opportunity to attend the SpringOne conference that took place in Dallas, Texas this year. As the name suggests, SpringOne is a premier conference for Java and Groovy developers focusing on Spring framework. This year, it was attended by over 1,000 tech enthusiasts who not only traveled from all over the country, but from various parts of the world as well. It was a very humbling experience for me to meet and talk with developers that are working on enterprise products in giant companies like eBay and FedEx. My conversations always involved talking about the Dealer.com development stack. While we may not always feel we are using latest tools and frameworks, all the people I spoke to were very impressed that we are so ahead of the game. We have definitely set high standards for ourselves. While we may judge ourselves for things like not using Java 8 in all of our projects here at Dealer.com, it was a good feeling to know that we are doing better than many in the industry.

This year, SpringOne was focused on Microservices, Reactive Programming, Big Data and Configurationless Development. There were up to 9 tracks happening concurrently with 90 minutes slots. The tracks covered a variety of topics including Spring Boot, Grails 3.0 preview, Groovy preview, Spring Data REST, Spring eXtreme Data (XD), Spring with Java 8, CloudFoundry, Future of Gradle and more. Keynotes included code demos and talks by Pivotal engineers and Spring project leads Graeme Rocher, Dave Syer, Juergen Hoeller and Phil Webb to name a few. Andrew Glover of Netflix also spoke at opening night keynotes to share his experiences.

Spring Boot dominated the conference. Almost all of the talks I attended either had code samples in Spring Boot or spoke about its features. Spring Boot is a relatively new project that takes an opinionated approach towards setting up spring projects and removing boilerplate code. It works towards removing configurations, but does not stop you from customizing it anyway you want. It comes with full Gradle and Maven support. You can define dependencies using your preferred build tool and depending on what you have on your application classpath, boot will set up the application appropriately – hence it has opinions about your application. It’s capable of packaging your application in a standalone jar with an embedded tomcat server, but still allows the creation of a standard war file.

Spring Boot has an optional command line tool that can be used for prototyping applications. There was also some rage about Tweetable apps in SpringOne. These are apps that only require 140-characters or less to actually run. Boot command line makes it even easier. For those who would like to try it:

    1. Install Spring Boot Command Line using homebrew (see link below for more options)
      • brew tap pivotal/tap
      • brew install springboot
    2. Save following in a groovy file:
      @RestController
      class HelloController {
          @RequestMapping("/")
          public String home() {
               "Hello DDC"
          }
      }
    3. Run the app
      • spring run <name of the file>
    4. Navigate to http://localhost:8080 to see your app running.

This is of course a very simple example using Spring Boot command line. The Spring Boot reference guide is a very good resource to explore Boot features. You can also use Spring Initializer to generate Maven or Gradle projects with the required dependencies. We are currently in R&D/Pilot phase for Spring Boot and Framework team has one app running on it. I am curious to know your take on it!

All of the SpringOne talks will be available on YouTube and InfoQ. My favorites were “Bootiful application with Spring Boot” and “Spring Data REST – Data Meets Hypermedia”. I will post links to them as they become available.

Overall, this was a great experience for me. With enough notice, hopefully we can get the budget to send more attendees to SpringOne in Washington D.C. next year. Speaking at the conference is another way to get involved!