Téma
- #Növekedési lehetőség
- #Nyílt forráskódhoz való hozzájárulás
Létrehozva: 2025-05-03
Frissítve: 2025-05-27
Létrehozva: 2025-05-03 00:00
Frissítve: 2025-05-27 09:42
Ez a cikk azoknak szól, akik érdeklődnek az nyílt forráskód iránt, de a 'Hogy merjem?', 'Hol kezdjem?' félelemben szenvedtek.
Ma megosztom veletek a tapasztalataimat, amelyeket a nyílt forráskód világába való belépéskor szereztem, és a tanulás és érzések, amelyeket a folyamat során tapasztaltam.
A fejlesztés tanulásakor gyakran találkozunk a 'nyílt forráskód' kifejezéssel. Ha megnézzük a GitHubot, rengeteg projekt látható, amelyek kódot nyitnak meg a világnak.
Az ilyen kódokat a nyilvánosság számára elérhetővé tevő projekteket 'nyílt forráskód'-nak nevezzük.
Például léteznek nagy nyílt forráskódú szoftverek, mint az OpenJDK, a Spring Framework, a Redis és a React.
Eddig összesen 4 alkalommal járultam hozzá nyílt forráskódhoz. Nem a világot megrengető funkciókat adtam hozzá, hanem a nyílt forráskód kisebb, apró fejlesztéseit kerestem és járultam hozzá.
Én nem ismerem a fenti projektek kódstílusát, és azt sem, hogy pontosan hogyan működnek.
Ebből láthatjuk, hogy még akkor is hozzájárulhatsz a közösséghez, ha nem érted tökéletesen a kódot. Én még csak két éve foglalkozom a fejlesztéssel, és nem érzem, hogy különösebben tehetséges lennék a fejlesztésben.
Én azért tartom fenn ezt a tevékenységet, mert élvezem a nyílt forráskódhoz való hozzájárulást és a fejlesztői közösséggel való kommunikációt.
Őszintén szólva, az elején nem volt teljesen kizárt a gondolat, hogy 'Jó lenne egy sor az önéletrajzban'. Elég nagy volt. De volt egy nagyobb motivációm is. Ez a 'mélyebben tanulni akarok' vágya és a 'meg akarom oldani a problémát, amivel én is szembesültem' szükségessége volt.
A csapatprojektben a Spring WebFluxot használva lehetőségem nyílt a mögöttes technológia, a Project Reactor mélyreható tanulmányozására. A fogalmakat a könyveken és dokumentumokon keresztül megértettem, de azt, hogy egy komplex rendszerben hogyan működik és optimalizálódik, csak a kódot látva és azzal foglalkozva lehetett megérteni. Emellett gyakran azon gondolkodtam, hogy 'Hogyan bizonyítsam, hogy komolyan tanulmányoztam a Reaktort?', és emiatt 'hozzájárulok a nyílt forráskódhoz!'
Amikor eldöntöttem, hogy 'hozzájárulni akarok!', nem tudtam, hol kezdjem. A hatalmas kódban a javítandó részt megtalálni, vagy előre jelezni, hogy a változtatásaim milyen hatással lesznek az egész rendszerre, minden félelmet keltett.
Sokat gondolkodtam azon, hogy 'Mi van, ha egy PR-t küldök, és azért szidni fognak?', és úgy tűnik, sok időbe telt, amíg végül regisztráltam a PR-t.
A Reactive Stack-hez használtam a Redis Java kliensét, a Lettuce-t, amelynek a Reactive Commandje a Reactoron alapult, és a Reactor tanulása alapján a Reactor láncot módosítani szerettem volna.
Egyszerűen forkoltam, majd megnéztem az összes kódot, ami 'Reactive' és 'reactor' karakterláncokat tartalmazott. A Reactor Publisher által felépített, Mono-t, Flux-ot használó láncokat mind megnéztem.
Miután átnéztem a kódot, szerencsémre találtam egy olyan kódot, ami a Reactor láncot használta, és egy kicsit kevésbé volt olvasható, és a metódusláncolás sem volt helyesen megcsinálva. Nem a világot megváltoztató funkciójavításokról vagy architektúra-módosításokról volt szó, hanem egy kis, világos probléma a megértésem és módosításom hatókörében volt. 'Ó, ebben én is tudok közreműködni!'
A megértett információk alapján óvatosan módosítottam a kódot, és egy helyi környezetben ellenőriztem, hogy működik-e a szándékom szerint. Bár kis változtatás volt, a meglévő kód stílusát a lehető legjobban követtem, és a többi részt is figyelembe vettem, és óvatosan közelítettem meg.
A módosított tartalmat elköteleztem, és elérkezett a PR benyújtásának ideje. Őszintén, a 'küldés' gomb megnyomásáig rengeteg gondolkodás és habozás volt. 'Jó ez a változtatás PR-ként?', 'Talán túl nyilvánvaló dolgot javítottam?', 'Jól tudok angolul magyarázni?'
Mint mondtam, nagy volt a félelem attól, hogy a hiányosságaim miatt szidni fognak. De a 'A kezdet a fele' és a 'Ha nem próbálod, semmit sem tanulsz' gondolatával bátorságot gyűjtöttem, és a lehető legtöbb részletet leírtam a változásaimról és az okairól, majd benyújtottam a PR-t.
redis/lettuce - #3061
Végül a PR-emet 'Merged' -nek jelölték, és nagyon elégedett és büszke voltam, hogy az általam írt és módosított kód a sok fejlesztő által használt híres nyílt forráskódú projektek része lett.
Mindenekelőtt a legnagyobb eredmény a 'Én is meg tudom csinálni!' önbizalmának a megszerzése volt.
Nem baj, ha nem érted tökéletesen. Kezdd a kis dolgokkal, mint én. Vannak a dokumentum helyesírási javítások, a fordításban való részvétel, a egyszerű hibajelentés, rengeteg módja van a hozzájárulásnak. A lényeg az, hogy legyőzni a félelmet, és megtenni az első lépést.
Ha hibázol, az egyben a közösségtől kapott visszajelzés és a további fejlődés lehetősége.
Értékes lehetőség egy sor hozzáadására az önéletrajzhoz, de a tanuláson alapuló nyílt forráskódhoz való hozzájárulás azt is bizonyíthatja, hogy keményen tanultál.
Ehhez a bejegyzéshez nem lehet hozzászólást írni.