SlideShare a Scribd company logo
Mar$n	
  Lippert
SCRIPTED	
  -­‐	
  EMBRACING
    ECLIPSE	
  ORION
      mlippert@vmware.com
          @mar$nlippert
about me
    Mar4n	
  Lippert
     Staff	
  Engineer,	
  R&D,	
  at	
  SpringSource/
     VMware	
  and	
  lead	
  of	
  Spring	
  Tool	
  Suite	
  
     development




    Working	
  areas
      •Eclipse	
  Tooling	
  for	
  the	
  Spring	
  plaAorm
      •Open	
  Source	
  CommiDer
      •Aspect-­‐Weaving	
  for	
  OSGi
      •Cloud	
  IDEs	
  and	
  JavaScript
      •Agile	
  soKware	
  development




                                                                  2
implementing developer tooling
     for a long time now
 (AJDT, Groovy-Eclipse, Grails IDE, Spring IDE, Cloud Foundry Integration for
Eclipse, tc Server Integration for Eclipse, Gradle Integration for Eclipse, add-ons
                            for m2e, Equinox Weaving)
But how will developer tooling
    look like in the future?


                       Or
 „why is Google able to search the whole web in
10ms and my Eclipse needs 100x longer to open a
                type hierarchy“
what happens
if you do things differently?

 lightweight instead of heavyweight
       reusing existing tools
  connecting instead of integrating
           browser based
            cloud hosted
                  ...
Eclipse Orion
„Open Source Platform for
Cloud Based Development“

      similar direction
     awesome platform
very modular and re-useable
Eclipse Orion
       provides a platform for:

   navigating files and other content
clone from and push to git repositories
           code (editing files)
   directly testing (hosting) our app

                   +
          plug-in mechanism
Scripted - Embracing Eclipse Orion
Scripted - Embracing Eclipse Orion
orionhub.org
playground hosted by Eclipse
Client
               purely JavaScript
             runs in the browser
    plug-ins hosted in non-visible iframes

                  Server
           Java (OSGi application)
    relatively stupid (no real logic here)
new: node.js-based JavaScript implementation
Introducing

Scripted
a lightweight JavaScript editor
  that runs in your browser
Choices and decisions

       focus on editor
       lightweight, fast
      keystroke driven

       running locally

advanced code comprehension
   using inferencing engine
 module-aware content-assist
Choices and decisions
                           Eclipse Orion
                          (all JavaScript client)

  navigator                                                  content assist


Git integration                                                 folding
                        Editor Component
 site hosting                                                   JSLint


                                 sign-on




                           Eclipse Orion
                            (hosted or local)

                  serve JS/HTMS/CSS/files           search


                    Git integration         sign-on


                             OSGi (Java)
Choices and decisions
                    Eclipse Orion
                   (all JavaScript client)

  navigator                                  content assist


Git integration                                 folding
                  Editor Component
 site hosting                                   JSLint


                          sign-on
Choices and decisions

                                     content assist


Git integration                         folding
                  Editor Component
 site hosting                           JSLint


                       sign-on
Choices and decisions

                                  content assist


                                     folding
               Editor Component
site hosting                         JSLint


                    sign-on
Choices and decisions

                         content assist


                            folding
      Editor Component
                            JSLint


           sign-on
Choices and decisions

                         content assist


                            folding
      Editor Component
                            JSLint
Choices and decisions

                         content assist


      Editor Component
                            JSLint
Choices and decisions
       Scripted Client
       (all JavaScript client)

                                 content assist

                                   cross file
      Editor Component             analysis

                                    JSLint
Choices and decisions
       Scripted Client
       (all JavaScript client)

                                   content assist

                                     cross file
      Editor Component               analysis

                                      JSLint


                     AMD support
Choices and decisions
         Scripted Client
         (all JavaScript client)

                                     content assist

                                       cross file
       Editor Component                analysis

                                        JSLint


    CommonJS           AMD support
     support
Choices and decisions
                        Scripted Client
                        (all JavaScript client)

simple navigator                                    content assist

                                                      cross file
                      Editor Component                analysis

                                                       JSLint


                   CommonJS           AMD support
                    support
Choices and decisions
                        Scripted Client
                        (all JavaScript client)

simple navigator                                    content assist

                                                      cross file
inplace outline
                      Editor Component                analysis

                                                       JSLint


                   CommonJS           AMD support
                    support
Choices and decisions
                          Scripted Client
                          (all JavaScript client)

simple navigator                                      content assist

                                                        cross file
 inplace outline
                        Editor Component                analysis

single page layout                                       JSLint


                     CommonJS           AMD support
                      support
