SlideShare a Scribd company logo
1 of 79
Download to read offline
Eclipse @ eBay
Michael Galpin, eBay
http://fupeg.blogspot.com
History
History

          Architecture
History

               Architecture




Organization
History

               Architecture




Organization
In the Beginning...
In the Beginning...


           AuctionWeb, 1995
In the Beginning...


           AuctionWeb, 1995
           eBay, V1 Architecture
In the Beginning...


           AuctionWeb, 1995
           eBay, V1 Architecture
             Perl
V2
V2
Rapid growth
V2
Rapid growth
V2 Architecture
V2
Rapid growth
V2 Architecture
C++ Back-end
V2
Rapid growth
V2 Architecture
C++ Back-end
XSLT Front-end
V3
V3
Exponential Growth
V3
Exponential Growth
C++ Replaced with
Java (2001)
V3
Exponential Growth
C++ Replaced with
Java (2001)
Front-end not changed
Growing Pains...
Growing Pains...


Broken Images
Growing Pains...


Broken Images

 JavaScript Errors
Growing Pains...

                     33 Languages
Broken Images

 JavaScript Errors
Growing Pains...

                      33 Languages
Broken Images

 JavaScript Errors


                     Web 2.0
Growing Pains...

                      33 Languages
Broken Images

 JavaScript Errors


                     Web 2.0
V4
XSLT
       V4
XSLT
       V4
XSLT
       V4
       HTML
XSLT
       V4
       HTML
XSLT
       V4
       HTML CSS
XSLT
       V4
       HTML CSS
XSLT
       V4
       HTML CSS JavaScript
XSLT
       V4
       HTML CSS JavaScript
Java != Silver Bullet
Java != Silver Bullet
Everything is Java
Java != Silver Bullet
Everything is Java
  Everything is Code
Java != Silver Bullet
Everything is Java
   Everything is Code
Image = Java Class
Java != Silver Bullet
Everything is Java
   Everything is Code
Image = Java Class

Link = Java Class
Java != Silver Bullet
Everything is Java
   Everything is Code
Image = Java Class

Link = Java Class

CSS = Java Classes
Java != Silver Bullet
Everything is Java
   Everything is Code
Image = Java Class

Link = Java Class

CSS = Java Classes

JavaScript = Java Classes
Java != Silver Bullet
Everything is Java
   Everything is Code
Image = Java Class

Link = Java Class

CSS = Java Classes

JavaScript = Java Classes

Content = Java Classes
Java != Silver Bullet
Everything is Java
   Everything is Code
Image = Java Class

Link = Java Class

CSS = Java Classes

JavaScript = Java Classes

Content = Java Classes

LOTS OF CODE TO WRITE!!
Java != Silver Bullet
Everything is Java
   Everything is Code
Image = Java Class

Link = Java Class

CSS = Java Classes

JavaScript = Java Classes

Content = Java Classes

LOTS OF CODE TO WRITE!!
Code Generators
Code Generators



CSS
Code Generators



CSS


          JavaScript
Code Generators

           Content


CSS


          JavaScript
Advanced Editors
Advanced Editors




Content
Advanced Editors


            JavaScript
             Coming Soon




Content
Visual Explorers
Visual Explorers

             Images
Visual Explorers

                     Images



Links
Visual Explorers

                      Images



Links




        Apps
Visual Explorers

                      Images



Links




        Apps                   Components
Wizards
Wizards
Developer Productivity:
      Dervlets
Developer Productivity:
      Spyglass
Developer Productivity:
      Spyglass
Organization
Dependencies
Managing Complexity
Managing Complexity
Managing Complexity
Managing Complexity
Managing Dependencies
Managing Complexity
Managing Complexity
Managing Complexity
           Lighten Your Load
Managing Complexity
              Lighten Your Load




       Megajars
Essentials
Essentials



             Auto-configuration
Essentials


FindBugs™
             Auto-configuration
Essentials


FindBugs™
             Auto-configuration
ClearCase
Essentials


FindBugs™
             Auto-configuration
ClearCase


  WTP
Eclipse @ eBay
Michael Galpin, eBay
http://fupeg.blogspot.com

More Related Content

Viewers also liked

American Home Sales Prefab Housing - EE in HOME Workshop
American Home Sales Prefab Housing - EE in HOME WorkshopAmerican Home Sales Prefab Housing - EE in HOME Workshop
American Home Sales Prefab Housing - EE in HOME Workshop
ICF_HCD
 
G1 clustering - content convergence v2 jve
G1 clustering - content convergence v2 jveG1 clustering - content convergence v2 jve
G1 clustering - content convergence v2 jve
Juan V. Vidagany Espert
 
2008 Avrupa Kupasindan Bize Dair Hos Kareler
2008 Avrupa Kupasindan Bize Dair Hos Kareler2008 Avrupa Kupasindan Bize Dair Hos Kareler
2008 Avrupa Kupasindan Bize Dair Hos Kareler
halid şen
 
