orion introduction

30
Orion - Introduction Szymon Brandys Tomasz Żarna IBM Eclipse Platform & Orion

Upload: tomasz-zarna

Post on 03-Sep-2014

330 views

Category:

Technology


3 download

DESCRIPTION

Presented @ 33rd Degree 2011 in Krakow

TRANSCRIPT

Page 1: Orion Introduction

Orion - IntroductionSzymon BrandysTomasz Żarna

IBMEclipse Platform & Orion

Page 2: Orion Introduction

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

Page 3: Orion Introduction

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.

Page 4: Orion Introduction

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, active community•innovation by everyone

•no central “IDE”•artifacts all over the web•highly distributed

content•refresh the page•scalable computing

power

Page 5: Orion Introduction

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

Page 6: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

A Glance at Web Architectures - REST• An important concept in REST is the existence of resources (sources of

specific information), each of which is referenced with a global identifier (e.g., a URI in HTTP). In order to manipulate these resources, components of the network (user agents and origin servers) communicate via a standardized interface (e.g., HTTP) and exchange representations of these resources (the actual documents conveying the information).

Page 7: Orion Introduction

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/

Page 8: Orion Introduction

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

Page 9: Orion Introduction

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

Page 10: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

•OpenID – a standard that describes how users can authenticated in a decentralized manner

Page 11: Orion Introduction

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

Page 12: Orion Introduction

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

Page 13: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Why Not an IDE in a Browser?

Page 14: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Why Not an IDE in a Browser?

Page 15: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Why Not an IDE in a Browser?

Page 16: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Why Not an IDE in a Browser?

Page 17: Orion Introduction

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)

Page 18: Orion Introduction

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

Page 19: Orion Introduction

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.

Page 20: Orion Introduction

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

Page 21: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Integration Possibilities•Client-side “plug-ins” : adding commands to existing UI

Integrate with SCMs: Git is used to speed up self-hosting There is ongoing effort on enabling RTC in 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

Page 22: Orion Introduction

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

Page 23: Orion Introduction

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)

Page 24: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Getting Started• Homepage / OrionHub: http://eclipse.org/orion•Installing on localhosthttp://wiki.eclipse.org/Orion/How_Tos/Install_Orion_on_Localhost

• 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

Page 25: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

The End•Q&A•Thank you

Page 26: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Legal Notice IBM and the IBM logo are trademarks or

registered trademarks of IBM Corporation, in the United States, other countries or both.

Java and all Java-based marks, among others, are trademarks or registered trademarks of Sun Microsystems in the United States, other countries or both.

Eclipse and the Eclipse logo are trademarks of Eclipse Foundation, Inc.

Other company, product and service names may be trademarks or service marks of others.

26

Page 27: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Code Editor•Fast•Scalable•Works in all

desktop browsers

•Faster then desktop Eclipse editor

Page 28: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Navigator

Page 29: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Status / Compare

Page 30: Orion Introduction

Orion - Introduction | Copyright © IBM Corp., 2011. All rights reserved.

Log