Choices and decisions


            Eclipse Orion
             (hosted or local)

   serve JS/HTMS/CSS/files        Search


     Git Integration         Sign-On


              OSGi (Java)
Choices and decisions


           Scripted Server
           (local, all JavaScript)

   serve JS/HTMS/CSS/files           search
Choices and decisions


           Scripted Server
           (local, all JavaScript)

   serve JS/HTMS/CSS/files           search




                node.js
Choices and decisions


           Scripted Server
           (local, all JavaScript)

   serve JS/HTMS/CSS/files           search


            cross file analysis


                node.js
Scripted overview
                              Scripted Client
                             (all JavaScript client)

simple navigator                                                content assist

                                                                  cross file
 inplace outline
                           Editor Component                       analysis

single page layout                                                 JSLint


                      CommonJS             AMD support
                       support



                             Scripted Server
                             (local, all JavaScript)

                     serve JS/HTMS/CSS/files           search


                              cross file analysis


                                  node.js
Demo time...
Summary
 Eclipse Orion is an awesome
platform for building browser-
         based tooling
What is next?
continuously contribute back to Orion
     add more innovative features
continue to think beyond the borders
Resources
                   Scripted project
     https://github.com/scripted-editor/scripted

                        Forum
https://groups.google.com/forum/#!forum/scripted-dev

                      Issue Tracker
https://issuetracker.springsource.com/browse/scripted

                Sample project used here
https://github.com/aeisenberg/scripted-demo-s2gx2012
Q&A
and thank you for your attention




            Martin Lippert
      Staff Engineer - VMware
      mlippert@vmware.com
           @martinlippert

More Related Content

PDF
Modern Architectures with Spring and JavaScript
PDF
JAX 2013: Modern Architectures with Spring and JavaScript
PDF
WJAX 2013: Die PaaS-Parade - Teil 2 - Cloud Foundry
PDF
Jax2013 PaaS-Parade - Part 1: Cloud Foundry
PDF
Spring Tooling: What's new and what's coming
PDF
Apache Continuum Build, Test, and Release
PDF
Building .NET Microservices
PPTX
IPaaS 2.0: Fuse Integration Services (Robert Davies & Keith Babo)
Modern Architectures with Spring and JavaScript
JAX 2013: Modern Architectures with Spring and JavaScript
WJAX 2013: Die PaaS-Parade - Teil 2 - Cloud Foundry
Jax2013 PaaS-Parade - Part 1: Cloud Foundry
Spring Tooling: What's new and what's coming
Apache Continuum Build, Test, and Release
Building .NET Microservices
IPaaS 2.0: Fuse Integration Services (Robert Davies & Keith Babo)

What's hot (20)

PPTX
Dot net platform and dotnet core fundamentals
PDF
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
PDF
Enterprise Integration for Ethereum
PDF
Building Killer RESTful APIs with NodeJs
PPTX
Infrastructure as Code on Azure: Show your Bicep!
PPTX
Budowanie szablonów Azure Resource Manager w praktyce od podstaw
PPT
Getting Started with Docker
PDF
Spring on Kubernetes
PPTX
Kubernetes your next application server
PPTX
ASP.NET Core deployment options
PPTX
Micro Services in .NET Core and Docker
PDF
Kubernetes for Serverless - Serverless Summit 2017 - Krishna Kumar
PDF
Planning Your Cloud Strategy
PPTX
Blue whale, jail and Microsoft
PDF
Evolve or Fall Behind: Driving Transformation with Containers - Sai Vennam - ...
PPTX
Unpacking .NET Core | EastBanc Technologies
PDF
Securing Containers - Sathyajit Bhat - Adobe - Container Conference 18
PDF
How to build an event-driven, polyglot serverless microservices framework on ...
PDF
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
PPTX
Continuous Delivery to Kubernetes Using Helm
Dot net platform and dotnet core fundamentals
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
Enterprise Integration for Ethereum
Building Killer RESTful APIs with NodeJs
Infrastructure as Code on Azure: Show your Bicep!
Budowanie szablonów Azure Resource Manager w praktyce od podstaw
Getting Started with Docker
Spring on Kubernetes
Kubernetes your next application server
ASP.NET Core deployment options
Micro Services in .NET Core and Docker
Kubernetes for Serverless - Serverless Summit 2017 - Krishna Kumar
Planning Your Cloud Strategy
Blue whale, jail and Microsoft
Evolve or Fall Behind: Driving Transformation with Containers - Sai Vennam - ...
Unpacking .NET Core | EastBanc Technologies
Securing Containers - Sathyajit Bhat - Adobe - Container Conference 18
How to build an event-driven, polyglot serverless microservices framework on ...
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
Continuous Delivery to Kubernetes Using Helm
Ad

