Bagaimana Cara Berkontribusi pada Proyek Open Source
Sebelum membahas bagaimana cara melakukan kontribusi (berkontribusi) pada proyek open source, ada beberapa pertanyaan yang mesti dijawab terlebih dahulu. Beberapa pertanyaan tersebut diantaranya adalah : mengapa berkontribusi, dan apa manfaatnya berkontribusi pada proyek open source?
1. Mengapa Berkontribusi pada Proyek Open Source?
Berkontribusi pada proyek open source bisa menjadi cara yang sangat bermanfaat untuk belajar, mengajar, dan membangun pengalaman dengan keterampilan apa saja yang bisa Anda bayangkan.
Mengapa orang berkontribusi pada proyek open source? Tentunya banyak alasannya.
Tingkatkan keterampilan yang ada
Entah itu coding, desain antarmuka pengguna, desain grafis, penulisan, atau pengorganisasian, jika Anda hendak mengukur keterampilan dengan latihan, ada tugas untuk Anda dalam proyek open source.
Temui orang-orang yang tertarik dengan hal serupa
Proyek open source senantiasa menyambut dengan hangat setiap orang. Banyak orang membentuk persahabatan seumur hidup melalui partisipasi mereka dalam open source, entah itu berjalan satu sama lain di konferensi atau obrolan online hingga larut malam.
Temukan mentor dan ajarkan orang lain
Bekerja dengan orang lain dalam proyek bersama berarti Anda harus menjelaskan bagaimana Anda melakukan sesuatu, dan juga meminta pertolongan orang lain. Tindakan belajar dan mengajar bisa menjadi aktivitas pemenuhan semua orang yang terlibat.
Bangun artefak publik yang membantu Anda menumbuhkan reputasi (dan karir)
Menurut definisi, semua karya open source Anda bersifat publik, yang berarti Anda mendapatkan contoh gratis untuk dibawa kemana-mana sebagai demonstrasi tentang apa yang dapat Anda lakukan.
Pelajari keterampilan orang
Open source menawarkan kesempatan untuk melatih keterampilan kepemimpinan dan manajemen, seperti menyelesaikan konflik, mengorganisir tim orang, dan memprioritaskan pekerjaan.
Pemberdayaan untuk bisa melakukan perubahan, bahkan yang kecil sekalipun
Anda tidak harus menjadi kontributor seumur hidup untuk menikmati partisipasi dalam open source. Pernahkah Anda melihat kesalahan ketik pada situs web, dan berharap seseorang memperbaikinya? Pada proyek open source, Anda bisa melakukan hal itu. Open source membantu orang berperan terhadap kehidupan mereka dan bagaimana mereka menikmati hidup, dan itu semua sangat menyenangkan.
2. Makna Berkontribusi pada Proyek Open Source
Jika Anda seorang kontributor baru pada proyek open source, prosesnya mungkin bisa mengintimidasi. Bagaimana Anda menemukan proyek open source yang tepat? Bagaimana jika Anda tidak tahu bagaimana kodenya? Bagaimana jika ada yang tidak beres?
Tidak perlu khawatir! Ada banyak cara untuk terlibat dalam proyek open source, dan beberapa tip berikut akan membantu Anda memaksimalkan pengalaman Anda.
Anda tidak harus menyumbang kode
Kesalahpahaman umum tentang kontribusi open source adalah Anda perlu memberi kode kontribusi. Sebenarnya, seringkali bagian lain dari proyek yang paling terbengkalai atau terlewatkan. Anda akan melakukan proyek ini dengan sangat senang dengan menawarkan penawaran dengan jenis kontribusi ini!
Bahkan jika Anda ingin menulis kode, jenis kontribusi lainnya adalah cara terbaik untuk terlibat dalam sebuah proyek dan bertemu dengan orang lainnya. Membangun hubungan tersebut akan memberi Anda kesempatan untuk mengerjakan bagian lain dari proyek ini.
Apakah Anda suka merencanakan acara?
- Atur lokakarya atau pertemuan tentang proyek.
- Atur konferensi proyek.
- Bantu orang lain menemukan konferensi yang tepat dan ajukan proposal untuk berbicara.
Apakah Anda suka mendesain?
- Merestrukturisasi layout untuk meningkatkan kegunaan proyek.
- Lakukan riset pengguna untuk mengatur dan memperbaiki navigasi atau menu proyek, seperti saran Drupal.
- Menyusun panduan gaya untuk membantu proyek memiliki desain visual yang konsisten.
- Buat seni untuk kaos atau logo baru, seperti kontributor hapi.js.
Apakah Anda suka Menulis?
- Menulis dan memperbaiki dokumentasi proyek.
- Kurasikan sebuah folder contoh yang menunjukkan bagaimana proyek tersebut digunakan.
- Membuat laporan berkala untuk proyek, atau sampaikan sorotan dari milis.
- Tuliskan tutorial untuk proyek ini, seperti kontributor PyPA.
- Tulis terjemahan untuk dokumentasi proyek.
Apakah Anda suka Mengorganisir?
- Tautkan isu yang duplikat, dan sarankan label isu baru, untuk menjaga agar tetap teratur.
- Periksa isu-isu terbuka dan sarankan untuk menutup isu yang lama, seperti yang dilakukan oleh @nzakas untuk ESLint.
- Ajukan pertanyaan klarifikasi tentang isu-isu yang baru dibuka untuk memindahkan diskusi ke depan.
Apakah Anda suka Koding?
- Temukan isu yang terbuka untuk ditangani, seperti yang dilakukan @dianjin pada Leaflet.
- Tanyakan apakah Anda dapat membantu menulis fitur baru.
- Mengotomatiskan setup proyek.
- Perbaiki tooling dan testing
Apakah Anda suka membantu orang lain?
- Jawab pertanyaan tentang proyek misalnya seperti Stack Overflow (seperti contoh Postgres ini) atau Reddit.
- Jawablah pertanyaan untuk orang-orang yang memiliki isu terbuka
- Mengotomatiskan setup proyek.
- Bantu memoderasi saluran diskusi atau saluran percakapan
Apakah Anda suka menyempurnakan kode orang lain?
- Tinjau kode pengiriman orang lain.
- Tuliskan tutorial bagaimana sebuah proyek dapat digunakan.
- Beri rujukan untuk mentor ke kontributor lain.
Anda tidak hanya perlu mengerjakan proyek perangkat lunak!
Sementara “open source” sering mengacu pada perangkat lunak, Anda dapat berkolaborasi dalam segala hal. Ada buku, resep, daftar, dan kelas yang dikembangkan sebagai proyek open source.
Sebagai contoh:
- @sindresorhus dengan membuat “list of awesome lists“.
- @ h5bp menyimpan daftar pertanyaan wawancara potensial untuk calon pengembang front-end.
- @stuartlynn dan @nicole-a-tesla membuat kumpulan fakta menyenangkan tentang puffins.
Bahkan jika Anda seorang pengembang perangkat lunak, mengerjakan proyek dokumentasi dapat membantu Anda memulai terlebih dahulu pada proyek open source. Seringkali kurang mengintimidasi untuk mengerjakan proyek yang tidak melibatkan kode, dan proses kolaborasi akan membangun kepercayaan diri dan pengalaman Anda.
3. Orientasi diri Anda dengan sebuah proyek baru
Untuk sesuatu yang lebih dari kesalahan ketik, berkontribusi pada proyek open source adalah seperti berjalan mendekati sekelompok orang asing dalam sebuah pesta. Jika Anda mulai berbicara tentang unta, saat mereka sedang dalam diskusi tentang ikan mas, mereka mungkin akan melihat Anda sedikit aneh.
Sebelum terlibat aktif secara membabi buta dengan saran Anda sendiri, awalilah dengan mempelajari situasi dalam forum. Dengan melakukan hal itu, akan meningkatkan kemungkinan gagasan Anda akan diperhatikan dan didengar.
Anatomi sebuah proyek open source
Setiap komunitas open source berbeda.
Menghabiskan beberapa tahun pada satu proyek open source berarti Anda sudah mengenal satu proyek open source. Pindah ke proyek yang berbeda, dan Anda mungkin menemukan kosa kata, norma, dan gaya komunikasi benar-benar berbeda.
Konon, banyak proyek open source mengikuti struktur organisasi serupa. Memahami peran komunitas yang berbeda dan keseluruhan proses akan membantu Anda cepat berorientasi pada proyek baru.
Proyek open source yang khas memiliki tipe peranan sebagai berikut:
- Penulis: Orang atau organisasi yang membuat proyek.
- Pemilik: Orang yang memiliki kepemilikan administratif atas organisasi atau repositori (tidak selalu sama dengan penulis asli)
- Maintainers: Kontributor yang bertanggung jawab untuk mengarahkan visi dan mengelola aspek organisasi proyek. (Mereka mungkin juga penulis atau pemilik proyek.)
- Kontributor: Setiap orang yang telah menyumbangkan sesuatu kembali ke proyek.
- Anggota Komunitas: Orang yang menggunakan proyek. Mereka mungkin aktif dalam percakapan atau mengungkapkan pendapat mereka mengenai arahan proyek.
Proyek yang lebih besar mungkin juga memiliki subkomite atau kelompok kerja yang berfokus pada tugas yang berbeda, seperti perkakas, triase, moderasi komunitas, dan pengorganisasian acara. Lihatlah di situs web proyek untuk halaman “tim”, atau dalam dokumentasi repositori untuk pengelolaan, untuk menemukan informasi ini.
Sebuah proyek juga memiliki dokumentasi. File-file berikut ini biasanya terdaftar di tingkat atas repositori.
- LICENSE: Menurut definisi, setiap proyek open source harus memiliki lisensi open source. Jika proyek tidak memiliki lisensi, itu bukan open source.
- README: README adalah instruksi manual yang menyambut anggota komunitas baru dalam proyek. Ini menjelaskan mengapa proyek ini berguna dan bagaimana cara untuk memulai.
- CONTRIBUTING: Meskipun README membantu orang menggunakan proyek ini, dokumen pendukung membantu orang berkontribusi pada proyek tersebut. Ini menjelaskan jenis kontribusi apa yang dibutuhkan dan bagaimana proses kerjanya. Meskipun tidak setiap proyek memiliki file CONTRIBUTING, kehadirannya menandakan bahwa ini adalah proyek penyambutan untuk berkontribusi.
- CODE_OF_CONDUCT: Kode etik menetapkan peraturan dasar untuk perilaku peserta yang terkait dan membantu memfasilitasi lingkungan ramah. Meskipun tidak setiap proyek memiliki file CODE_OF_CONDUCT, kehadirannya memberi tanda bahwa ini adalah proyek penyambutan untuk berkontribusi.
- Dokumentasi lainnya: Mungkin ada dokumentasi tambahan, seperti tutorial, panduan, atau kebijakan tata kelola, terutama pada proyek yang lebih besar.
Akhirnya, proyek open source menggunakan alat berikut untuk mengatur diskusi. Membaca arsip akan memberi Anda gambaran bagus tentang bagaimana komunitas berpikir dan bekerja.
Akhirnya, proyek open source menggunakan alat berikut untuk mengatur diskusi. Membaca arsip akan memberi Anda gambaran bagus tentang bagaimana komunitas berpikir dan bekerja.
- Issue tracker: Dimana orang mendiskusikan masalah yang terkait dengan proyek.
- Pull requests: Dimana orang mendiskusikan dan meninjau perubahan yang sedang berlangsung.
- Forum diskusi atau milis: Beberapa proyek dapat menggunakan saluran ini untuk topik percakapan (misalnya, “Bagaimana saya …” atau “Apa pendapat Anda tentang …” daripada laporan bug atau permintaan fitur). Yang lainnya menggunakan pelacak masalah untuk semua percakapan.
- Saluran obrolan sinkron: Beberapa proyek menggunakan saluran obrolan (seperti Slack atau IRC) untuk percakapan santai, kolaborasi, dan pertukaran cepat.
4. Menemukan sebuah proyek open source untuk berkontribusi
Sekarang setelah Anda mengetahui bagaimana proyek open source bekerja, saatnya menemukan proyek untuk berkontribusi!
Jika Anda belum pernah berkontribusi pada proyek open source sebelumnya, mintalah beberapa saran dari Presiden A.S. John F. Kennedy, yang pernah berkata, “Jangan tanyakan apa yang dapat dilakukan negara Anda untuk Anda – tanyakan apa yang dapat Anda lakukan untuk negara Anda.”
Berkontribusi pada proyek open source terjadi di semua tingkatan, lintas proyek. Anda tidak perlu menggandakan apa sebenarnya kontribusi pertama Anda, atau bagaimana tampilannya.
Sebagai gantinya, mulailah dengan memikirkan proyek yang sudah Anda gunakan, atau ingin menggunakannya. Proyek yang secara aktif Anda andalkan adalah yang Anda temukan kembali.
Dalam proyek-proyek itu, kapan pun Anda mendapati diri Anda berpikir bahwa ada sesuatu yang lebih baik atau berbeda, bertindak berdasarkan naluri Anda.
Open source bukan klub eksklusif; itu dibuat oleh orang-orang seperti Anda. “Open source” hanyalah sebuah istilah yang bagus untuk mengatasi masalah dunia sebagai sesuatu yang bisa diperbaiki.
Anda bisa memindai README dan menemukan broken link atau salah ketik. Atau Anda adalah pengguna baru dan Anda melihat ada yang rusak, atau masalah yang menurut Anda harus benar-benar ada dalam dokumentasi. Alih-alih mengabaikannya dan terus bergerak, atau meminta orang lain untuk memperbaikinya, lihat apakah Anda bisa membantu dengan cara melempar. Itulah open source!
28% kontribusi kasual terhadap open source adalah dokumentasi, seperti kesalahan ketik, pemformatan ulang, atau penulisan terjemahan.
Anda juga dapat menggunakan salah satu sumber berikut untuk membantu Anda menemukan dan berkontribusi pada proyek baru:
- GitHub Explore
- Open Source Friday
- First Timers Only
- Your First PR
- CodeTriage
- 24 Pull Requests
- Up For Grabs
- Contributor-ninja
Daftar periksa sebelum Anda berkontribusi
Bila Anda telah menemukan sebuah proyek yang ingin Anda sumbangkan, lakukan pemindaian cepat untuk memastikan proyek sesuai untuk menerima sumbangan. Jika tidak, kerja keras Anda mungkin tidak akan pernah mendapat respons.
Berikut adalah daftar periksa yang berguna untuk mengevaluasi apakah sebuah proyek bagus untuk kontributor baru.
Memenuhi definisi open source
- Apakah memiliki lisensi? Biasanya, ini adalah file bernama LICENSE di root repositori.
Proyek secara aktif menerima kontribusi
Lihatlah aktivitas komit di cabang induk. Di GitHub, Anda dapat melihat informasi ini di beranda repositori.
- Kapan komit terbaru?
- Berapa banyak kontributor yang dimiliki proyek ini?
- Seberapa sering orang melakukan? (Di GitHub, Anda dapat menemukannya dengan mengeklik “Komitmen” di bilah atas.)
Selanjutnya, lihatlah masalah proyek.
- Berapa banyak masalah terbuka yang ada?
- Apakah pengelola menanggapi dengan cepat masalah saat dibuka?
- Apakah ada diskusi aktif mengenai isu tersebut?
- Apakah isu terbaru?
- Apakah masalah ditutup? (Di GitHub, klik tab “ditutup” di laman Masalah untuk melihat masalah tertutup.)
Sekarang lakukan hal yang sama untuk permintaan pull requests.
- Berapa banyak pull requests terbuka yang ada?
- Apakah pengelola menanggapi dengan cepat masalah saat dibuka?
- Apakah pengelola merespon dengan cepat pull requests saat dibuka?
- Apakah ada diskusi aktif tentang pull requests
- Apakah pull requests-nya baru-baru ini?
- Bagaimana pull requests terbaru yang digabungkan? (Di GitHub, klik tab “closed” pada halaman pull requests untuk melihat PR yang ditutup.)
Proyek ini menyambut
Sebuah proyek yang ramah dan menyambut memberi sinyal bahwa mereka akan menerima kontributor baru.
- Apakah para pemelihara menanggapi pertanyaan dengan sangat membantu dalam masalah?
- Apakah ramah dalam isu, forum diskusi, dan obrolan (misalnya, IRC atau Slack)?
- Apakah pull requests ditinjau?
- Apakah pemelihara berterima kasih atas kontribusi?
5. Bagaimana cara mengirimkan kontribusi
[dalam penulisan]
6. Apa yang terjadi setelah Anda mengirimkan kontribusi
[dalam penulisan]
7. Anda melakukannya
Apakah Anda baru saja membuat kontribusi open source pertama Anda, atau Anda sedang mencari cara baru untuk berkontribusi, kami harap Anda terinspirasi untuk bertindak. Sekalipun kontribusi Anda tidak diterima, jangan lupa mengucapkan terima kasih saat seorang pengelola berusaha membantu Anda. Open source dibuat oleh orang-orang seperti Anda: satu isu, tarik permintaan, komentar, atau semuanya sekaligus. ***
Komentar Terbaru