7 dari 10 pengembang berkontribusi pada open source dan berikut beberapa tip dan saran tentang cara memulai

Bukan rahasia lagi bahwa kontribusi Sumber Terbuka adalah salah satu keterampilan yang paling dicari di bidang teknologi. Selain tunjangan ketenagakerjaan, ada keuntungan lain seperti

  • Belajar dan berbagi ilmu
  • Bangun dan tingkatkan visibilitas merek Anda
  • Kolaborasi dan komunikasi dengan pengembang lain melalui tinjauan kode dan diskusi
  • Memberi kembali kepada komunitas ❤
  • Terhubung dengan orang-orang yang berpikiran sama, temukan karyawan/karyawan Anda, salah satu pendiri, mentor, mentee

Menurut Eclipse Foundation, Open Source telah mendapatkan investasi besar-besaran dalam beberapa tahun terakhir.

Mengapa Anda harus peduli?

Melihat kembali ke “survei” StackOverflow tahun 2016, tidak ada penyebutan open source sama sekali, namun, pada “survei” tahun 2017 sekitar 32,7% responden mengaku berkontribusi pada open source dan angka ini meningkat sebesar hampir 10% (menjadi 43,6%) pada "survei" tahun 2018 dan yang lebih menarik lagi adalah % kontributor meningkat sebesar 20% pada tahun 2019 (menjadi 63,3%).

Menurut “Hasil Survei Sumber Terbuka Masa Depan 2016” yang dilakukan oleh BlackDuck, sekitar 67% partisipasi dalam sumber terbuka adalah

  • memperbaiki bug
  • menambahkan fitur baru

59% pengembang berpartisipasi dalam open source untuk mendapatkan keunggulan kompetitif.

Dengan mempertimbangkan fakta, angka, dan tren di atas, menurut IMO, kontribusi open source patut dipertimbangkan.

Jadilah perubahan yang ingin Anda lihat di dunia – Mahatma Gandhi

Alasan mengapa saya gagal berkontribusi lebih awal?

Mayoritas dari kita, para pengembang, senang berkontribusi pada open source, tetapi pada akhirnya kita gagal melakukannya karena berbagai alasan. Berikut adalah daftar alasannya bagi saya

  • Mayoritas institusi pendidikan tidak mengakui kontribusi sumber terbuka sebagai cara efektif untuk belajar atau memotivasi siswa untuk berpartisipasi — IMO, kontribusi sumber terbuka harus menjadi bagian dari kurikulum (sebagai tugas, proyek, dll).

  • Lokasi geografis Anda — IMO negara tempat Anda tinggal juga memainkan peran penting seperti yang disoroti dalam artikel ini.
  • Resolusi tahun baru & janji ulang tahun— Saya sudah memiliki banyak hal seperti ini, tetapi tidak pernah benar-benar berhasil.
  • Tujuan yang tidak realistis— Saya pernah memutuskan bahwa saya akan melakukan setidaknya dua puluh (20) permintaan penarikan ke repositori seperti buruh pelabuhan(karena saya ❤ buruh pelabuhan) tanpa memperhitungkan fakta bahwa saya tidak memiliki pengetahuan yang memadai untuk melakukannya.
  • Pekerjaan, proyek sampingan, dan alasan hidup —Setelah setiap kegagalan berkontribusi, saya akan berkonsultasi pada diri sendiri bahwa saya melakukannya dengan baik di bidang lain.

Sekecil apapun kontribusinya, jika dilakukan secara rutin akan membawa perbedaan dalam jangka panjang.

  • Meremehkan kemampuan saya— Kadang-kadang saya melihat pull request dan masalah yang ada dan sampai pada kesimpulan bahwa “Ini rumit”.
  • Mengabaikan masalah dokumentasi— Seringkali saya mengabaikan semua masalah terkait dokumentasi.

  • Majikan saya tidak peduli — Saya akan menyukai pekerjaan yang memerlukan kontribusi kembali ke komunitas sumber terbuka.
  • Penundaan — Pasti merupakan faktor yang disebabkan oleh berbagai alasan.

Ini adalah beberapa alasan utama yang menghentikan saya untuk memulai kontribusi open source sejak dini.

Motivasi saya

Motivasi utama saya untuk berkontribusi pada open source adalah menjadi cukup berpengetahuan untuk menulis tentangnya.

Saya sangat menekankan pada berbagi pengetahuan dan ini adalah sesuatu yang saya coba lakukan baik secara pribadi maupun saat bekerja di tingkat tim dan organisasi.

