Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

38
Eclipse Orion: The IDE in the Clouds Murat Yener @yenerm Wednesday, October 9, 13

Transcript of Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

Page 1: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

Eclipse Orion: The IDE in the Clouds

Murat Yener@yenerm

Wednesday, October 9, 13

Page 2: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

who am i??

• Java, Flex, GWT, iOS, Android developer

• Principle Mentor at Eteration

• Eclipse Committer

• GDG (GTUG) Istanbul Organizer

• Conference Speaker

Wednesday, October 9, 13

Page 3: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

who am i??

• Java, Flex, GWT, iOS, Android developer

• Principle Mentor at Eteration

• Eclipse Committer

• GDG (GTUG) Istanbul Organizer

• Conference Speaker

Wednesday, October 9, 13

Page 4: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

who am i??

• Java, Flex, GWT, iOS, Android developer

• Principle Mentor at Eteration

• Eclipse Committer

• GDG (GTUG) Istanbul Organizer

• Conference Speaker

Mobile App Developer at Intel

Wednesday, October 9, 13

Page 5: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

who am i??

• Java, Flex, GWT, iOS, Android developer

• Principle Mentor at Eteration

• Eclipse Committer

• GDG (GTUG) Istanbul Organizer

• Conference Speaker

Mobile App Developer at Intel

Wednesday, October 9, 13

Page 6: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

What is Orion?

• Software development in browser

• Initial focus was html, javascript and css

• IBM Ottowa, demo at EclipseCon 2011

Wednesday, October 9, 13

Page 7: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

in a browser?!?

• repositories (google code, github)

• debuggers (chrome dev tools, firebug)

• code review, issue/bug tracker (bugzilla, jira, gerrit)

• documentation (javadocs, wikis, apache sites)

Wednesday, October 9, 13

Page 8: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

in a browser?!?

• repositories (google code, github)

• debuggers (chrome dev tools, firebug)

• code review, issue/bug tracker (bugzilla, jira, gerrit)

• documentation (javadocs, wikis, apache sites)

then w

hy not c

oding?!?

Wednesday, October 9, 13

Page 9: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

what we need is...

• code editing

• compile(?) interpret

• projects

• search capabilities

• committing to repositories

Wednesday, October 9, 13

Page 10: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

meet Eclipse Orion

• browser based open tool integration platform for developing for the web

• written in javascript and runs in a browser

• is not an IDE in single tab, instead runs each file in a new tab

• up and running on OrionHub (public test)

• and.... plugins!!

Wednesday, October 9, 13

Page 11: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

but still why?!?

• zero install on the client

• lower cost of ownership

• scalable computing power

• simple control and sharing via links

• powerful engine, the browsers

• and well cloud and web is fancy :)

Wednesday, October 9, 13

Page 12: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

powered by..

• server: java with equinox, jetty, jgit

• client: html5, js, css

• experimental server with node.js!!

Wednesday, October 9, 13

Page 13: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

cool, where to get started?!?

• on OrionHub, nothing to download or install

• on local, download and launch the orion server (30-40mb)

Wednesday, October 9, 13

Page 14: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

logging

• create an account or login

*from Orion website

Wednesday, October 9, 13

Page 15: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

creating your project

Wednesday, October 9, 13

Page 16: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

creating your project

Wednesday, October 9, 13

Page 17: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

using the tools

Wednesday, October 9, 13

Page 18: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

using the tools

Wednesday, October 9, 13

Page 19: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

actions

Wednesday, October 9, 13

Page 20: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

importingalso Drag’n Dropimport

..and export

Wednesday, October 9, 13

Page 21: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

javascript development

uses JSLint

markers

Wednesday, October 9, 13

Page 22: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

css development

Wednesday, October 9, 13

Page 23: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

html development

Wednesday, October 9, 13

Page 24: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

loading plugins

JSBeautifier http://mamacdon.github.com/0.5/plugins/beautify/jsbeautify.html

Wednesday, October 9, 13

Page 25: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

searching

Wednesday, October 9, 13

Page 26: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

searching (cont.)

search files

search within files

Wednesday, October 9, 13

Page 27: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

searching (cont.)

search files

search within files

Wednesday, October 9, 13

Page 28: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

working with git

Wednesday, October 9, 13

Page 29: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

working with git

Wednesday, October 9, 13

Page 30: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

git status

Wednesday, October 9, 13

Page 31: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

launching

Wednesday, October 9, 13

Page 32: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

running local

download

unzip

launch

Linux: Run eclipse/orion.Mac OS X: Double-click eclipse/orion.

Windows: Double-click eclipse\orion.exe.

Wednesday, October 9, 13

Page 33: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

plugins

Wednesday, October 9, 13

Page 34: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

developing plugins

• create an html page

• import plugin.js

• write your service

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!-- Dependencies --> <script type="text/javascript" src="../orion/plugin.js"></script> <script> window.onload = function() { <!-- Service declarations go here --> }; </script> </head> <body> </body> </html>

Wednesday, October 9, 13

Page 35: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

hey what, service??

• service registry to access libraries

function Explorer(serviceRegistry, ...) { this.registry = serviceRegistry; ... } ... deleteFile: function(itemId) { var item = this.myTree.getItem(itemId); var service = registry.getService("orion.page.dialog"); var message = "Are you sure you want to delete '" + item.Name + "'?"; service.confirm(message, function(doit) { /* perform deletion */}); }

Wednesday, October 9, 13

Page 36: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

service definitions var provider = new orion.PluginProvider(); var serviceImpl = { run : function(text) { return text.toUpperCase(); } }; var serviceProps = { name : "UPPERCASE", img : "/images/gear.gif", key : [ "u", true ] }; provider.registerService("orion.edit.command", serviceImpl, serviceProps); provider.connect();

Wednesday, October 9, 13

Page 37: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

demodeveloping a plugin

Wednesday, October 9, 13

Page 38: Eclipse Orion: The IDE in the Clouds (JavaOne 2013)

</slides>

[email protected]@yenerm

devchronicles.com

Mobile Java with MGWT: Still “Write Once, Run Everywhere” [BOF2042]Monday 7:30pm, Hilton Continental Ballroom 5

The Zodiac of OSGi: Meet Eclipse Libra, Virgo, and Gemini [CON1749]Tuesday 8:30am, Hilton Continental Ballroom 4

Eclipse Orion: The IDE in the Clouds [CON4107], [BOF3999]Tuesday 5:30pm, Hilton Continental Ballroom 4

Wednesday 3:00pm, Hilton Continental Ballroom 7/8/9

Wednesday, October 9, 13