SlideShare a Scribd company logo
@CesarHgt @tomitribe
César Hernández
It’s Easy! Contributing to Open Source
@CesarHgt @tomitribe
Who am I?
César Hernández
● Senior Software Engineer at Tomitribe
● Java Champion & Oracle Groundbreaker
Ambassador
● Duke’s Choice Award 2016, 2017
● Oracle Certified Professional
● +14 experience with Java Enterprise
● Apache TomEE, Eclipse Jakarta Committer,
Contributor for Microprofile.
● Open Source advocate, teacher and public speaker
@CesarHgt @tomitribe
What is Open Source?
https://opensource.com/resources/what-open-source
“The term "open source" refers to something people can modify and share
because its design is publicly accessible.”
“Open source software is software with source code that anyone can inspect,
modify, and enhance.”
@CesarHgt @tomitribe
Why you should be involved in open source?
● Become a part of a community
○ New friends
○ Networking
○ Recognition
● Skill Enhancement
○ Improving your programming skills
○ Understanding software architecture
○ Deeper knowledge of a specific software domain
○ Experience working on distributed teams
@CesarHgt @tomitribe
Why you should be involved in open source
● Experience working with with many different kinds of people
○ Resume and Portfolio Enhancement
○ Reference open source in resume
○ Use GitHub or other repos to show your work
○ Business opportunities (for example: support offering)
@CesarHgt @tomitribe
Looking for an expert?
@CesarHgt @tomitribe
How open source works?
● Commercial Interests
○ Donating company
○ Sponsor
○ Open Source Support
● Community
○ Types of people involved
○ Social norms
@CesarHgt @tomitribe
How open source works?
● Governance
○ Who is in charge?
http://pngimg.com/download/30433
@CesarHgt @tomitribe
How open source works?
● Governance
○ Who is in charge?
http://pngimg.com/download/30404
@CesarHgt @tomitribe
How open source works?
● Governance
○ What are committers?
https://simpsons.fandom.com/wiki/Benjamin_(nerd)?file=Benjamin,_Doug,_and_Gary.gif
@CesarHgt @tomitribe
How open source works?
● Governance
○ How are decisions made?
https://en.wikipedia.org/wiki/File:All_Simpsons_characters.jpg
@CesarHgt @tomitribe
How open source works?
● Governance
○ Types of Licenses
82Approved
Licenses
{
MIT
APACHE 2.0
GNU GPL v3.0
Most common
licenses on GitHub
https://choosealicense.com/
@CesarHgt @tomitribe
The tools of open source
● GIT and the Forking Workflow
● JIRA and Bugzilla
● Maven and Build Automation tools
● Project Mailing lists
○ user@ vs dev@
● Instant Messaging / Chat
○ IRC
○ Slack
○ Gitter
@CesarHgt @tomitribe
The tools of open source
● Video Telecommunication tools
○ Zoom,
○ Hangouts,
○ Skype
@CesarHgt @tomitribe
Choosing an open source project
● Programming Language
● Technology Domain
● Leadership and Governance
● Community culture
○ Friendly
○ Fast and Furious
○ Experts only
○ Nasty
@CesarHgt @tomitribe
The types of contributions
● Code
● Documentation
● Workshops
● Testing
● Continuous Integration
● Moderator on communication channels
● “ any substantive action that generates content”
https://octoverse.github.com/
@CesarHgt @tomitribe
@CesarHgt @tomitribe
Apache TomEE
● JavaEE certified Apache Tomcat version
● Jakarta EE 9 in progress (formerly Java EE).
● Build from Apache components
● Footprint: 30MB zip, 100~MB memory
@CesarHgt @tomitribe
300+ 730+ 7k+
1.058B+ 20
https://files-dist.s3.amazonaws.com/AnnualReports/FY2019+Annual+Report.pdf
@CesarHgt @tomitribe
The Apache way
USER
ContributorContributor
Committer Committer
PMC Chair
BOARD
USER
PMC Chair
@CesarHgt @tomitribe
Tooling
● dev and user mailing lists
● JIRA
● Slack
● GITHUB mirror from SVN
○ Pull request model for interaction
tomee.apache.org/community
@CesarHgt @tomitribe
Technical prerequisites
● Java SE
● Maven
● Git
● Jakarta EE (Java EE)
● Junit
● Arquillian
● ...
@CesarHgt @tomitribe
Contribution types
● Documentation
● Website fixes
● Code tests
● Code examples
● Coverage increase for unit, integration, performance
and static tests
● New features
● Dependencies updates
● Workshops
@CesarHgt @tomitribe
https://www.tomitribe.com/blog/its-easy-requesting-and-discovering-jira-tickets-in-tomee/
https://www.tomitribe.com/blog/its-easy-get-the-tomee-source-code-and-join-the-community/
@CesarHgt @tomitribe
TomEE Hack Day
@CesarHgt @tomitribe
https://www.tomitribe.com/blog/tomee-for-every-day/
TomEE for the Day!
@CesarHgt @tomitribe
@CesarHgt @tomitribe
What is MicroProfile?
● http://microprofile.io
● Enterprise Java for MicroServices
● Open Source (Eclipse)
● Implemented by different vendors.
● Application portability across runtimes.
@CesarHgt @tomitribe
MicroProfile 3.3
@CesarHgt @tomitribe
Eclipse Foundation
https://www.eclipse.org/membership/documents/eclipse-foundation-overview.pdf
360+ 275+ 1550+
195M+ 15 30
@CesarHgt @tomitribe
Governance in MicroProfile
● Who is in charge? Eclipse foundation -> top level project
● What are committers? by merit
● How are decisions made?
● Types of licenses
@CesarHgt @tomitribe
Tooling
● Google
○ groups
○ Calendar
● Github
○ Issues
○ Wiki
○ Release notes
● Gitter
● Zoom biweekly community
calls
@CesarHgt @tomitribe
Technical prerequisites
● Java
● Maven
● Git
● Junit
● ...
@CesarHgt @tomitribe
MicroProfile Community
@CesarHgt @tomitribe
@CesarHgt @tomitribe
Thank you
César Hernández
It’s Easy! Contributing to Open Source

More Related Content

PPTX
The New York Times: Sustainable Systems, Powered by Python
PDF
Chasing the RESTful Trinity - Client CLI and Documentation
PDF
GraalVM and MicroProfile - A Polyglot Microservices Solution
PDF
Overview of Developer Bootcamps
PDF
Marko Berković
PDF
Voxxed days Vilnius 2015 - Android Reverse Engineering Lab
PDF
Microservices in Golang
PDF
Perl wants you
The New York Times: Sustainable Systems, Powered by Python
Chasing the RESTful Trinity - Client CLI and Documentation
GraalVM and MicroProfile - A Polyglot Microservices Solution
Overview of Developer Bootcamps
Marko Berković
Voxxed days Vilnius 2015 - Android Reverse Engineering Lab
Microservices in Golang
Perl wants you

What's hot (20)

ODP
Besut Kode - Workshop 1
PPT
TypeScript - Javascript done right
ODP
LibreTime: a web-based automation system for radio - presentation at Ohio Li...
PPTX
Acs south coast nsw openness
PDF
API Design in the Modern Era - Architecture Next 2020
PDF
Introduction of Open Source Job Board with Drupal CMS
PDF
ProjectTox: Free as in freedom Skype replacement
PDF
Global Open Source Development 2011-2014 Review and 2015 Forecast
PPTX
Ruby on Rails: Outreach for Women, SF
PPTX
Documenting an API for the First Time? Quick-Start Tips for Your First API Do...
PDF
Tools and libraries for common problems (Early Draft)
PDF
Introduction to Go
PDF
Making sense of streaming
PDF
MySQL Compatible Open Source Connectors
PDF
Contributing to Apache Projects and Making Profits
PDF
Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
PDF
Building Better FLOSS Community Relationships @ FB
PDF
Reproducible development to live applications with Red Hat CDK and Red Hat Op...
PDF
How OpenStack Makes Python Better (and vice-versa)
PDF
SOA.2020
Besut Kode - Workshop 1
TypeScript - Javascript done right
LibreTime: a web-based automation system for radio - presentation at Ohio Li...
Acs south coast nsw openness
API Design in the Modern Era - Architecture Next 2020
Introduction of Open Source Job Board with Drupal CMS
ProjectTox: Free as in freedom Skype replacement
Global Open Source Development 2011-2014 Review and 2015 Forecast
Ruby on Rails: Outreach for Women, SF
Documenting an API for the First Time? Quick-Start Tips for Your First API Do...
Tools and libraries for common problems (Early Draft)
Introduction to Go
Making sense of streaming
MySQL Compatible Open Source Connectors
Contributing to Apache Projects and Making Profits
Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
Building Better FLOSS Community Relationships @ FB
Reproducible development to live applications with Red Hat CDK and Red Hat Op...
How OpenStack Makes Python Better (and vice-versa)
SOA.2020
Ad

Similar to It is easy contributing to Open Source - ECLIPSE CON 2020 (20)

PDF
It is easy contributing to open source - JCON 2020
PDF
Its easy! contributing to open source - Devnexus 2020
PDF
Es fácil contribuir al open source - Bolivia JUG 2020
PDF
Creando microservicios con java micro profile y tomee - CUNORI 2020
PDF
Open Source Lessons from the TODO Group
PDF
Let's talk FOSS!
PDF
Creando microservicios con Java y Microprofile - Nicaragua JUG
PDF
Netflix OSS Meetup Season 4 Episode 4
PPTX
Oscon 2016: open source lessons from the todo group
PDF
Open Source Secret Sauce - Lugor Sep 2011
PDF
Open Source in Real Life
PDF
How to create/improve OSS product and its community (revised)
PPTX
Git1.pptx
PDF
Osgeo incubation-2014
PDF
Pentester++
PPTX
Open Source Product Management
PDF
Recommender Hackathon @plista 2013/04
PPTX
Open Source Dataweave - Surat March 2024 (1).pptx
PDF
Python in Industry
PDF
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
It is easy contributing to open source - JCON 2020
Its easy! contributing to open source - Devnexus 2020
Es fácil contribuir al open source - Bolivia JUG 2020
Creando microservicios con java micro profile y tomee - CUNORI 2020
Open Source Lessons from the TODO Group
Let's talk FOSS!
Creando microservicios con Java y Microprofile - Nicaragua JUG
Netflix OSS Meetup Season 4 Episode 4
Oscon 2016: open source lessons from the todo group
Open Source Secret Sauce - Lugor Sep 2011
Open Source in Real Life
How to create/improve OSS product and its community (revised)
Git1.pptx
Osgeo incubation-2014
Pentester++
Open Source Product Management
Recommender Hackathon @plista 2013/04
Open Source Dataweave - Surat March 2024 (1).pptx
Python in Industry
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
Ad

More from César Hernández (20)

PDF
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
PDF
Paving the road with Jakarta EE and Apache TomEE - JCON 2021
PDF
Keeping brazil's medical industry safe with Micro Profile [TDC 2021]
PDF
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
PDF
Paving the way with Jakarta EE and Apache TomEE - JCConf
PDF
Keeping brazil's medical industry safe with Micro Profile and JakartaEE - Jak...
PDF
Pavimentando el camino con Jakarta EE 9 y Apache TomEE
PDF
Paving the way with Jakarta EE and apache TomEE at cloudconferenceday
PDF
Pavimentando el Camino con Jakarta EE 9 y Apache TomEE 9.0.0
PDF
Paving the way with Jakarta EE and Apache TomEE - itkonekt 2020
PDF
Creando microservicios con Java MicroProfile y TomEE - OGBT
PDF
Creando microservicios con Java, Microprofile y TomEE - Baranquilla JUG
PDF
Keeping brazil's medical industry safe with Micro Profile and JakartaEE - Jak...
PDF
Conviértete en un contributor de open source con apache TomEE
PDF
Deconstruyendo la seguridad en rest
PDF
Open jalpa 2019 - CI y CD en la nube
PDF
Java EE ahora es Jakarta EE - Java Day Guatemala 2018
PDF
2018 (codeone) type safe approach to invoking restful services with microprof...
PDF
2018 (codeone) Graal VM and MicroProfile a polyglot microservices solution [d...
PDF
Seguridad en microservicios via micro profile jwt
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
Paving the road with Jakarta EE and Apache TomEE - JCON 2021
Keeping brazil's medical industry safe with Micro Profile [TDC 2021]
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
Paving the way with Jakarta EE and Apache TomEE - JCConf
Keeping brazil's medical industry safe with Micro Profile and JakartaEE - Jak...
Pavimentando el camino con Jakarta EE 9 y Apache TomEE
Paving the way with Jakarta EE and apache TomEE at cloudconferenceday
Pavimentando el Camino con Jakarta EE 9 y Apache TomEE 9.0.0
Paving the way with Jakarta EE and Apache TomEE - itkonekt 2020
Creando microservicios con Java MicroProfile y TomEE - OGBT
Creando microservicios con Java, Microprofile y TomEE - Baranquilla JUG
Keeping brazil's medical industry safe with Micro Profile and JakartaEE - Jak...
Conviértete en un contributor de open source con apache TomEE
Deconstruyendo la seguridad en rest
Open jalpa 2019 - CI y CD en la nube
Java EE ahora es Jakarta EE - Java Day Guatemala 2018
2018 (codeone) type safe approach to invoking restful services with microprof...
2018 (codeone) Graal VM and MicroProfile a polyglot microservices solution [d...
Seguridad en microservicios via micro profile jwt

Recently uploaded (20)

PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Machine learning based COVID-19 study performance prediction
DOCX
The AUB Centre for AI in Media Proposal.docx
PPT
Teaching material agriculture food technology
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Encapsulation theory and applications.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
Spectroscopy.pptx food analysis technology
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
KodekX | Application Modernization Development
Digital-Transformation-Roadmap-for-Companies.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Machine learning based COVID-19 study performance prediction
The AUB Centre for AI in Media Proposal.docx
Teaching material agriculture food technology
Spectral efficient network and resource selection model in 5G networks
Encapsulation theory and applications.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
MYSQL Presentation for SQL database connectivity
20250228 LYD VKU AI Blended-Learning.pptx
Spectroscopy.pptx food analysis technology
Understanding_Digital_Forensics_Presentation.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Building Integrated photovoltaic BIPV_UPV.pdf
Encapsulation_ Review paper, used for researhc scholars
Advanced methodologies resolving dimensionality complications for autism neur...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Unlocking AI with Model Context Protocol (MCP)
KodekX | Application Modernization Development

It is easy contributing to Open Source - ECLIPSE CON 2020