SlideShare a Scribd company logo
1 of 18
Download to read offline
Jak wnieść wkład
w Open Source?
@tomaszbak
@selleo
O mnie
● Selleo (software development house)
● Ruby On Rails od 2005
● programista “Full Stack”
Open Source to
● dostępność kodu źródłowego
● swobodna redystrybucja (także modyfikacji)
● niedyskryminowanie obszarów zastosowań
Pełna definicja - http://opensource.org/osd
Zalety Open Source
● swobodne wykorzystanie
● społeczność użytkowników
● szybkość innowacji
Problemy Open Source
● konieczność częstej aktualizacji
● zależności komponentów
● zależność od jednej osoby
● jakość kodu, testów i dokumentacji
Zaangażowanie w Open Source to
● okazja do nauki
● dzielenie się swoją wiedzą
● potwierdzenie naszych umiejętności
Od czego zacząć?
● dokumentacja
● lista błędów
● kod i testy
● modyfikacje (branche i forki)
● CONTRIBUTING.md
Przykład
● https://github.com/trending?l=javascript
● mohebifar/xto6
○ Turn your ES5 code into readable ES6
○ Issue: Comments are removed after transpiling
Pobranie i uruchomienie
[Fork]
git clone git@github.com:tb/xto6.git
npm install
npm test
Naprawa błędu
● dokumentacja, testy i kod projektu
● dokumentacja bibliotek
○ acorn - JavaScript-based JavaScript parser
○ escodegen - ECMAScript code generator
● dodanie testu
● zmiany w kodzie
Opublikowanie poprawki
git checkout -b comments
git commit -m 'keep comments, fixes #19'
git push --set-upstream origin comments
[Create pull request]
0
1
2
3
comments
Pull Request
https://help.github.com/articles/using-pull-requests/
master
Czynniki sukcesu Pull Request
● jasno zdefiniowany problem
● kompletne rozwiązanie
● uwzględnienie standardów projektu
● minimalna ilość nowego kodu
Co wyniosłem?
● creationix/nvm - Node Version Manager
● xto6 ma obsługę CoffeeScript
Inne formy wsparcia
● GitHub ★
● wpis na social media
● artykuł na blogu
● pomoc użytkownikom
● sprawdzenie wersji beta lub Pull Requestu
Dzięki!
@tomaszbak

More Related Content

Viewers also liked

4cooks the back story
4cooks the back story4cooks the back story
4cooks the back story
belariava
 
Convegno Second Life - Seconda Parte
Convegno Second Life - Seconda ParteConvegno Second Life - Seconda Parte
Convegno Second Life - Seconda Parte
Philomène Gattuso
 
Birthday
BirthdayBirthday
Birthday
kikuya
 
Mcc Biology Unit 3 Course
Mcc Biology Unit 3 CourseMcc Biology Unit 3 Course
Mcc Biology Unit 3 Course
brendamenzel
 
Nile project
Nile projectNile project
Nile project
kikuya
 
Vocabulary Body
Vocabulary  BodyVocabulary  Body
Vocabulary Body
kikuya
 
Convegno Second Life - Terza parte
Convegno Second Life - Terza parteConvegno Second Life - Terza parte
Convegno Second Life - Terza parte
Philomène Gattuso
 

Viewers also liked (16)

Festa dell’Architettura, Roma 11 giugno 2010 - La Torre di Asian
Festa dell’Architettura, Roma 11 giugno 2010  -  La Torre di AsianFesta dell’Architettura, Roma 11 giugno 2010  -  La Torre di Asian
Festa dell’Architettura, Roma 11 giugno 2010 - La Torre di Asian
 
Testowanie JavaScript
Testowanie JavaScriptTestowanie JavaScript
Testowanie JavaScript
 
Antacsal
AntacsalAntacsal
Antacsal
 
Ldap novell
Ldap novellLdap novell
Ldap novell
 
4cooks the back story
4cooks the back story4cooks the back story
4cooks the back story
 
Replacing Rails asset pipeline with Gulp
Replacing Rails asset pipeline with GulpReplacing Rails asset pipeline with Gulp
Replacing Rails asset pipeline with Gulp
 
Convegno Second Life - Seconda Parte
Convegno Second Life - Seconda ParteConvegno Second Life - Seconda Parte
Convegno Second Life - Seconda Parte
 
Birthday
BirthdayBirthday
Birthday
 
1018部落工作室
1018部落工作室1018部落工作室
1018部落工作室
 
Mantra
MantraMantra
Mantra
 
Mcc Biology Unit 3 Course
Mcc Biology Unit 3 CourseMcc Biology Unit 3 Course
Mcc Biology Unit 3 Course
 
Ulepszanie aplikacji webowej z AngularJS
Ulepszanie aplikacji webowej z AngularJSUlepszanie aplikacji webowej z AngularJS
Ulepszanie aplikacji webowej z AngularJS
 
Nile project
Nile projectNile project
Nile project
 
Vocabulary Body
Vocabulary  BodyVocabulary  Body
Vocabulary Body
 
Convegno Second Life - Terza parte
Convegno Second Life - Terza parteConvegno Second Life - Terza parte
Convegno Second Life - Terza parte
 
Convegno su Second Life - Prima Parte
Convegno su Second Life - Prima ParteConvegno su Second Life - Prima Parte
Convegno su Second Life - Prima Parte
 

Similar to Jak wnieść wkład w Open Source?

Rails tobak2005
Rails tobak2005Rails tobak2005
Rails tobak2005
Tomasz Bak
 
