agenda
1. Introduction
2. what is open source
3. IMPORTANCE of open source
4. how does it help you
5. how to get in
6. interacting in open source
7. questions
Tomasz Godzik
Senior Scala Developer
Who am i
Tomasz Godzik
Senior Scala Developer
previously
contributor for Scala Center
Who am i
Who am i
-
METALS
-
mdoc
-
scalameta
-
dotty
-
bloop
-
various commercial projects
Who am i
-
METALS
-
mdoc
-
scalameta
-
dotty
-
bloop
-
various commercial projects
We provide expert software engineering & consultancy services to give our clients a competitive edge
virtuslab
what is open source?
who knows what is open source?
Any non developer beginners?
who has ever contributed?
Computer software released under special licenses, openly available to view and modify*
Not an official definition
GNU General Public License
THE APACHE LICENSE
Berkeley Software Distribution (BSD)
MIT License
License is need for open source
Main types: Copyleft and Permissive
Dictate how one can use the code
The ability to examine the code facilitates public trust in the software.
Usual approach
collaborative project on github or gitlab
MAINTAINERS AND CONTRIBUTORS
RELEASED UNDER A LICENSE
ISSUE TRACKING FOR BUGS AND FEATURES
MULTIPLE CONTACT CHANNELS
there might be other ways
Why is open source important?
The world literally depends on it
multimilion companies all using open source
multiple stories about CVE
Common Vulnerabilities and Exposures
things might go awry
Sudden change of license can cause real world issues
foster collaboration between companies
bazel
linux foundation
eclipse foundation
apache foundation
great place for new ideas
great place for new ideas
How can open source help you?
get to know production code
how to work in a team
interact and learn from knowledgable people
Looks good in CV
people can already see your work
get in contact with companies
How to get into open source
choose something you are interested in or use
TOOL OR LANGUAGE
should not be too complicated
needs to be fun for you
you have to invest time into it before you will be able to contribute. Kind of - you join a new company and takes weeks before you dive enough into details and start doing smth serious
Vadim Chelyhov
Talk to people, they are friendly!
they really are!
interact with maintainers - chat, dicussions,
ask questions
contributors guide
try setting up the project
try running things
contributos guide
Try it out!
HELP NEEDED label
start discussion
get an idea of a solution
ASK OR LOOK FOR A TASK
ask for help!
discuss some more
this might take some time
ask more questions
don't get discouraged!
feedback is good
engage with reviewers
ask for hints
open a pr
celebrate!
you might want to get started with the technology first
some knowledge is needed to get started
multiple bootcamps, courses
Beginners
mentorship
Often contributors will be happy to take on mentorship
participate in an internship program
for example Google summer of code
https://tinyurl.com/open-internship
Interaction in open source projects
always be respectful
ask not demand
keep to the positives
don't be political
Presentation: https://slides.com/tomekgodzik/open-source
Social media:
Twitter @TomekGodzik,
Mastodon https://fosstodon.org/@tgodzik
Ask me about anything on our scalameta discord!
Contact as at VirtusLab
QUESTIONS?
Open source - the gateway to IT
By Tomek Godzik
Open source - the gateway to IT
- 213