SlideShare une entreprise Scribd logo
1  sur  32
Eclipse Way
Tomasz Zarna
Eclipse Platform commiter @ IBM
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Agenda
•Eclipse Way
•Working with Community
•Code coverage and static code analysis
•Code review with Gerrit
•Easy multi-tasking with Mylyn
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
How We Got Here
•Java strategic technology for IBM
•Need to compete with MS VS and other Java IDEs
•Created in 1998 by IBM/OTI teams responsible for VisualAge
•In 2001 opened to open source
•In 2004 Eclipse Foundation was created
•Eclipse already well regarded tooling platform
•In mid 2004 Eclipse 3.0 ships, now based on OSGi
•Eclipse becomes more and more an RCP platform
•Thousands of Eclipse based products on the market, from ST
to fully loaded IDEs
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Krakow Software Lab
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Application Lifecycle
Req
Dev Test Ops
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Application Lifecycle
Req
Dev Test Ops
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Planning
•Community input
•Discuss propositions on bug reports
•Committed, proposed items
•We drop items to maintain schedule
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Continuous Integration
•Releases - e.g. R3.7
•Stable - e.g. 3.8M5
•Integration Builds - e.g. I20120511-1540
•Nightly Builds - e.g. N20120626-1232
Always beta:
We work on nightly builds so we try to keep them running
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Milestones
•There are 7 milestones, each takes 6 weeks
•Shipping is hard, that’s why we do it 7 times a release
•Customers can rebase more frequently
•Plan, develop, test, release, retrospective
•We play all the roles
•New and Noteworthy
•Feed the community
•Make people move to milestone builds
•Fewer completed than more in progress
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
The Covergence Process
•M6 - API freeze
•M7 - feature freeze
•RC1 - another commiter, PMC for API changes
•RC2 - two commiters
•RC3 - two commiters, compoment lead
•RC4 - two compoment leads, any lead can veto
Commiting Into RCs:
Release Candidates time is when you never want to have a
buildbrake
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Community
•Inital investment
•Community grows and becomes self supporting, we don’t
have to grow
•Early feedback
•Open technical discussions, even more important than
open bugs
•Transparency, good for distributed teams
•The village effect
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Google Summer of Code
•The Eclipse Foundation is one of 180 organisations
•20 slots out of 1200+ assigned to EF
•Topics: RCP, IDE, Java, C/C++, JGit, ECF, javascript, Orion
•$
•Internships in KSL
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
EclEmma
• http://www.eclemma.org
• EMMA, instrumentation
• EPL
• Eclipse 3.1 and Java 1.4
• Update site: http://update.eclemma.org
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
FindBugs
• http://findbugs.sourceforge.net
• Apache Commons BCEL + bug patterns
• LGPL
• Eclipse 3.3 and Java 1.5
• Update site: http://findbugs.cs.umd.edu/eclipse
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
PMD
• http://pmd.sourceforge.net
• AST + rule sets
• BSD-style
• Update site: http://pmd.sf.net/eclipse
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Code review with Gerrit
Gerrit
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Code review with Gerrit
Gerrit Hudson
pull
+1
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Code review with Gerrit
Gerrit Hudson
pull
+1
+2
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Code review with Gerrit
Gerrit Hudson
pull
+1
Git
+2push
pull
pull
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Easy multi-tasking with Mylyn
• http://www.eclipse.org/mylyn/
• Task focused-interface, task management tool
• EPL
• Eclipse 3.6 and Java 1.5
• Update site:
http://download.eclipse.org/mylyn/snapshots/weekly
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Repository connectors
• Assembla Tickets
• Atlassian JIRA , Bamboo, Crucible, FishEye
• Bugzilla
• CodeBeamer Eclipse Studio
• CollabNet Issue Tracker, formerly IssueZilla
• CollabNet TeamForge
• CollabNet Project Tracker
• EmForge
• EPlanner
• FogBugz
• GitHub Connector
• Google Calendar
• Google Code
• Google Gmail
• HP Quality Center
• IBM Rational ClearQuest
• Industrial Connector
• Mantis
• Origo
• QcMylyn
• Microsoft Outlook & Exchange
• ProjectKoach
• Rally
• Redmine
• Request Tracker (RT)
• Remember The Milk
• ScrumWorks Basic
• ScrumWorks Pro
• Serena Business Mashups 2009
• Google SpreadSheet Template
• TD/OMS
• ThoughtWorks Studios Mingle
• Trac
• Track+
• Unfuddle
• Web Templates
• XPlanner
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Thank you!
Eclipse Way | Copyright © IBM Corp., 2012. 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.
28
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Keeping It Big
How can you build something that can last 10 years and be:
 Industry leading
 Extendable
 Constantly evolving