Saya sedang mengerjakan proyek sampingan tahun lalu dan saya mempelajari beberapa hal tentang enkripsi, jadi saya menulisnya di sini. Beberapa bulan kemudian, saya membantu menulis pedoman pengkodean perusahaan kami dan menggunakan pengetahuan tersebut untuk menulis "artikel" tentang hal itu juga.

Setelah dua artikel, saya ingin menulis tentang sesuatu yang saya anggap sangat penting bagi para pengembang dan mahasiswa baru



Komunitas menyukai ❤ artikel tersebut dan menerima sekitar ~50 ribu penayangan, ribuan tepuk tangan, dan komentar penghargaan.

Artikel besar berikutnya bagi saya adalah menulis tentang kontribusi sumber terbuka (artikel ini) dan untuk itu, saya perlu memberikan beberapa kontribusi sumber terbuka terlebih dahulu.

Jadi jika Anda merasa ingin berkontribusi dan belum melakukannya, carilah satu alasan, motivasi, tujuan, dorongan, apa pun itu.

Strategi Kontribusi Sumber Terbuka Saya

Saya memutuskan bahwa saya akan berkontribusi pada Spring Framework, perpustakaan yang telah saya gunakan sebelumnya. Saya sedang membaca Pedoman Kontribusi dan melihat beberapa tautan rusak, jadi saya membuat "permintaan tarik" untuk memperbaikinya.

Permintaan penarikan digabungkan dan rasanya sangat menyenangkan sehingga saya memutuskan untuk melanjutkan, namun ada masalah. Mayoritas masalah GitHub (yaitu bug, first-timer, help-needed, feature) akan diambil oleh kontributor lain bahkan sebelum saya sempat menyatakan minatnya.

Setiap kali suatu proses tidak menghasilkan hasil yang saya inginkan, saya membuat perubahan dan mengevaluasi kembali hasilnya dan melanjutkan cara ini sampai hasil yang saya inginkan.

Inilah yang saya lakukan

  • Saya berlangganan (menonton) repositori Spring - Banyak notifikasi
  • Dalam perjalanan ke tempat kerja, saya menelusuri notifikasi email dan menunjukkan minat melalui komentar tentang masalah yang dapat saya atasi

Sebagai hasil dari strategi ini, saya mempunyai banyak masalah yang harus diselesaikan. Peningkatan pertama fitur



Saya melanjutkan cara ini pada beberapa masalah lain seperti peningkatan, bugdan fitur baru yang menghasilkan PR berikut

Jadi, jika Anda kesulitan menemukan masalah untuk diatasi, beralihlah ke strategi lain.

Tip dan Saran

Berdasarkan pengetahuan dan pengalaman saya selama ini

  • Panduan yang harus dibaca tentang “cara berkontribusi”
  • Pelajari dasar-dasar Git
  • Pilih bahasa yaitu Java, JavaScript
  • Identifikasi repositori yang menerima kontribusi — Gunakan alat seperti CodeTriage, Github Explore dan ini
  • Baca kebijakan repositori yaitu pedoman kontribusi
  • Pelajari proyek yang ingin Anda sumbangkan
  • Kontribusinya berupa kode, dokumentasi, bug, dan fitur baru
  • Filter masalah berdasarkan label seperti membutuhkan bantuan, bug, pemula, dll.
  • Berhati-hatilah dengan waktu orang lain khususnya pengelola yang membantu Anda
  • Pastikan Anda memiliki keterampilan dan waktu yang diperlukan untuk berinvestasi
  • Ikuti diskusi di issue dan pull request, lihat perubahan kodenya
  • Bersabarlah dan terbuka terhadap masukan

Saya memilih masalah Elastic Search dan mengabaikan fakta bahwa saya perlu mengetahui beberapa Groovy dan cara kerja Elastic Search build, sebagai konsekuensinya saya menghabiskan lebih banyak waktu dan upaya untuk menyelesaikan tahap PR .

Itu selalu merupakan ide yang baik untuk melakukan riset sebelum mengambil pilihan untuk mengatasi suatu masalah.

Bacaan yang Direkomendasikan

Saya sangat menganjurkan Anda untuk membaca panduan sumber terbuka, dan artikel ini berisi banyak pengetahuan tentang cara memulai. "Artikel" ini menyoroti beberapa tip bagus dan jika Anda adalah orang yang visual maka "video" oleh Kent C. Dodds ini mungkin bisa membantu.

Terima kasih telah membaca. Silakan ikuti saya di Medium untuk artikel lainnya dan terhubung di LinkedIn dan platform media sosial pilihan Anda lainnya.

Jika artikel ini membantu Anda dalam memberikan kontribusi pertama Anda, maka Anda dipersilakan untuk membagikan ide, saran, umpan balik, dan permintaan penarikan Anda sebagai komentar.