More Related Content
Similar to Orion Introduction (20)
More from Tomasz Zarna (8)
Orion Introduction
- 2. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Agenda
•What is Orion?
•A glance at web technologies
•More about Orion
•Demo
•Discussion and Q&A
- 3. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Goals of Orion
•Build developer tooling that works in a browser ,
•at web scale,
•integrating well with existing tools that exist on the web,
•based on well ‐ proven web architectures - REST, HTTP,
JSON, OAuth, OpenID, and others.
- 4. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Use Strengths of the Web
• zero install on the client
• simple connectivity – links
• trivial update mechanism
• powerful rendering engine
• look and feel easy to adapt
• large, activecommunity
• innovation by everyone
• no central “IDE”
• artifacts all over the web
• highly distributed content
• refresh the page
• scalable computing power
- 5. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Why work on this now?
•There are other online IDEs already, extremely high rate of
innovation in online tools for web development
•We need to start now, learn, fail, try again, in order to
become a player in this space
•We (IBM) would like to see a community to form around
this forms at Eclipse, and are contributing a seed
- 6. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
A Glance at Web Architectures - REST
• An important concept in RESTis the existence of resources (sources of specific
information),each ofwhich is referenced with a global identifier (e.g., a URI in HTTP). In
order to manipulate these resources, componentsofthe network (user agentsand origin
servers) communicate via a standardized interface (e.g., HTTP) and exchange
representationsofthese resources (the actual documentsconveying the information).
- 7. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Web Architectures - REST
• http://en.wikipedia.org/wiki/Representational_State_Transfer
• http://prescod.net/rest/mistakes/
- 8. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
A Glance at Web Architectures
•HTTP - a networking protocol for distributed,
collaborative, hypermedia information systems. HTTP is
the foundation of data communication for the WWW
•Ajax - a group of interrelated web developmentt methods
used on the client-side to create interactive web
applications. With Ajax, web applications can retrieve data
from the server asynchronously in the background
- 9. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
A Glance at Web Architectures
•JSON - a lightweight text-based open standard designed
for human-readable data interchange
• JSON vs XML picture
- 10. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
•OpenID – a standard that describes how users can
authenticated in a decentralized manner
- 11. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
•OAuth – an open standard for authorization, which allows
users to share their private resources stored on one site
with another site without having to hand out their
credentials
- 12. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Orion Assumptions
•Software development in a browser
editing
navigating folders
searching
working with SCM
•Set of linked web pages, NOT an IDE running in a browser
easy to integrate other functionality even if hosted on different
servers
- 13. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Why Not an IDE in a Browser?
- 14. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Why Not an IDE in a Browser?
- 15. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Why Not an IDE in a Browser?
- 16. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Why Not an IDE in a Browser?
- 17. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Context: Already in a Browser
•Bug tracking (Bugzilla, JIRA, Trac, Lighthouse, Rational
RTC)
•Builds (Hudson/Jenkins)
•Code review (Bugzilla, Gerrit, GitHub)
•Documentation, code snippets (pastebin, Gist)
•Browsing code repositories (GitHub, ViewCVS, Rational
RTC)
•Debugger (Firebug, WebKit Inspector, Developer Tools)
- 18. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
What’s Missing? Not Much
•Code editor
•Navigator
•Work with SCM(commit, compare, merge, etc)
•Indexing - full text search
•Unit tests
•Initial focus on web developers working on client-side
JavaScript, HTML,CSS
- 19. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Orion Design Principles
•Regular hyperlinks, back button, bookmarking,link sharing
•Functionality on separate pages.
Page = Task + Resource
•Performant and Lightweight. Speed trumps power.
•Components should have value on their own.
•Low barrier of entry for adopters. Don’t require technology
buy‐in.
- 20. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Demo
• Log in/log out
• openId
• Navigator + editor
• Git status & log
• Compare
• Sites
• Firebug integration
• Search
- 21. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Integration Possibilities
•Client-side “plug-ins” : adding commands to existing UI
Integrate withSCMs:
Git is used to speed up self-hosting
There is ongoing effort on enabling RTCin Orion
W3C validator, JSLint, ...
•Hyperlink integration
Bugzilla, Gerrit, SCM stats
•Integrate with browser debuggers:
Firebug, WebKit Inspector
•Host additional UI components, e.g. OpenSocial Gadgets
•Server-side
OSLC: Consume and produce server APIs
- 22. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Integration Possibilities (cntd.)
•Web-Based integration
initializr.com - equivalent of “New Project” wizard
smush.it - lossless “compression” of images
CSS Sprite Generator
jsbeautifier.org - JavaScript code formatter
- 23. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Integration Possibilities (Demo)
• Create project
initializr.com
• Import zip
• Disable jslint
• Go to page
(comment in log)
- 24. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Getting Started
• Homepage / OrionHub: http://eclipse.org/orion
•Installing on localhost
http://wiki.eclipse.org/Orion/How_Tos/Install_Orion_on_L
ocalhost
• Clonning
git://git.eclipse.org/gitroot/e4/org.eclipse.orion.client.git
git://git.eclipse.org/gitroot/e4/org.eclipse.orion.server.git
https://github.com/eclipse
orion-client
orion-server
- 25. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
The End
•Q&A
•Thank you
- 26. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Legal Notice
IBMandthe IBMlogoaretrademarksor registered
trademarksofIBMCorporation,intheUnitedStates,other
countriesorboth.
Java andall Java-basedmarks,amongothers,are
trademarksorregisteredtrademarksofSunMicrosystems
inthe UnitedStates,othercountriesorboth.
EclipseandtheEclipselogoare trademarksofEclipse
Foundation,Inc.
Other company,product andservicenamesmaybe
trademarksorservice marksof others.
26
- 27. Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.
Code Editor
• Fast
• Scalable
• Works in all
desktop browsers
• Faster then
desktop Eclipse
editor
Editor's Notes
- intializr navigate + edit site clone, status, commit, log