Similar to Scripted - Embracing Eclipse Orion (20)

PDF
Embracing Eclipse Orion
PDF
Browser and Cloud - The Future of IDEs?
PDF
Tooling for the JavaScript Era
PDF
State of the art: Server-Side JavaScript - dejeuner fulljs
PDF
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
PDF
Open End To End Js Stack
PDF
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
KEY
State of the art server side java script
KEY
State of the art: server-side javaScript - NantesJS
KEY
State of the art: Server-side JavaScript - MoscowJS
PDF
Java keynote preso
KEY
How to Test Enterprise Java Applications
PDF
Kann JavaScript elegant sein?
PDF
Modern Architectures with Spring and JavaScript
PPTX
Selenium Camp 2012
PDF
Next Generation Hybrid Applications with Qt - presentation for SEE 2009
PDF
State of the art: Server-Side JavaScript - WebWorkersCamp IV - Open World For...
PDF
Node.js
KEY
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
PPTX
Women Who Code, Ground Floor
Embracing Eclipse Orion
Browser and Cloud - The Future of IDEs?
Tooling for the JavaScript Era
State of the art: Server-Side JavaScript - dejeuner fulljs
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012
Open End To End Js Stack
Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012
State of the art server side java script
State of the art: server-side javaScript - NantesJS
State of the art: Server-side JavaScript - MoscowJS
Java keynote preso
How to Test Enterprise Java Applications
Kann JavaScript elegant sein?
Modern Architectures with Spring and JavaScript
Selenium Camp 2012
Next Generation Hybrid Applications with Qt - presentation for SEE 2009
State of the art: Server-Side JavaScript - WebWorkersCamp IV - Open World For...
Node.js
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
Women Who Code, Ground Floor
Ad

More from martinlippert (12)

PDF
WJAX 2013: Java8-Tooling in Eclipse
PDF
EclipseCon-Europe 2013: Optimizing performance - how to make your Eclipse-bas...
PDF
EclipseCon-Europe 2013: Making the Eclipse IDE fun again
PDF
JAX 2013: Introducing Eclipse Orion
PDF
PaaS Parade - Cloud Foundry
PDF
What's new with tooling for Spring, Grails, and the Cloud
PDF
Why SOLID matters - even for JavaScript
PDF
JAX 2012: Moderne Architektur mit Spring und JavaScript
PDF
JAX 2012: Pimp Your IDE Productivity
PDF
WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...
PDF
Spring Tooling Update - New & Noteworty (at SpringOne 2011)
PDF
Classloading and Type Visibility in OSGi
WJAX 2013: Java8-Tooling in Eclipse
EclipseCon-Europe 2013: Optimizing performance - how to make your Eclipse-bas...
EclipseCon-Europe 2013: Making the Eclipse IDE fun again
JAX 2013: Introducing Eclipse Orion
PaaS Parade - Cloud Foundry
What's new with tooling for Spring, Grails, and the Cloud
Why SOLID matters - even for JavaScript
JAX 2012: Moderne Architektur mit Spring und JavaScript
JAX 2012: Pimp Your IDE Productivity
WaveMaker - Spring Roo - SpringSource Tool Suite - Choosing the right tool fo...
Spring Tooling Update - New & Noteworty (at SpringOne 2011)
Classloading and Type Visibility in OSGi

Recently uploaded (20)

PDF
Machine learning based COVID-19 study performance prediction
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
KodekX | Application Modernization Development
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Empathic Computing: Creating Shared Understanding
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
Spectroscopy.pptx food analysis technology
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPT
Teaching material agriculture food technology
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Machine learning based COVID-19 study performance prediction
Reach Out and Touch Someone: Haptics and Empathic Computing
KodekX | Application Modernization Development
The AUB Centre for AI in Media Proposal.docx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
NewMind AI Weekly Chronicles - August'25 Week I
Spectral efficient network and resource selection model in 5G networks
Mobile App Security Testing_ A Comprehensive Guide.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Unlocking AI with Model Context Protocol (MCP)
Empathic Computing: Creating Shared Understanding
Diabetes mellitus diagnosis method based random forest with bat algorithm
20250228 LYD VKU AI Blended-Learning.pptx
Spectroscopy.pptx food analysis technology
Encapsulation_ Review paper, used for researhc scholars
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
MIND Revenue Release Quarter 2 2025 Press Release
Teaching material agriculture food technology
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy

