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

  • 164