Slide 1

Slide 1 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ - Developer Tooling - What’s New and What’s Next Andy Clement, Martin Lippert

Slide 2

Slide 2 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Speaker Introduction ! Andy Clement [email protected] @andy_clement ! ! Martin Lippert [email protected] @martinlippert 2

Slide 3

Slide 3 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Disclaimer • This session may contain product features that are currently under development. • This session/overview of the new technology represents no commitment from Pivotal to deliver these features in any generally available product. • Features are subject to change, and must not be included in contracts, purchase orders, or sales agreements of any kind. • Technical feasibility and market demand will affect final delivery. • Pricing and packaging for any new technologies or features discussed or presented have not been determined 3

Slide 4

Slide 4 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ A talk in two parts • Where we are • Looking to the future 4

Slide 5

Slide 5 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ General Updates 5

Slide 6

Slide 6 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ General Updates • Eclipse Platform • STS/GGTS now built on top of Eclipse Luna 4.4 only • update sites still available for Eclipse 3.7 - 4.4 • only shipping zips, not installers • Language tooling • Latest Java8 support is built-in • Groovy 2.3 • AspectJ 1.8.2 • Runtime updates • tc Server 3.0.0, Grails 2.4 6

Slide 7

Slide 7 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ New and Noteworthy • New dashboard • Cloud Foundry tooling updates • Improved import wizard for guides • Improved Spring Boot support • Overall performance improvements • Gradle tooling updates • Groovy/Grails updates • Moved from forums to stack overflow 7

Slide 8

Slide 8 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Spring Tooling Performance Improvements 8 Customer Case - Incremental Build Customer Case - Full Build seconds 0 125 250 375 500 3.6.0 3.6.1

Slide 9

Slide 9 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Demo Time: Spring 9

Slide 10

Slide 10 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Groovy/Grails • Groovy-Eclipse 2.9.0 • Groovy 2.3 - the Java 8 compatible groovy • Traits • Smarter inferencing (content assist) • Grails 2.4 - includes Groovy 2.3 and Spring 4 10

Slide 11

Slide 11 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Java8 language tooling in Eclipse/STS • Full Java8 language support built-in • Full compiler support • content-assist, quick-fix, auto-complete • new refactorings • and more to come ! • Groovy-Eclipse integrates the Groovy compiler with Eclipse Java 8 compiler • AJDT/AspectJ support Java 8 11

Slide 12

Slide 12 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Demo Time: Java 8 12

Slide 13

Slide 13 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ What’s Next? 13

Slide 14

Slide 14 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 14 " What if we take a look beyond the existing desktop IDEs like Eclipse or IntelliJ ?

Slide 15

Slide 15 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 15 " Why can Google search the internet in 100ms, but my Eclipse IDE takes 5 seconds to open a type hierarchy?

Slide 16

Slide 16 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Observations • more and more applications and tools are moving into the cloud • issue trackers • continuous integration systems • version control systems • collaboration tools ! • coding still happens on the desktop • but cloud IDEs emerge 16

Slide 17

Slide 17 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 17 " What happens if we want to move coding into the cloud, too?

Slide 18

Slide 18 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ product challenges • it is possible to have truly good language tooling in a browser- based editor? • including errors/warnings as you type? • including content-assist, auto-completion, refactoring? • for various languages, including Java, Groovy, Scala? ! • do I have to jump over the wall? • leave everything on my local machine behind • looks like an either-or decision 18

Slide 19

Slide 19 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ implementation challenges • how can cloud-based developer tooling be built? • do we have to re-implement everything in JavaScript? • can we somehow re-use existing language tooling/features? 19

Slide 20

Slide 20 text

connecting the desktop IDE to the cloud-based era of developer tooling Eclipse Flux

Slide 21

Slide 21 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Demo Time 21

Slide 22

Slide 22 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ The architecture • Decomposing the IDE into micro services running in the cloud • Consumed by a variety of clients • browser based editors • desktop IDEs • asynchronous messaging as a back-bone • for communication (no RESTful API) • extremely loose coupling • build for the cloud 22

Slide 23

Slide 23 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ The architecture 23

Slide 24

Slide 24 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ future directions • turning everything into a service • for all kinds of languages • for all kinds of additional features • connecting more pieces • different desktop IDEs (not just Eclipse) • different cloud-based tooling environments (like Codenvy) • continue to ensure a smooth migration path • Developers free to stop at any point along the path 24

Slide 25

Slide 25 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ future directions 25

Slide 26

Slide 26 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ status • Not yet production grade • still a lot of work needs to be done • moving towards a public accessible beta ! • Wanna take a look at the code? • Eclipse Flux: https://github.com/eclipse/flux ! • Interested? Feedback? • Let us know! 26

Slide 27

Slide 27 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Conclusions 27

Slide 28

Slide 28 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Upcoming releases • more frequent minor incremental releases • to get fixes and performance improvements out quickly • focus on stability, performance, and scalability ! • STS/GGTS 3.6.2 ships in early October 2014 (on Luna SR1) • STS/GGTS 3.6.3 ships in early December 2014 (on Luna SR1) • STS/GGTS 3.6.4 ships in early March 2015 (on Luna SR2) 28

Slide 29

Slide 29 text

Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Q&A and thanks for your attention ! http://spring.io/tools ! Andy Clement @andy_clement [email protected] ! Martin Lippert @martinlippert [email protected] 29