Scripted - Embracing Eclipse Orion

  • 1. Mar$n  Lippert SCRIPTED  -­‐  EMBRACING ECLIPSE  ORION mlippert@vmware.com @mar$nlippert
  • 2. about me Mar4n  Lippert Staff  Engineer,  R&D,  at  SpringSource/ VMware  and  lead  of  Spring  Tool  Suite   development Working  areas •Eclipse  Tooling  for  the  Spring  plaAorm •Open  Source  CommiDer •Aspect-­‐Weaving  for  OSGi •Cloud  IDEs  and  JavaScript •Agile  soKware  development 2
  • 3. implementing developer tooling for a long time now (AJDT, Groovy-Eclipse, Grails IDE, Spring IDE, Cloud Foundry Integration for Eclipse, tc Server Integration for Eclipse, Gradle Integration for Eclipse, add-ons for m2e, Equinox Weaving)
  • 4. But how will developer tooling look like in the future? Or „why is Google able to search the whole web in 10ms and my Eclipse needs 100x longer to open a type hierarchy“
  • 5. what happens if you do things differently? lightweight instead of heavyweight reusing existing tools connecting instead of integrating browser based cloud hosted ...
  • 6. Eclipse Orion „Open Source Platform for Cloud Based Development“ similar direction awesome platform very modular and re-useable
  • 7. Eclipse Orion provides a platform for: navigating files and other content clone from and push to git repositories code (editing files) directly testing (hosting) our app + plug-in mechanism
  • 11. Client purely JavaScript runs in the browser plug-ins hosted in non-visible iframes Server Java (OSGi application) relatively stupid (no real logic here) new: node.js-based JavaScript implementation
  • 12. Introducing Scripted a lightweight JavaScript editor that runs in your browser
  • 13. Choices and decisions focus on editor lightweight, fast keystroke driven running locally advanced code comprehension using inferencing engine module-aware content-assist
  • 14. Choices and decisions Eclipse Orion (all JavaScript client) navigator content assist Git integration folding Editor Component site hosting JSLint sign-on Eclipse Orion (hosted or local) serve JS/HTMS/CSS/files search Git integration sign-on OSGi (Java)
  • 15. Choices and decisions Eclipse Orion (all JavaScript client) navigator content assist Git integration folding Editor Component site hosting JSLint sign-on
  • 16. Choices and decisions content assist Git integration folding Editor Component site hosting JSLint sign-on
  • 17. Choices and decisions content assist folding Editor Component site hosting JSLint sign-on
  • 18. Choices and decisions content assist folding Editor Component JSLint sign-on
  • 19. Choices and decisions content assist folding Editor Component JSLint
  • 20. Choices and decisions content assist Editor Component JSLint
  • 21. Choices and decisions Scripted Client (all JavaScript client) content assist cross file Editor Component analysis JSLint
  • 22. Choices and decisions Scripted Client (all JavaScript client) content assist cross file Editor Component analysis JSLint AMD support
  • 23. Choices and decisions Scripted Client (all JavaScript client) content assist cross file Editor Component analysis JSLint CommonJS AMD support support
  • 24. Choices and decisions Scripted Client (all JavaScript client) simple navigator content assist cross file Editor Component analysis JSLint CommonJS AMD support support
  • 25. Choices and decisions Scripted Client (all JavaScript client) simple navigator content assist cross file inplace outline Editor Component analysis JSLint CommonJS AMD support support
  • 26. Choices and decisions Scripted Client (all JavaScript client) simple navigator content assist cross file inplace outline Editor Component analysis single page layout JSLint CommonJS AMD support support
  • 27. Choices and decisions Eclipse Orion (hosted or local) serve JS/HTMS/CSS/files Search Git Integration Sign-On OSGi (Java)
  • 28. Choices and decisions Scripted Server (local, all JavaScript) serve JS/HTMS/CSS/files search
  • 29. Choices and decisions Scripted Server (local, all JavaScript) serve JS/HTMS/CSS/files search node.js
  • 30. Choices and decisions Scripted Server (local, all JavaScript) serve JS/HTMS/CSS/files search cross file analysis node.js
  • 31. Scripted overview Scripted Client (all JavaScript client) simple navigator content assist cross file inplace outline Editor Component analysis single page layout JSLint CommonJS AMD support support Scripted Server (local, all JavaScript) serve JS/HTMS/CSS/files search cross file analysis node.js
  • 33. Summary Eclipse Orion is an awesome platform for building browser- based tooling
  • 34. What is next? continuously contribute back to Orion add more innovative features continue to think beyond the borders
  • 35. Resources Scripted project https://github.com/scripted-editor/scripted Forum https://groups.google.com/forum/#!forum/scripted-dev Issue Tracker https://issuetracker.springsource.com/browse/scripted Sample project used here https://github.com/aeisenberg/scripted-demo-s2gx2012
  • 36. Q&A and thank you for your attention Martin Lippert Staff Engineer - VMware mlippert@vmware.com @martinlippert