My Friends Descriptions 5th B
My Friends Descriptions 5th BMy Friends Descriptions 5th B
My Friends Descriptions 5th B
englishdepartment
 

Viewers also liked (20)

Fqenlaceionico
FqenlaceionicoFqenlaceionico
Fqenlaceionico
 
Implementasi Ktsp Pd Madrasah
Implementasi Ktsp Pd MadrasahImplementasi Ktsp Pd Madrasah
Implementasi Ktsp Pd Madrasah
 
0903 Ayethadis
0903 Ayethadis0903 Ayethadis
0903 Ayethadis
 
Digital literacies: setting the scene
Digital literacies: setting the sceneDigital literacies: setting the scene
Digital literacies: setting the scene
 
KUŞ GRİBİ
KUŞ GRİBİKUŞ GRİBİ
KUŞ GRİBİ
 
User-tailored Inter-Widget Communication Extending the Shared Data Interface ...
User-tailored Inter-Widget Communication Extending the Shared Data Interface ...User-tailored Inter-Widget Communication Extending the Shared Data Interface ...
User-tailored Inter-Widget Communication Extending the Shared Data Interface ...
 
Рынок смартфонов и планшетов США. 2012 и 2013
Рынок смартфонов и планшетов США. 2012 и 2013Рынок смартфонов и планшетов США. 2012 и 2013
Рынок смартфонов и планшетов США. 2012 и 2013
 
My presentation at Busan's Asia Exhibition Forum 2013
My presentation at Busan's Asia Exhibition Forum 2013My presentation at Busan's Asia Exhibition Forum 2013
My presentation at Busan's Asia Exhibition Forum 2013
 
Conferenceware meeting functionalities
Conferenceware meeting functionalitiesConferenceware meeting functionalities
Conferenceware meeting functionalities
 
Preparing in Isolation?!
Preparing in Isolation?!Preparing in Isolation?!
Preparing in Isolation?!
 
Uskršnja priredba 2013
Uskršnja priredba 2013Uskršnja priredba 2013
Uskršnja priredba 2013
 
Anyway
AnywayAnyway
Anyway
 
RIAs Done Right: Grails, Flex, and EXT GWT
RIAs Done Right: Grails, Flex, and EXT GWTRIAs Done Right: Grails, Flex, and EXT GWT
RIAs Done Right: Grails, Flex, and EXT GWT
 
Where I'm Belonging - Noi Tro Ve
Where I'm Belonging - Noi Tro VeWhere I'm Belonging - Noi Tro Ve
Where I'm Belonging - Noi Tro Ve
 
American Home Sales Prefab Housing - EE in HOME Workshop
American Home Sales Prefab Housing - EE in HOME WorkshopAmerican Home Sales Prefab Housing - EE in HOME Workshop
American Home Sales Prefab Housing - EE in HOME Workshop
 
G1 clustering - content convergence v2 jve
G1 clustering - content convergence v2 jveG1 clustering - content convergence v2 jve
G1 clustering - content convergence v2 jve
 
2008 Avrupa Kupasindan Bize Dair Hos Kareler
2008 Avrupa Kupasindan Bize Dair Hos Kareler2008 Avrupa Kupasindan Bize Dair Hos Kareler
2008 Avrupa Kupasindan Bize Dair Hos Kareler
 
Pomoc
PomocPomoc
Pomoc
 
INFLUENZA H1N1, desde la ciencia, el mito y la realidad
INFLUENZA H1N1, desde la ciencia, el mito y la realidadINFLUENZA H1N1, desde la ciencia, el mito y la realidad
INFLUENZA H1N1, desde la ciencia, el mito y la realidad
 
My Friends Descriptions 5th B
My Friends Descriptions 5th BMy Friends Descriptions 5th B
My Friends Descriptions 5th B
 

Similar to Eclipse@eBay

Twiggy - let's get our widget on!
Twiggy - let's get our widget on!Twiggy - let's get our widget on!
Twiggy - let's get our widget on!
Elliott Kember
 

Similar to Eclipse@eBay (20)

Making The Move To Java 17 (JConf 2022)
Making The Move To Java 17 (JConf 2022)Making The Move To Java 17 (JConf 2022)
Making The Move To Java 17 (JConf 2022)
 
MCE^3 - Konstantin Raev - React Native: Open Source Continuous Build and Deli...
MCE^3 - Konstantin Raev - React Native: Open Source Continuous Build and Deli...MCE^3 - Konstantin Raev - React Native: Open Source Continuous Build and Deli...
MCE^3 - Konstantin Raev - React Native: Open Source Continuous Build and Deli...
 
Grails TV : an introduction into Grails & Groovy
Grails TV : an introduction into Grails & GroovyGrails TV : an introduction into Grails & Groovy
Grails TV : an introduction into Grails & Groovy
 
