29
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

Developer Tooling - What’s New and What’s Next

Embed Size (px)

Citation preview

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

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

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

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

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

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

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

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

seconds0 125 250 375 500

3.6.0 3.6.1

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

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

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

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

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

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 ?

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?

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

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?

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

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

connecting the desktop IDE to the cloud-based era of developer

tooling

Eclipse Flux

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

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

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

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

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

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

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

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

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