ZamCamp 2.1 - Opis i zachęta do programowanie w języku Ruby
ZamCamp 2.1 - Opis i zachęta do programowanie w języku RubyZamCamp 2.1 - Opis i zachęta do programowanie w języku Ruby
ZamCamp 2.1 - Opis i zachęta do programowanie w języku Ruby
zamcamp
 

Similar to Jak wnieść wkład w Open Source? (20)

2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...2019.10.08 share con365 2019 open source in azure devops, on the example open...
2019.10.08 share con365 2019 open source in azure devops, on the example open...
 
Olga Żądło - Robot Framework
Olga Żądło - Robot FrameworkOlga Żądło - Robot Framework
Olga Żądło - Robot Framework
 
Rails tobak2005
Rails tobak2005Rails tobak2005
Rails tobak2005
 
Produkcja aplikacji internetowych
Produkcja aplikacji internetowychProdukcja aplikacji internetowych
Produkcja aplikacji internetowych
 
HYC - Angular stań się kanciastym
HYC - Angular stań się kanciastymHYC - Angular stań się kanciastym
HYC - Angular stań się kanciastym
 
Oss w software house
Oss w software houseOss w software house
Oss w software house
 
university day 1
university day 1university day 1
university day 1
 
Jacek Mirowski - Framework Aurelia
Jacek Mirowski - Framework AureliaJacek Mirowski - Framework Aurelia
Jacek Mirowski - Framework Aurelia
 
Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16
Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16
Integracja środowiska testowego z użyciem Robot Framework, TrojQA 2014-12-16
 
Testy wydajnościowe - najlepsze praktyki - Kuba Gajda
Testy wydajnościowe - najlepsze praktyki - Kuba GajdaTesty wydajnościowe - najlepsze praktyki - Kuba Gajda
Testy wydajnościowe - najlepsze praktyki - Kuba Gajda
 
4Developers 2015: Couple of words about testing in Java, Spock and BDD - Piot...
4Developers 2015: Couple of words about testing in Java, Spock and BDD - Piot...4Developers 2015: Couple of words about testing in Java, Spock and BDD - Piot...
4Developers 2015: Couple of words about testing in Java, Spock and BDD - Piot...
 
JavaEE + OSGi
JavaEE + OSGiJavaEE + OSGi
JavaEE + OSGi
 
Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)
Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)
Jak zarabiać na testowaniu oprogramowania(konferencja MeeTTech Piła 27.07.2016)
 
Jak zacząć, aby nie żałować - czyli 50 twarzy PHP
Jak zacząć, aby nie żałować - czyli 50 twarzy PHPJak zacząć, aby nie żałować - czyli 50 twarzy PHP
Jak zacząć, aby nie żałować - czyli 50 twarzy PHP
 
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
[Quality Meetup#12] P. Podsiadlik, R. Peroń - Testy regresji z perspektywy pi...
 
Scala
ScalaScala
Scala
 
ZamCamp 2.1 - Opis i zachęta do programowanie w języku Ruby
ZamCamp 2.1 - Opis i zachęta do programowanie w języku RubyZamCamp 2.1 - Opis i zachęta do programowanie w języku Ruby
ZamCamp 2.1 - Opis i zachęta do programowanie w języku Ruby
 
Laravel Octane - czy na pewno taki szybki?
Laravel Octane - czy na pewno taki szybki?Laravel Octane - czy na pewno taki szybki?
Laravel Octane - czy na pewno taki szybki?
 
ES2015 / ES6 Podstawy nowoczesnego JavaScriptu
ES2015 / ES6 Podstawy nowoczesnego JavaScriptuES2015 / ES6 Podstawy nowoczesnego JavaScriptu
ES2015 / ES6 Podstawy nowoczesnego JavaScriptu
 
Jak stworzyliśmy system kudosów w Laravelu i Slacku
Jak stworzyliśmy system kudosów w Laravelu i SlackuJak stworzyliśmy system kudosów w Laravelu i Slacku
Jak stworzyliśmy system kudosów w Laravelu i Slacku
 

More from Tomasz Bak

More from Tomasz Bak (12)

Design Patterns in React
Design Patterns in ReactDesign Patterns in React
Design Patterns in React
 
Building React CRUD app in minutes?
Building React CRUD app in minutes?Building React CRUD app in minutes?
Building React CRUD app in minutes?
 
How to migrate large project from Angular to React
How to migrate large project from Angular to ReactHow to migrate large project from Angular to React
How to migrate large project from Angular to React
 
JAMstack
JAMstackJAMstack
JAMstack
 
e2e testing with cypress
e2e testing with cypresse2e testing with cypress
e2e testing with cypress
 
How to GraphQL: React Apollo
How to GraphQL: React ApolloHow to GraphQL: React Apollo
How to GraphQL: React Apollo
 
How to GraphQL
How to GraphQLHow to GraphQL
How to GraphQL
 
Working with npm packages
Working with npm packagesWorking with npm packages
Working with npm packages
 
How to replace rails asset pipeline with webpack?
How to replace rails asset pipeline with webpack?How to replace rails asset pipeline with webpack?
How to replace rails asset pipeline with webpack?
 
JavaScript Promises
JavaScript PromisesJavaScript Promises
JavaScript Promises
 
Bardziej produktywny gmail
Bardziej produktywny gmailBardziej produktywny gmail
Bardziej produktywny gmail
 
Kerberos
KerberosKerberos
Kerberos
 

Jak wnieść wkład w Open Source?