Well, you need to have those:
 Modularity
 Scalability
 Stable APIs
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
Stable API
Stable APIs are critical to sustain growth. Clients can add
features instead of updating to new API. So, it has to be:
 Consistent and wise
 Any decision made today will impact where you can go tommorow
API compatibility is a huge commitment so we take a
defensive approach:
 Don’t add until there is at least one client
 Exhibit less rather then more
 Expose more if needed
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
JDT
• An incremental Java compiler, implemented as an Eclipse
builder
• Preferences: Java > Compiler > Error/Warnings
 Code style
 Potential programming problems
 Name shadowing and conflicts
 Deprecated and restricted API
 Unnecessary code
 Generic types
 Annotations
Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
API Tooling
•Invalid API usage
•Execution environments

Contenu connexe

Tendances

IBM JavaOne Community Keynote 2017
IBM JavaOne Community Keynote 2017IBM JavaOne Community Keynote 2017
IBM JavaOne Community Keynote 2017John Duimovich
 
Cloud Based Cognitive Learning & IT Project Performance Platform (CLIPP Platf...
Cloud Based Cognitive Learning & IT Project Performance Platform (CLIPP Platf...Cloud Based Cognitive Learning & IT Project Performance Platform (CLIPP Platf...
Cloud Based Cognitive Learning & IT Project Performance Platform (CLIPP Platf...Ed Sattar
 
Uber mobility - Build & Release
Uber mobility - Build & ReleaseUber mobility - Build & Release
Uber mobility - Build & ReleaseDhaval Patel
 
Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Curity
 
Radial | SOASTA IR Webinar
Radial | SOASTA IR WebinarRadial | SOASTA IR Webinar
Radial | SOASTA IR WebinarSOASTA
 
Uber Mobility Meetup: Mobile Testing
Uber Mobility Meetup:  Mobile TestingUber Mobility Meetup:  Mobile Testing
Uber Mobility Meetup: Mobile TestingApple Chow
 
Rising Above the Noise: Continuous Integration, Delivery and DevOps
Rising Above the Noise: Continuous Integration, Delivery and DevOpsRising Above the Noise: Continuous Integration, Delivery and DevOps
Rising Above the Noise: Continuous Integration, Delivery and DevOpsIBM UrbanCode Products
 
CIRCUIT 2015 - Hybrid App Development with AEM Apps
CIRCUIT 2015 - Hybrid App Development with AEM AppsCIRCUIT 2015 - Hybrid App Development with AEM Apps
CIRCUIT 2015 - Hybrid App Development with AEM AppsICF CIRCUIT
 
Summit 2015: Mobile App Dev and Content Management with Adobe Experience Manager
Summit 2015: Mobile App Dev and Content Management with Adobe Experience ManagerSummit 2015: Mobile App Dev and Content Management with Adobe Experience Manager
Summit 2015: Mobile App Dev and Content Management with Adobe Experience Managerbrucelefebvre
 
Cloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud Foundry
Cloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud FoundryCloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud Foundry
Cloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud FoundryVMware Tanzu
 
Building Mobile Apps: A PhoneGap Enterprise Introduction for Developers
Building Mobile Apps: A PhoneGap Enterprise Introduction for DevelopersBuilding Mobile Apps: A PhoneGap Enterprise Introduction for Developers
Building Mobile Apps: A PhoneGap Enterprise Introduction for Developersarumsey
 
Introduction to Kitura - Swift Hong Kong Meetup 2016 July
Introduction to Kitura - Swift Hong Kong Meetup 2016 JulyIntroduction to Kitura - Swift Hong Kong Meetup 2016 July
Introduction to Kitura - Swift Hong Kong Meetup 2016 JulyPatrick C.S. Fan
 
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...GRUC
 
Manila MuleSoft Meetup #4 January 2019
Manila MuleSoft Meetup #4 January 2019Manila MuleSoft Meetup #4 January 2019
Manila MuleSoft Meetup #4 January 2019Christopher Co
 
Hardware Prototyping for Software Developers
Hardware Prototyping for Software DevelopersHardware Prototyping for Software Developers
Hardware Prototyping for Software DevelopersKinoma
 
Randy Brown - Project Delivery Decisions: Service, Software, or on a Stick?
Randy Brown - Project Delivery Decisions: Service, Software, or on a Stick?Randy Brown - Project Delivery Decisions: Service, Software, or on a Stick?
Randy Brown - Project Delivery Decisions: Service, Software, or on a Stick?SeriousGamesAssoc
 
Droidcon 2013 automotive quality dunca_czol_garmin
Droidcon 2013 automotive quality dunca_czol_garminDroidcon 2013 automotive quality dunca_czol_garmin
Droidcon 2013 automotive quality dunca_czol_garminDroidcon Berlin
 

Tendances (18)

IBM JavaOne Community Keynote 2017
IBM JavaOne Community Keynote 2017IBM JavaOne Community Keynote 2017
IBM JavaOne Community Keynote 2017
 
Cloud Based Cognitive Learning & IT Project Performance Platform (CLIPP Platf...
Cloud Based Cognitive Learning & IT Project Performance Platform (CLIPP Platf...Cloud Based Cognitive Learning & IT Project Performance Platform (CLIPP Platf...
Cloud Based Cognitive Learning & IT Project Performance Platform (CLIPP Platf...
 
Uber mobility - Build & Release
Uber mobility - Build & ReleaseUber mobility - Build & Release
Uber mobility - Build & Release
 
Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1
 
Radial | SOASTA IR Webinar
Radial | SOASTA IR WebinarRadial | SOASTA IR Webinar
Radial | SOASTA IR Webinar
 
Uber Mobility Meetup: Mobile Testing
Uber Mobility Meetup:  Mobile TestingUber Mobility Meetup:  Mobile Testing
Uber Mobility Meetup: Mobile Testing
 
Rising Above the Noise: Continuous Integration, Delivery and DevOps
Rising Above the Noise: Continuous Integration, Delivery and DevOpsRising Above the Noise: Continuous Integration, Delivery and DevOps
Rising Above the Noise: Continuous Integration, Delivery and DevOps
 
CIRCUIT 2015 - Hybrid App Development with AEM Apps
CIRCUIT 2015 - Hybrid App Development with AEM AppsCIRCUIT 2015 - Hybrid App Development with AEM Apps
CIRCUIT 2015 - Hybrid App Development with AEM Apps
 
Summit 2015: Mobile App Dev and Content Management with Adobe Experience Manager
Summit 2015: Mobile App Dev and Content Management with Adobe Experience ManagerSummit 2015: Mobile App Dev and Content Management with Adobe Experience Manager
Summit 2015: Mobile App Dev and Content Management with Adobe Experience Manager
 
Cloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud Foundry
Cloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud FoundryCloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud Foundry
Cloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud Foundry
 
Building Mobile Apps: A PhoneGap Enterprise Introduction for Developers
Building Mobile Apps: A PhoneGap Enterprise Introduction for DevelopersBuilding Mobile Apps: A PhoneGap Enterprise Introduction for Developers
Building Mobile Apps: A PhoneGap Enterprise Introduction for Developers
 
Introduction to Kitura - Swift Hong Kong Meetup 2016 July
Introduction to Kitura - Swift Hong Kong Meetup 2016 JulyIntroduction to Kitura - Swift Hong Kong Meetup 2016 July
Introduction to Kitura - Swift Hong Kong Meetup 2016 July
 
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
 
Manila MuleSoft Meetup #4 January 2019
Manila MuleSoft Meetup #4 January 2019Manila MuleSoft Meetup #4 January 2019
Manila MuleSoft Meetup #4 January 2019
 
AEM responsive
AEM responsiveAEM responsive
AEM responsive
 
Hardware Prototyping for Software Developers
Hardware Prototyping for Software DevelopersHardware Prototyping for Software Developers
Hardware Prototyping for Software Developers
 
Randy Brown - Project Delivery Decisions: Service, Software, or on a Stick?
Randy Brown - Project Delivery Decisions: Service, Software, or on a Stick?Randy Brown - Project Delivery Decisions: Service, Software, or on a Stick?
Randy Brown - Project Delivery Decisions: Service, Software, or on a Stick?
 
Droidcon 2013 automotive quality dunca_czol_garmin
Droidcon 2013 automotive quality dunca_czol_garminDroidcon 2013 automotive quality dunca_czol_garmin
Droidcon 2013 automotive quality dunca_czol_garmin
 

En vedette

Keynote de Mike Milinkovich
Keynote de Mike MilinkovichKeynote de Mike Milinkovich
Keynote de Mike MilinkovichEclipseDayParis
 
Pnbhfl training final
Pnbhfl training finalPnbhfl training final
Pnbhfl training finalNupur Mishra
 
Eclipse 4 Context Functions
Eclipse 4 Context FunctionsEclipse 4 Context Functions
Eclipse 4 Context FunctionsSopot Cela
 
ReST Editor - Eclipse Demo Camp Grenoble 2011
ReST Editor - Eclipse Demo Camp Grenoble 2011ReST Editor - Eclipse Demo Camp Grenoble 2011
ReST Editor - Eclipse Demo Camp Grenoble 2011tcalmant
 
Eclipse slide presentation
Eclipse slide presentationEclipse slide presentation
Eclipse slide presentationsvedi
 
Contribute to Eclipse projects
Contribute to Eclipse projectsContribute to Eclipse projects
Contribute to Eclipse projectsMickael Istria
 
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009eLiberatica
 

En vedette (7)

Keynote de Mike Milinkovich
Keynote de Mike MilinkovichKeynote de Mike Milinkovich
Keynote de Mike Milinkovich
 
Pnbhfl training final
Pnbhfl training finalPnbhfl training final
Pnbhfl training final
 
Eclipse 4 Context Functions
Eclipse 4 Context FunctionsEclipse 4 Context Functions
Eclipse 4 Context Functions
 
ReST Editor - Eclipse Demo Camp Grenoble 2011
ReST Editor - Eclipse Demo Camp Grenoble 2011ReST Editor - Eclipse Demo Camp Grenoble 2011
ReST Editor - Eclipse Demo Camp Grenoble 2011
 
Eclipse slide presentation
Eclipse slide presentationEclipse slide presentation
Eclipse slide presentation
 
Contribute to Eclipse projects
Contribute to Eclipse projectsContribute to Eclipse projects
Contribute to Eclipse projects
 
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
 

Similaire à Eclipse Way

Keynote - Eclipse - Accelerating OSGi Adoption - Mike Milinkovich, Executive ...
Keynote - Eclipse - Accelerating OSGi Adoption - Mike Milinkovich, Executive ...Keynote - Eclipse - Accelerating OSGi Adoption - Mike Milinkovich, Executive ...
Keynote - Eclipse - Accelerating OSGi Adoption - Mike Milinkovich, Executive ...mfrancis
 
MyAppConverter DroidconUK 2014
MyAppConverter DroidconUK 2014MyAppConverter DroidconUK 2014
MyAppConverter DroidconUK 2014myappconverter
 
Untangling DevOps - A high-level overview and how we got here
Untangling DevOps -  A high-level overview and how we got hereUntangling DevOps -  A high-level overview and how we got here
Untangling DevOps - A high-level overview and how we got hereBarton George
 
Together in Eclipse
Together in EclipseTogether in Eclipse
Together in EclipseTomasz Zarna
 
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for EclipseCloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipsedmbtr3
 
Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)
Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)
Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)VMware Tanzu
 
Cloud Native Applications - DevOps, EMC and Cloud Foundry
Cloud Native Applications - DevOps, EMC and Cloud FoundryCloud Native Applications - DevOps, EMC and Cloud Foundry
Cloud Native Applications - DevOps, EMC and Cloud FoundryBob Sokol
 
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, NokiaHistory and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokiamfrancis
 
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksCampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksSanjeev Sharma
 
IBM Keynote presentation, OW2con'19, June 12-13, 2019, Paris.
IBM Keynote presentation, OW2con'19, June 12-13, 2019, Paris.IBM Keynote presentation, OW2con'19, June 12-13, 2019, Paris.
IBM Keynote presentation, OW2con'19, June 12-13, 2019, Paris.OW2
 
Webinar on How to use MyAppConverter
Webinar on How to use  MyAppConverterWebinar on How to use  MyAppConverter
Webinar on How to use MyAppConverterJaoued Ahmed
 
Platform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle WorldPlatform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle WorldSimon Haslam
 
Delivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with OracleDelivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with OracleSimon Haslam
 
What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !Cédric Brun
 
Db2 developer ecosystem
Db2 developer ecosystemDb2 developer ecosystem
Db2 developer ecosystemModusOptimum
 
Android Services Skill Sprint
Android Services Skill SprintAndroid Services Skill Sprint
Android Services Skill SprintJim McKeeth
 
Enterprise iPad Development Without Notes
Enterprise iPad Development Without NotesEnterprise iPad Development Without Notes
Enterprise iPad Development Without Notesjaxarcsig
 
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetupragss
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsC4Media
 

Similaire à Eclipse Way (20)

Eclipse Way
Eclipse WayEclipse Way
Eclipse Way
 
Keynote - Eclipse - Accelerating OSGi Adoption - Mike Milinkovich, Executive ...
Keynote - Eclipse - Accelerating OSGi Adoption - Mike Milinkovich, Executive ...Keynote - Eclipse - Accelerating OSGi Adoption - Mike Milinkovich, Executive ...
Keynote - Eclipse - Accelerating OSGi Adoption - Mike Milinkovich, Executive ...
 
MyAppConverter DroidconUK 2014
MyAppConverter DroidconUK 2014MyAppConverter DroidconUK 2014
MyAppConverter DroidconUK 2014
 
Untangling DevOps - A high-level overview and how we got here
Untangling DevOps -  A high-level overview and how we got hereUntangling DevOps -  A high-level overview and how we got here
Untangling DevOps - A high-level overview and how we got here
 
Together in Eclipse
Together in EclipseTogether in Eclipse
Together in Eclipse
 
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for EclipseCloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
 
Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)
Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)
Introducing Cloud Foundry Integration for Eclipse (Cloud Foundry Summit 2014)
 
Cloud Native Applications - DevOps, EMC and Cloud Foundry
Cloud Native Applications - DevOps, EMC and Cloud FoundryCloud Native Applications - DevOps, EMC and Cloud Foundry
Cloud Native Applications - DevOps, EMC and Cloud Foundry
 
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, NokiaHistory and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
History and Future of the Downloadable Mobile Marketplace - Jon Bostrom, Nokia
 
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksCampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
 
IBM Keynote presentation, OW2con'19, June 12-13, 2019, Paris.
IBM Keynote presentation, OW2con'19, June 12-13, 2019, Paris.IBM Keynote presentation, OW2con'19, June 12-13, 2019, Paris.
IBM Keynote presentation, OW2con'19, June 12-13, 2019, Paris.
 
Webinar on How to use MyAppConverter
Webinar on How to use  MyAppConverterWebinar on How to use  MyAppConverter
Webinar on How to use MyAppConverter
 
Platform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle WorldPlatform Engineering for the Modern Oracle World
Platform Engineering for the Modern Oracle World
 
Delivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with OracleDelivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with Oracle
 
What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !What the heck is Eclipse Modeling and why should you care !
What the heck is Eclipse Modeling and why should you care !
 
Db2 developer ecosystem
Db2 developer ecosystemDb2 developer ecosystem
Db2 developer ecosystem
 
Android Services Skill Sprint
Android Services Skill SprintAndroid Services Skill Sprint
Android Services Skill Sprint
 
Enterprise iPad Development Without Notes
Enterprise iPad Development Without NotesEnterprise iPad Development Without Notes
Enterprise iPad Development Without Notes
 
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java Applications
 

Plus de Tomasz Zarna

Orion Introduction
Orion IntroductionOrion Introduction
Orion IntroductionTomasz Zarna
 
ABC of Platform Workspace
ABC of Platform WorkspaceABC of Platform Workspace
ABC of Platform WorkspaceTomasz Zarna
 
Orion Introduction
Orion IntroductionOrion Introduction
Orion IntroductionTomasz Zarna
 
Git migration - Lessons learned
Git migration - Lessons learnedGit migration - Lessons learned
Git migration - Lessons learnedTomasz Zarna
 
Orion RESTful git API
Orion RESTful git APIOrion RESTful git API
Orion RESTful git APITomasz Zarna
 
Eclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricksEclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricksTomasz Zarna
 
What is new in Helios
What is new in HeliosWhat is new in Helios
What is new in HeliosTomasz Zarna
 
Equinox/p2 - Getting started with Equinox/p2
Equinox/p2 - Getting started with Equinox/p2Equinox/p2 - Getting started with Equinox/p2
Equinox/p2 - Getting started with Equinox/p2Tomasz Zarna
 
EGit - Eclipse plug-in for git
EGit - Eclipse plug-in for gitEGit - Eclipse plug-in for git
EGit - Eclipse plug-in for gitTomasz Zarna
 

Plus de Tomasz Zarna (11)

Orion Introduction
Orion IntroductionOrion Introduction
Orion Introduction
 
ABC of Platform Workspace
ABC of Platform WorkspaceABC of Platform Workspace
ABC of Platform Workspace
 
Orion Introduction
Orion IntroductionOrion Introduction
Orion Introduction
 
Git migration - Lessons learned
Git migration - Lessons learnedGit migration - Lessons learned
Git migration - Lessons learned
 
Orion RESTful git API
Orion RESTful git APIOrion RESTful git API
Orion RESTful git API
 
Eclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricksEclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricks
 
What is new in Helios
What is new in HeliosWhat is new in Helios
What is new in Helios
 
Equinox/p2 - Getting started with Equinox/p2
Equinox/p2 - Getting started with Equinox/p2Equinox/p2 - Getting started with Equinox/p2
Equinox/p2 - Getting started with Equinox/p2
 
EGit - Eclipse plug-in for git
EGit - Eclipse plug-in for gitEGit - Eclipse plug-in for git
EGit - Eclipse plug-in for git
 
E4 UI Demos
E4 UI DemosE4 UI Demos
E4 UI Demos
 
Compare framework
Compare frameworkCompare framework
Compare framework
 

Dernier

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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?Igalia
 
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.pdfsudhanshuwaghmare1
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
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 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
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 DevelopmentsTrustArc
 
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 RobisonAnna Loughnan Colquhoun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
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 Processorsdebabhi2
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Dernier (20)

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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?
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
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
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

Eclipse Way

  • 1. Eclipse Way Tomasz Zarna Eclipse Platform commiter @ IBM
  • 2. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Agenda •Eclipse Way •Working with Community •Code coverage and static code analysis •Code review with Gerrit •Easy multi-tasking with Mylyn
  • 3. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. How We Got Here •Java strategic technology for IBM •Need to compete with MS VS and other Java IDEs •Created in 1998 by IBM/OTI teams responsible for VisualAge •In 2001 opened to open source •In 2004 Eclipse Foundation was created •Eclipse already well regarded tooling platform •In mid 2004 Eclipse 3.0 ships, now based on OSGi •Eclipse becomes more and more an RCP platform •Thousands of Eclipse based products on the market, from ST to fully loaded IDEs
  • 4. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Krakow Software Lab
  • 5. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Application Lifecycle Req Dev Test Ops
  • 6. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Application Lifecycle Req Dev Test Ops
  • 7. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Planning •Community input •Discuss propositions on bug reports •Committed, proposed items •We drop items to maintain schedule
  • 8. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Continuous Integration •Releases - e.g. R3.7 •Stable - e.g. 3.8M5 •Integration Builds - e.g. I20120511-1540 •Nightly Builds - e.g. N20120626-1232 Always beta: We work on nightly builds so we try to keep them running
  • 9. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Milestones •There are 7 milestones, each takes 6 weeks •Shipping is hard, that’s why we do it 7 times a release •Customers can rebase more frequently •Plan, develop, test, release, retrospective •We play all the roles •New and Noteworthy •Feed the community •Make people move to milestone builds •Fewer completed than more in progress
  • 10. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. The Covergence Process •M6 - API freeze •M7 - feature freeze •RC1 - another commiter, PMC for API changes •RC2 - two commiters •RC3 - two commiters, compoment lead •RC4 - two compoment leads, any lead can veto Commiting Into RCs: Release Candidates time is when you never want to have a buildbrake
  • 11. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Community •Inital investment •Community grows and becomes self supporting, we don’t have to grow •Early feedback •Open technical discussions, even more important than open bugs •Transparency, good for distributed teams •The village effect
  • 12. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Google Summer of Code •The Eclipse Foundation is one of 180 organisations •20 slots out of 1200+ assigned to EF •Topics: RCP, IDE, Java, C/C++, JGit, ECF, javascript, Orion •$ •Internships in KSL
  • 13. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. EclEmma • http://www.eclemma.org • EMMA, instrumentation • EPL • Eclipse 3.1 and Java 1.4 • Update site: http://update.eclemma.org
  • 14. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
  • 15. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. FindBugs • http://findbugs.sourceforge.net • Apache Commons BCEL + bug patterns • LGPL • Eclipse 3.3 and Java 1.5 • Update site: http://findbugs.cs.umd.edu/eclipse
  • 16. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
  • 17. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. PMD • http://pmd.sourceforge.net • AST + rule sets • BSD-style • Update site: http://pmd.sf.net/eclipse
  • 18. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
  • 19. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Code review with Gerrit Gerrit
  • 20. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Code review with Gerrit Gerrit Hudson pull +1
  • 21. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Code review with Gerrit Gerrit Hudson pull +1 +2
  • 22. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Code review with Gerrit Gerrit Hudson pull +1 Git +2push pull pull
  • 23. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Easy multi-tasking with Mylyn • http://www.eclipse.org/mylyn/ • Task focused-interface, task management tool • EPL • Eclipse 3.6 and Java 1.5 • Update site: http://download.eclipse.org/mylyn/snapshots/weekly
  • 24. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
  • 25. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved.
  • 26. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Repository connectors • Assembla Tickets • Atlassian JIRA , Bamboo, Crucible, FishEye • Bugzilla • CodeBeamer Eclipse Studio • CollabNet Issue Tracker, formerly IssueZilla • CollabNet TeamForge • CollabNet Project Tracker • EmForge • EPlanner • FogBugz • GitHub Connector • Google Calendar • Google Code • Google Gmail • HP Quality Center • IBM Rational ClearQuest • Industrial Connector • Mantis • Origo • QcMylyn • Microsoft Outlook & Exchange • ProjectKoach • Rally • Redmine • Request Tracker (RT) • Remember The Milk • ScrumWorks Basic • ScrumWorks Pro • Serena Business Mashups 2009 • Google SpreadSheet Template • TD/OMS • ThoughtWorks Studios Mingle • Trac • Track+ • Unfuddle • Web Templates • XPlanner
  • 27. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Thank you!
  • 28. Eclipse Way | Copyright © IBM Corp., 2012. 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. 28
  • 29. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Keeping It Big How can you build something that can last 10 years and be:  Industry leading  Extendable  Constantly evolving Well, you need to have those:  Modularity  Scalability  Stable APIs
  • 30. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. Stable API Stable APIs are critical to sustain growth. Clients can add features instead of updating to new API. So, it has to be:  Consistent and wise  Any decision made today will impact where you can go tommorow API compatibility is a huge commitment so we take a defensive approach:  Don’t add until there is at least one client  Exhibit less rather then more  Expose more if needed
  • 31. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. JDT • An incremental Java compiler, implemented as an Eclipse builder • Preferences: Java > Compiler > Error/Warnings  Code style  Potential programming problems  Name shadowing and conflicts  Deprecated and restricted API  Unnecessary code  Generic types  Annotations
  • 32. Eclipse Way | Copyright © IBM Corp., 2012. All rights reserved. API Tooling •Invalid API usage •Execution environments