Monkeybars in the Manor
Monkeybars in the ManorMonkeybars in the Manor
Monkeybars in the Manor
 
DEVBCN_Jakarta EE! The future of enterprise application behind the myths. _Al...
DEVBCN_Jakarta EE! The future of enterprise application behind the myths.
_Al...DEVBCN_Jakarta EE! The future of enterprise application behind the myths.
_Al...
DEVBCN_Jakarta EE! The future of enterprise application behind the myths. _Al...
 
From Hacker to Programmer (w/ Webpack, Babel and React)
From Hacker to Programmer (w/ Webpack, Babel and React)From Hacker to Programmer (w/ Webpack, Babel and React)
From Hacker to Programmer (w/ Webpack, Babel and React)
 
WKWebView in Production
WKWebView in ProductionWKWebView in Production
WKWebView in Production
 
Iguazú: A Long-Running Job Scheduler using Docker and Mesos
Iguazú: A Long-Running Job Scheduler using Docker and MesosIguazú: A Long-Running Job Scheduler using Docker and Mesos
Iguazú: A Long-Running Job Scheduler using Docker and Mesos
 
Visualizing data on web
Visualizing data on webVisualizing data on web
Visualizing data on web
 
Evoloution of Ideas
Evoloution of IdeasEvoloution of Ideas
Evoloution of Ideas
 
How Scala code is expressed in the JVM
How Scala code is expressed in the JVMHow Scala code is expressed in the JVM
How Scala code is expressed in the JVM
 
SFScon 21 - Davide Montesin - Typescript vs. Java
SFScon 21 - Davide Montesin - Typescript vs. JavaSFScon 21 - Davide Montesin - Typescript vs. Java
SFScon 21 - Davide Montesin - Typescript vs. Java
 
JavaOne 2017 - Choosing a NoSQL API and Database to Avoid Tombstones and Drag...
JavaOne 2017 - Choosing a NoSQL API and Database to Avoid Tombstones and Drag...JavaOne 2017 - Choosing a NoSQL API and Database to Avoid Tombstones and Drag...
JavaOne 2017 - Choosing a NoSQL API and Database to Avoid Tombstones and Drag...
 
Selenium. going beyond the possible
Selenium. going beyond the possibleSelenium. going beyond the possible
Selenium. going beyond the possible
 
Jet presentation
Jet presentationJet presentation
Jet presentation
 
Simple SQL Change Management with Sqitch
Simple SQL Change Management with SqitchSimple SQL Change Management with Sqitch
Simple SQL Change Management with Sqitch
 
Android java fx-jme@jug-lugano
Android java fx-jme@jug-luganoAndroid java fx-jme@jug-lugano
Android java fx-jme@jug-lugano
 
Twiggy - let's get our widget on!
Twiggy - let's get our widget on!Twiggy - let's get our widget on!
Twiggy - let's get our widget on!
 
Practical WebAssembly with Apex, wasmRS, and nanobus
Practical WebAssembly with Apex, wasmRS, and nanobusPractical WebAssembly with Apex, wasmRS, and nanobus
Practical WebAssembly with Apex, wasmRS, and nanobus
 
Ruby on Rails survival guide of an aged Java developer
Ruby on Rails survival guide of an aged Java developerRuby on Rails survival guide of an aged Java developer
Ruby on Rails survival guide of an aged Java developer
 

More from Michael Galpin

More from Michael Galpin (10)

Android lessons you won't learn in school
Android lessons you won't learn in schoolAndroid lessons you won't learn in school
Android lessons you won't learn in school
 
Design Patterns for Tablets and Smartphones
Design Patterns for Tablets and SmartphonesDesign Patterns for Tablets and Smartphones
Design Patterns for Tablets and Smartphones
 
Android workshop
Android workshopAndroid workshop
Android workshop
 
Scala on Android: Experiences at Bump Technologies
Scala on Android: Experiences at Bump TechnologiesScala on Android: Experiences at Bump Technologies
Scala on Android: Experiences at Bump Technologies
 
That’s My App - Running in Your Background - Draining Your Battery
That’s My App - Running in Your Background - Draining Your BatteryThat’s My App - Running in Your Background - Draining Your Battery
That’s My App - Running in Your Background - Draining Your Battery
 
Mobile Web 5.0
Mobile Web 5.0Mobile Web 5.0
Mobile Web 5.0
 
Persistent Data Structures And Managed References
Persistent Data Structures And Managed ReferencesPersistent Data Structures And Managed References
Persistent Data Structures And Managed References
 
Scala on Your Phone
Scala on Your PhoneScala on Your Phone
Scala on Your Phone
 
Mobile Development 101
Mobile Development 101Mobile Development 101
Mobile Development 101
 
Introduction to Scala for Java Developers
Introduction to Scala for Java DevelopersIntroduction to Scala for Java Developers
Introduction to Scala for Java Developers
 

Recently uploaded

Recently uploaded (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 

Eclipse@eBay