Web-based development with Orion and Flux (APIcon 2014)

Preview:

DESCRIPTION

Overview of the Eclipse Orion and Flux projects.

Citation preview

Orion: Re-imagining Software Development

Mike MilinkovichExecutive DirectorEclipse Foundation@mmilinkov

iWI 2013February 28, 2013

You Know Eclipse

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 2

Platform & Modularity

Run-time

Plug-insP

latf

orm

New Plug-ins are First Class Citizens – same footing for everyone

Open API and commercially friendly licensing – Low barriers to Entry

Ease of Integration and Extensibility Spurs Innovation

Competition can take place on implementations – users decide winners

28 May 2014 3Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Creating an Ecosystem

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 4

Lessons Learned

• The Good– Think platform– Ecosystems win– Modularity and extensibility are vital

• The Bad– The desktop is the point of integration

• The Ugly– Overwhelming complexity

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 5

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 6

Times Change

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 7

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 8

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 9

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 10

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 11

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 12

What’s wrong with this picture?

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 13

What’s wrong with this picture?

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 14

200 MB

250 MB

153 MB

tools for the webon the web

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 15

code.everywhere = true;

The Orion ProjectA Browser Based Open Tooling Platform

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 16

Why and What is Orion?

• Initiated a little over 3 years ago

• A change from other Eclipse projects

• A shift to Web based application delivery

• The Web is the Platform

• Complex IDEs replaced by Web workflows

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 17

Do Developers Want to Move to the Cloud?

• Progression to Cloud based tools

• GitHub - dramatic shift in expectations

• Code Analytics like Ohloh

• Platform as a Service offerings all Cloud based

How was your last IDE setup experience?

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 18

How Can we Get Them to Want to Move?

• Follow a set of design principles, be agile

• Embrace the modern browser

• Create a platform that’s extensible

• Create components that are consumable

• Enable cross-site workflows & integration

• Create a tool suite that does what is needed

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 19

What is modularity in the Web?

“plugins” live right in your browser pageAgnostic to where the plugin or code came from

Plug-in

Plug-in

Web Server

Web Server

Web Server

Web Client

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 20

Example: JSBeautify (JavaScript prettyprint) plugin

You provide html, javascript elements, from your web site

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 21

Orion Pages and Plugins

• Orion provides many pages by default

• Provides necessary functionality for developers

• Go from creating, editing, self hosting to deployment and source code control

• Extensibility is what sets Orion apart

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 22

Time for a Demo

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 23

The Web is International, and so is Orion

i18N built in the core, the UI and in the plug-insText editor capable of both Double Byte and BidiFully accessiblePlugin for Externalizing strings to bundles

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 24

Two sources of an Orion Server

Multi-user Equinox based Java ServerGreat for reusing existing Eclipse plugins and exposing them RESTfully to an Orion clientNode.js based single user NPM installVery portable and great performanceDeploy anywhere Node is installed

Also works on embedded

boards like the Raspberry Pi

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 25

Coming Soon – Docker

4 Feb 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 26

4 Feb 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 27

4 Feb 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 28

4 Feb 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 29

57 different products

Challenge 1We don’t know yet how cloud-based

developer tooling should look like In particular, no one knows how to support

compiled languages like Java(as in really supporting those languages!)

30

15 May 2014 Copyright (c) 2014 Eclipse Foundation, Inc. 30

And theother tools?

What about all the other tools that I love to use on my machine?

31

15 May 2014 Copyright (c) 2014 Eclipse Foundation, Inc. 31

Challenge 2jump over into the cloud and leave everything else behind doesn’t work

today

32

15 May 2014 Copyright (c) 2014 Eclipse Foundation, Inc. 32

The backbone:Asynchronous Messaging

15 May 2014 Copyright (c) 2014 Eclipse Foundation, Inc. 33

All sorts of micro services

15 May 2014 Copyright (c) 2014 Eclipse Foundation, Inc. 34

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

Project FluxDemo

© 2014 Pivotal15 May 2014 Copyright (c) 2014 Eclipse Foundation, Inc. 35

Find out more…

Contact the Orion team if you’re interested in:consuming, contributing, moving to web technologies, a deep dive on the implementation

http://eclipse.org/orion

http://orionhub.org - Anyone can create an account here

http://planetorion.org

follow Orion on Twitter @orionhub or Google+

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 36

Thank You!

Questions?

mike@eclipse.org@mmilinkov

28 May 2014 Copyright (c) 2014, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 37

Recommended