SlideShare a Scribd company logo
1 of 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

More Related Content

What's hot

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
 

What's hot (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
 

Viewers also liked

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
 

Viewers also liked (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
 

Similar to 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
 
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 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
 
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
 

Similar to 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
 
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 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
 
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
 

More from 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
 

More from 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
 

Recently uploaded

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Recently uploaded (20)

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

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