{"id":26812,"date":"2015-09-17T23:49:22","date_gmt":"2015-09-17T18:19:22","guid":{"rendered":"http:\/\/www.tothenew.com\/blog\/?p=26812"},"modified":"2016-12-19T15:36:38","modified_gmt":"2016-12-19T10:06:38","slug":"springone2gx-2015-day-3-sessions-talks-and-take-aways","status":"publish","type":"post","link":"https:\/\/www.tothenew.com\/blog\/springone2gx-2015-day-3-sessions-talks-and-take-aways\/","title":{"rendered":"SpringOne2GX 2015 &#8211; Day 3 : Sessions, Talks and Take Aways"},"content":{"rendered":"<p>The Day 3, the second last day of the most awaited conference of developers, leaders and organisations working in Java, Spring, Groovy and Grails ecosystem started with a wonderful breakfasted at 7:30 AM in the morning.<br \/>\nTO THE NEW Digital, leaders and contributors in Grails, marked their enthusiastic presence on the Day 3 as well and here is below the summary of the Day.<\/p>\n<p>Forty five parallel sessions in various extremely important topics of Spring, Cloud Native, Groovy and Grails, Big Data, Advanced tracks of Groovy, Web and Java Script ere scheduled throughout the day.<br \/>\nLets do a quick recap of some of these sessions at Day#3 <a href=\"http:\/\/springone2gx.com\/\" target=\"_blank\">SpringOne 2GX<\/a>.<\/p>\n<h3><strong>Grails 3.X Inside And Out  By Graeme Rocher<\/strong><\/h3>\n<p>Graeme Rocher, Grails Project Lead at OCI drove all the audience to a deep dive onto Grails Framework ver 3.0. He started the session with a Demo where he created a plugin for sending Emails. He emphasized on Groovy Traits and how good they could be used and how easier is to write Test Cases on Traits.<br \/>\nHe also mentioned on a couple of built in Traits. Grails Build system was on GANT and now it has moved to Gradle. Rocher also demoed how couple of things which could be achieved in GANT would now be done with Gradle.<\/p>\n<p>This was one of the most interesting and knowledge oriented session of SpringOne 2GX 2015 by the legendry speaker and one of the co &#8211; founder of the Grails Framework himself.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/IMG_20150916_125022.jpg\" alt=\"IMG_20150916_125022\" width=\"4208\" height=\"2368\" class=\"alignnone size-full wp-image-26818\"\/><\/p>\n<h3><strong>Convention Over Configuration: The Gradle Way By C\u00e9dric Champeau<\/strong><\/h3>\n<p><a href=\"https:\/\/gradle.org\/\" title=\"Gradle\" target=\"_blank\">Gradle<\/a> is a Dependency Management and execution system and this session was all about the past, present and future of Gradle. C\u00e9dric Champeau mentioned that the Gradle is plugin friendly, language agnostic and is indeed designed for extensions. He talked about Gradle basics and mentioned in detail about Gradle Wrapper which helps to enforce specific version of Gradle.  Demo for how to compile Java application using Gradle was next, followed by tasks, Integration Tests with Gradle. Writing, publishing and using plugins for Gradle was nicely explained in this session. <\/p>\n<p>He mentioned that the Gradle is superior to other Build systems as model is important to Gradle. He talked about the future of Gradle where Gradle would want to now the model of Plugin . Coming up @Managed, @Model, @Mutate.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0346.jpg\" alt=\"DSC_0346\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26824\" \/><\/p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0348.jpg\" alt=\"DSC_0348\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26823\" \/>  <\/p>\n<h3><strong>Hadoop Workflows And Distributed Yarn Apps Using Spring Technologies By Thomas Risberg &#038; Janne Valkealahti<\/strong><\/h3>\n<p>An amazing Live Demo and explanatory session  on integrating Hadoop Workflows, batches and YARN apps with Spring. Thomas Risberg and<br \/>\nJanne Valkealahti interestingly talked about the &#8220;Consistent Programming Model&#8221;, &#8220;Developer Productivity (creating well defined apps)&#8221; and several use cases. Not only did they talked about cluster metrics in Hive Jobs, but also demonstrated how to connect Hadoop to Cloud Foundry, and mentioned below recommendations :<\/p>\n<ul>\n<li>Deploy Hadoop separately<\/li>\n<li>Use user provided sessions<\/li>\n<li>Refer to VCAP_SERVICES environment variable value in Bot config file.<\/li>\n<\/ul>\n<p>The session next talked about Spring Cloud on YARN, where the speaker drove through Cloud Dataflow and YARN module Deployer. The next moment became even more interesting when Speakers started discussion on &#8220;State Machines&#8221; and Spring State Machine. There was an amazing Demo on Distributed State Machines which drew attention of hall packed audience drastically, which lead to the end of the discusion.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0326.jpg\" alt=\"HADOOP WORKFLOWS AND DISTRIBUTED YARN APPS USING SPRING TECHNOLOGIES\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26815\" \/><\/p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0324.jpg\" alt=\"HADOOP WORKFLOWS AND DISTRIBUTED YARN APPS USING SPRING TECHNOLOGIES\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26814\" \/><\/p>\n<h3><strong>Building a next-generation cloud e-commerce platform with Spring By Petar Tahchiev<\/strong><\/h3>\n<p>Petar Tahchiev talked about his journey of building ECommerce system with Spring Technologies. He mentioned couple of problems that were faced initially :<\/p>\n<ul>\n<li> Legacy Software Issues<\/li>\n<li>Modularity Issues<\/li>\n<li> Infra issues etc.<\/li>\n<\/ul>\n<p>  The solutions identified :<\/p>\n<ul>\n<li> Enterprise<\/li>\n<li> Cloud Ready<\/li>\n<li> FOSS<\/li>\n<li> Modular<\/li>\n<li> Open standards<\/li>\n<li> REST<\/li>\n<li> Demo store friendly.<\/li>\n<\/ul>\n<p>  Below Spring technologies helped to achieve solutions :<\/p>\n<ul>\n<li> Spring Platform BOM<\/li>\n<li> Spring Boot<\/li>\n<li> Spring Data<\/li>\n<li> Spring REST<\/li>\n<li> Spring Batches<\/li>\n<li> Spring WebMVC<\/li>\n<li> Spring Mobile<\/li>\n<\/ul>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0345.jpg\" alt=\"PETAR TAHCHIEV\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26821\" \/> <\/p>\n<h3><strong>Grails &#038; The Real-Time World  By Iv\u00e1n L\u00f3pez<\/strong><\/h3>\n<p>Iv\u00e1n L\u00f3pez, highlighted that in a hyper-connected world the concept &#8220;Real Time&#8221; is used more and more every day. The project we build using traditional Grails architecture is not well suited to achieve the real-time application challanges.<\/p>\n<p>Later on he focused on some good architecture:<\/p>\n<ul>\n<li>Loosely coupled architecture<\/li>\n<li>Build high performance and scalable system<\/li>\n<li>Keep business logic where it belongs<\/li>\n<li><\/li>\n<\/ul>\n<p>The solution exists in Grails world either as a plugin or as a core framework feature:<\/p>\n<ul>\n<li>Platform core plugin<\/li>\n<li>Events plugin<\/li>\n<li>Executor plugin<\/li>\n<li>Grails 2.3 async<\/li>\n<li>Grails 3.x events<\/li>\n<\/ul>\n<p> He demoed the concepts using Enterprise Integration Patterns. He demoed on Spring Integration and its integration with external systems like websockets and XMPP in an easy and decoupled way.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/IMG_20150916_163236-1.jpg\" alt=\"IV\u00c1N L\u00d3PEZ\" width=\"4208\" height=\"2368\" class=\"alignnone size-full wp-image-26825\" \/>  <\/p>\n<h3><strong>Bringing Javax.Cache&#8217;ing To Your Application By Chris Dennis and Alex Snaps<\/strong><\/h3>\n<p>This session talked a lot about one of the most important performance enabler which is indeed caching. Cache is everywhere whether its CPU, Network, Browser, Disk or whatever. We need cache because, &#8220;The Closer, the Faster and the Better&#8221;. Cache is precisely a data structure holding temporary copy of data. <\/p>\n<p>There was detailed discussion on the JSR-107 (aka JCache)<br \/>\nJSR &#8211; 107 says :<\/p>\n<ul>\n<li> Cache Managers<\/li>\n<li>Expiry<\/li>\n<li>Integration<\/li>\n<li>Cache Entry Listeners<\/li>\n<li>Caching Annotations<\/li>\n<li>Managements<\/li>\n<\/ul>\n<p>JSR-107 is &#8220;Store By Value&#8221;.<br \/>\nFollowing this was demo on Cache using famous &#8220;Pet Clinic&#8221; demo. There was some interesting discussion on encache, JPA Entities, Hibernate Caching Entities.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0354.jpg\" alt=\"BRINGING JAVAX.CACHE&#039;ING TO YOUR APPLICATION\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26827\" \/><\/p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0351.jpg\" alt=\"BRINGING JAVAX.CACHE&#039;ING TO YOUR APPLICATION\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26828\" \/>    <\/p>\n<h3><strong>Groovy and Grails : Birds of Feather<\/strong><\/h3>\n<p><strong>&#8211; &#8220;GVM 3.0 RELEASED. Its now SDKMAN&#8221;<strong><\/p>\n<p>BoF was undoubtedly the most awaited session for the day, started at 7PM to last than 2 hours which is always less for such discussions.<\/p>\n<p>Yes, Marco Vermeulen released 3.0 version of GVM, Live in this session with a new name SDKMNAN.<\/p>\n<p>Marco talked about what&#8217;s new in SDKMAN (GVM 3.0) and also about SDKMAN architecture. SDKMAN website : sdkman.io<\/p>\n<p>Few highlights of SDKMAN as discussed in the session :<\/p>\n<ul>\n<li>Client Server Architecture<\/li>\n<li>Bash client<\/li>\n<li>Broker API<\/li>\n<li>Mongo DB<\/li>\n<li>Heroku + Cloud Foundry<\/li>\n<li>drone.io + Code Ship<\/li>\n<li>Broadcast API : Groovy Spring Boot<\/li>\n<li>Release API : Scala Spring Boot<\/li>\n<li>Secure Vendor API<\/li>\n<\/ul>\n<p>The legends of Groovy and Grails ecosystem and key contributors to the community Graeme Rocher, Jeff Scott Brown, Guillaume Laforge, Paul King, C\u00e9dric Champeau, Marco Vermeulen and many more were all present for this 2 hour session in the evening to talk about the past, present and future of the Groovy Ecosystem, take the feedback, answer the questions, emphasize on supporting the community and making it even bigger.<\/p>\n<p>This was the end of the Day 3 at 9 AM with the BoF discussions which left the audience confident, happy and enthusiastic with power and stability of Groovy ecosystem.<\/p>\n<p>It was a long day but it made us even more excited for Day 3 @SpringOne2GX #s2gx.<\/p>\n<h3><strong>Interesting tweets of the day during conference<\/strong><\/h3>\n<blockquote class=\"twitter-tweet\" width=\"550\">\n<p lang=\"en\" dir=\"ltr\">You can inject spring bean in <a href=\"https:\/\/twitter.com\/hashtag\/traits?src=hash\">#traits<\/a> as well. trait MailHelper{ <a href=\"https:\/\/twitter.com\/AutoWire\">@Autowire<\/a>(required=false) MailBean mailBean} ..an example by <a href=\"https:\/\/twitter.com\/graemerocher\">@graemerocher<\/a><\/p>\n<p>&mdash; TO THE NEW Digital (@TOTHENEW) <a href=\"https:\/\/twitter.com\/TOTHENEW\/status\/644193964757786624\">September 16, 2015<\/a><\/p><\/blockquote>\n<p><script async src=\"\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<blockquote class=\"twitter-tweet\" width=\"550\">\n<p lang=\"en\" dir=\"ltr\">Thx <a href=\"https:\/\/twitter.com\/hashtag\/s2gx?src=hash\">#s2gx<\/a> for sold out show of State of Securing RESTful APIs w\/ Spring! Slides <a href=\"http:\/\/t.co\/xK59HG6H00\">http:\/\/t.co\/xK59HG6H00<\/a> c u tomorrow <a href=\"https:\/\/t.co\/fQ4wtCao5z\">https:\/\/t.co\/fQ4wtCao5z<\/a><\/p>\n<p>&mdash; Rob Winch (@rob_winch) <a href=\"https:\/\/twitter.com\/rob_winch\/status\/643945490653020161\">September 16, 2015<\/a><\/p><\/blockquote>\n<p><script async src=\"\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<blockquote class=\"twitter-tweet\" width=\"550\">\n<p lang=\"en\" dir=\"ltr\">Create <a href=\"https:\/\/twitter.com\/gradleplugins\">@gradleplugins<\/a>  with Groovy or Java to avoid external dependencies. <a href=\"https:\/\/twitter.com\/CedricChampeau\">@CedricChampeau<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/s2gx?src=hash\">#s2gx<\/a> <a href=\"https:\/\/twitter.com\/springone2gx\">@springone2gx<\/a><\/p>\n<p>&mdash; TO THE NEW Digital (@TOTHENEW) <a href=\"https:\/\/twitter.com\/TOTHENEW\/status\/644225772014698496\">September 16, 2015<\/a><\/p><\/blockquote>\n<p><script async src=\"\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<blockquote class=\"twitter-tweet\" width=\"550\">\n<p lang=\"en\" dir=\"ltr\">Spring  framework is the most suitable framework to built enterprise apps. <a href=\"https:\/\/twitter.com\/hashtag\/s2gx?src=hash\">#s2gx<\/a> <a href=\"https:\/\/twitter.com\/springone2gx\">@springone2gx<\/a> <a href=\"https:\/\/twitter.com\/ptahchiev\">@ptahchiev<\/a> <a href=\"http:\/\/t.co\/FDL4wDoOfM\">pic.twitter.com\/FDL4wDoOfM<\/a><\/p>\n<p>&mdash; TO THE NEW Digital (@TOTHENEW) <a href=\"https:\/\/twitter.com\/TOTHENEW\/status\/644194882882510848\">September 16, 2015<\/a><\/p><\/blockquote>\n<p><script async src=\"\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<blockquote class=\"twitter-tweet\" width=\"550\">\n<p lang=\"en\" dir=\"ltr\">NOW <a href=\"https:\/\/twitter.com\/SpringOne\">@SpringOne<\/a> 2GX <a href=\"https:\/\/twitter.com\/hashtag\/s2gx?src=hash\">#s2gx<\/a> : Connecting Hadoop with Cloud Foundary explained in 3 simple steps by <a href=\"https:\/\/twitter.com\/trisberg\">@trisberg<\/a><\/p>\n<p>&mdash; TO THE NEW Digital (@TOTHENEW) <a href=\"https:\/\/twitter.com\/TOTHENEW\/status\/644168066792878080\">September 16, 2015<\/a><\/p><\/blockquote>\n<p><script async src=\"\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script>  <\/p>\n<h3><strong>Some random clicks:<\/strong><\/h3>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0363.jpg\" alt=\"soren demoing sdkman release\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26834\" \/><br \/>\n<img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0329.jpg\" alt=\"Random at s2gx\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26830\" \/><\/p>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0356.jpg\" alt=\"with sdk man\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26831\" \/>  <\/p>\n<p>  <img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/IMG_20150916_160016.jpg\" alt=\"random with cedric\" width=\"2592\" height=\"1458\" class=\"alignnone size-full wp-image-26832\" \/><\/p>\n<p>  <img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0368.jpg\" alt=\"random groovy grails feather\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26835\" \/><\/p>\n<p>  <img decoding=\"async\" loading=\"lazy\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/09\/DSC_0365.jpg\" alt=\"open discussion\" width=\"6016\" height=\"4000\" class=\"alignnone size-full wp-image-26836\" \/><\/p>\n<h3><strong>Browse other days blogs<\/strong><\/h3>\n<p><a href=\"http:\/\/www.tothenew.com\/blog\/springone2gx-2015-day-1-demos-talks-keynotes\/\" title=\"SpringOne2GX 2015 \u2013 Day 1 : Demos, Talks, KeyNotes\" target=\"_blank\">SpringOne2GX 2015 \u2013 Day 1 : Demos, Talks, KeyNotes<\/a><br \/>\n<a href=\"http:\/\/www.tothenew.com\/blog\/springone2gx-2015-day-2-demos-talks-keynotes\/\" title=\"SpringOne2GX 2015 \u2013 Day 2 : Demos, Talks, KeyNotes\">SpringOne2GX 2015 \u2013 Day 2 : Demos, Talks, KeyNotes<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Day 3, the second last day of the most awaited conference of developers, leaders and organisations working in Java, Spring, Groovy and Grails ecosystem started with a wonderful breakfasted at 7:30 AM in the morning. TO THE NEW Digital, leaders and contributors in Grails, marked their enthusiastic presence on the Day 3 as well [&hellip;]<\/p>\n","protected":false},"author":13,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":0},"categories":[1],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/26812"}],"collection":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/comments?post=26812"}],"version-history":[{"count":0,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/26812\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/media?parent=26812"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/categories?post=26812"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/tags?post=26812"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}