Bagaimana saya bisa menemukan proyek open source yang bagus untuk bergabung? [Tutup]

152

Saya baru mulai bekerja setahun yang lalu, dan saya ingin bergabung dengan proyek open source untuk alasan yang sama seperti orang lain: membantu menciptakan sesuatu yang bermanfaat dan mengembangkan keterampilan saya lebih lanjut.

Masalah saya adalah, saya tidak tahu bagaimana menemukan proyek di mana saya akan cocok.

Bagaimana saya bisa menemukan proyek ramah pemula? Atribut apa yang harus saya cari? Apa tanda-tanda peringatan bahwa suatu proyek mungkin tidak sesuai? Apakah ada alat di luar sana untuk membantu mencocokkan orang dengan proyek sumber terbuka?

Ada pertanyaan serupa di sini , tetapi pertanyaan itu berkaitan dengan pekerjaan dan terbatas pada PHP / Drupal.

Pops
sumber
9
Keren, saya baru saja melihat ArsTechnica dan melihat pertanyaan ini ditampilkan sebagai artikel. Inilah tautannya. arstechnica.com/business/guides/2012/03/…
Evan Plaice

Jawaban:

111

Kontribusi open source pertama saya adalah untuk perpustakaan yang sebelumnya saya gunakan (dan akan sangat menderita tanpa) pada proyek berbayar sebelumnya. Selama penggunaan awal saya, saya telah melihat bug dalam kode sehingga saya membuat tambalan, bergabung dengan proyek, dan mengirimkannya untuk ditinjau.

Sekitar 8 bulan kemudian ketika saya memiliki waktu luang, saya memutuskan untuk memberikan kembali (dan mengerjakan keterampilan pengembangan saya) dengan berkontribusi lebih banyak pada proyek. Jadi saya mengkloning repositori dan mulai terbiasa dengan basis kode. Setelah beberapa minggu mengirimkan perbaikan patch kecil ke basis kode dan memonitor permintaan fitur, saya mengambil permintaan fitur untuk menambahkan modul yang cukup besar ke proyek.

Karena menghasilkan banyak perbaikan tambalan individual cukup membosankan untuk setiap perkembangan signifikan, saya mengkloning repositori ke cabang pada hub git dan mulai membuang kode. Beberapa minggu dan beberapa ribu baris kode kemudian pemimpin proyek dan saya bekerja melalui mengintegrasikan dan menguji perbaikan saya ke perpustakaan dengan cara yang bekerja secara konsisten dengan basis kode lainnya.

Itu adalah proses yang sangat berharga yang saya pelajari banyak dari:

  • Ketika saya mulai, saya tidak tahu bagaimana menggunakan Git, pada akhirnya saya dapat dengan mahir membuat cabang pelacakan jarak jauh dan menggabungkan atau rebase mereka ke cabang master tanpa berkeringat.
  • Saya mulai di VS 2008 dan akhirnya bermigrasi ke Linux dan Monodevelop untuk bekerja pada penulisan kode (karena VS adalah unicode terbelakang dan ujung baris sangat merepotkan git). Ternyata tidak banyak yang tidak dapat Anda lakukan di * nix yang dapat Anda lakukan dalam * dows.
  • Saya belum pernah benar-benar melakukan pengujian unit sebelumnya, Nunit adalah sepotong kue untuk digunakan dan menulis tes unit adalah hal yang cukup mendasar.
  • Saya harus belajar menelan lidah dan mendengarkan serta melatih kesabaran. Tidak ada gunanya berdiri teguh pada posisi Anda pada proyek sumber terbuka karena semua orang yang terlibat berpengetahuan (mungkin lebih dari Anda) dan mampu menerima / menolak ide-ide Anda berdasarkan substansi bukan pengiriman. Ini sangat merendahkan hati dan bermanfaat sekaligus.
  • Hanya memiliki satu mata pengembang yang terampil pada basis besar kode saya menunjukkan kelemahan dalam gaya saya yang belum pernah saya pertimbangkan sebelumnya (dan saya juga menunjukkan kelemahan dalam kode-nya). Bagi saya, saya belajar bahwa lebih mudah / lebih baik untuk mendefinisikan konstanta daripada menggunakan banyak angka ajaib dengan komentar terperinci.

Proyek khusus itu didasarkan pada pembuatan dan pendekodean paket jaringan pada semua tingkat protokol jaringan. Saya memiliki minat pribadi dalam jejaring tingkat rendah sehingga sangat menyenangkan untuk berdiskusi dengan pengembang lain dengan minat dan pengetahuan bersama dalam domain tersebut.

Jika Anda hanya ingin membuat kaki Anda basah: cari proyek yang sudah Anda gunakan; mengkloning repositori; dan mulai melihat apakah Anda dapat memperbaiki beberapa bug dan / atau menambahkan beberapa tes unit. Tampaknya mengintimidasi untuk melihat basis kode orang lain dengan mata segar tetapi itu adalah keterampilan yang sangat berharga untuk dipelajari. Kirim beberapa tambalan. Anda dapat mengharapkan kode Anda diawasi dengan ketat pada awalnya. Jangan khawatir tentang itu, itu adalah bagian normal dari proses untuk mendapatkan kepercayaan dari admin proyek.

Setelah menetapkan dasar prestasi dengan admin proyek mulai mencari lebih banyak tanggung jawab seperti, mengusulkan fitur baru, atau meminta ditugaskan untuk mengimplementasikan permintaan fitur.

Jika Anda tidak dapat menemukan proyek yang sudah ada di salah satu jaringan repositori sumber terbuka utama (github, sourceforge, kode google) pikirkan aplikasi yang benar-benar ingin Anda gunakan yang belum ada dan mulai sendiri.

Bersiaplah untuk direndahkan dan berharap pekerjaan ditolak demi revisi lebih lanjut. Mitos bahwa siapa pun dapat menambahkan kode ke proyek sumber terbuka sepenuhnya salah. Selalu ada penjaga gerbang antara Anda dan akses push. Semakin baik kode Anda, semakin sedikit akan diteliti dalam jangka panjang saat Anda mendapatkan kepercayaan dari admin proyek. Jika itu proyek Anda, Anda akan menjadi penjaga gerbang itu.

Memperbarui:

Saya hanya memikirkannya dan menyadari bahwa saya tidak repot-repot menyebutkan proyek mana yang banyak dijawab oleh referensi saya. Bagi yang ingin tahu, itu SharpPcap . Pengembang utama Chris Morgan sangat profesional dan tepat waktu. Dia melakukan banyak pekerjaan dalam mengelola proyek dan mengajari saya banyak hal tentang apa yang diperlukan untuk menghasilkan proyek OSS.

Karena kendala waktu pribadi saya belum dapat berkontribusi kode lebih dari setahun tetapi saya masih mencoba untuk memberikan kembali dengan mengintai di Stack Overflow dan menjawab pertanyaan tentang SharpPcap sesekali.

Evan Plaice
sumber
dapatkah Anda menyarankan beberapa situs populer dalam hal ini?
Aditya P
2
@AdityaGameProgrammer Saya akan lebih menekankan pada mencari proyek tertentu bukan situs hosting sumber terbuka. Situs hosting hanyalah tempat pembuangan untuk proyek-proyek open source dan beberapa proyek akan bermigrasi ke situs yang berbeda jika fitur yang lebih baik dapat ditemukan (yaitu lisensi spesifik yang didukung, dukungan kontrol versi yang lebih baik, pelacak bug yang lebih baik, dll ...). Saya sudah menyebutkan beberapa. IMHO, github, kode google, dan sourceforge adalah yang paling populer. Launchpad (menggunakan kontrol versi bazaar) adalah tempat Anda akan menemukan sebagian besar pengembangan Ububtu / linux berlangsung.
Evan Plaice
2
@AdityaGameProgrammer (lanjt) Github, sourceforge, dan kode google semuanya adalah kumpulan proyek yang menggila. Karena sourceforge sudah ada lebih lama, Anda mungkin akan menemukan lebih banyak proyek mati / yatim piatu. Jauh lebih mudah untuk menemukan proyek untuk bergabung jika Anda meluangkan waktu untuk mempertimbangkan apa yang Anda minati terlebih dahulu. Pengecualiannya adalah, jika Anda ingin meng-host proyek Anda sendiri. Kemudian, luangkan waktu untuk mencari-cari fitur yang paling sesuai dengan alur kerja pengembangan biasa Anda.
Evan Plaice
Terima kasih. Usaha saya sebelumnya untuk menemukan satu di sourceforge membawa saya ke sejumlah besar proyek mati / yatim piatu.
Aditya P
28

Berikut yang saya sarankan untuk dilakukan untuk menemukan pasangan yang cocok:

  1. Jika Anda memiliki proyek sumber terbuka yang sudah Anda gunakan, ketahui dan pedulikan, itu harus menjadi kandidat pertama Anda untuk dicoba. Kalau tidak, pikirkan apa yang ingin Anda lakukan secara umum dan cari proyek di bidang ini.

  2. Ketika Anda telah menemukan proyek potensial, jangan terburu-buru. Coba gunakan sendiri. Apakah tindakan ini sebagus yang terlihat dari deskripsi dan ulasan? Jika tidak, ini bukan show-stopper lengkap; mungkin ini adalah kesempatan bagi Anda untuk terjun dan benar-benar membuat perbedaan. Lagi pula tidak ada yang membutuhkan pengembang lain untuk produk yang sempurna. Tapi itu akan memberi Anda wawasan penting apakah Anda ingin menjadi bagian dari proyek ini, sementara Anda mendapatkan pengalaman langsung dengan teknologi baru di bidang yang Anda minati.

  3. Juga sebelum mulai menginvestasikan terlalu banyak waktu dalam proyek dan mempelajari seluk beluknya, pertimbangkan untuk berkeliaran di milis proyek, forum, bahkan sistem pelacakan bug selama beberapa minggu. Jika Anda akan mulai berkontribusi pada proyek secara teratur, Anda akan menghabiskan banyak waktu di sana.

Mencari tahu: apakah Anda menikmati berkeliaran di sana, atau apakah itu menarik bagi Anda? Apakah ini terasa seperti proyek ini memiliki komunitas yang baik dan energik atau perlahan mati? Apakah orang-orang inti di sana tampaknya mendorong dan membimbing pendatang baru atau Anda akan melakukannya sendiri?

Lakukan langkah-langkah ini untuk beberapa proyek, mungkin di area yang berbeda dan Anda cenderung mengalami kekecewaan yang datang ketika Anda bergabung dengan tim yang salah. Pengalaman seperti itu berpotensi mencegah Anda melakukannya lagi di masa depan.

Beberapa pemikiran lagi:

Jika proyek yang benar-benar Anda minati adalah proyek profil tinggi dengan banyak pengembang dan aktivitas di sekitarnya, Anda mungkin akan kesulitan membangun reputasi yang cukup di sana untuk mendapatkan, katakanlah, lakukan hak atau peran yang menarik dalam komunitas. Dalam hal ini pertimbangkan untuk bergabung dengan proyek spin-off terkait dengan visibilitas yang lebih rendah. Misalnya, alih-alih mencoba untuk mulai berkontribusi ke jQuery, coba temukan plugin jQuery yang cocok untuk Anda. Kemudian Anda dapat mempertimbangkan "naik".

Jika Anda menyukai proyek tetapi merasa terintimidasi oleh ukuran, kompleksitas, atau persyaratan kualitas kode, pertimbangkan mulai dari peran pendukung, seperti pengujian, pemeliharaan dokumentasi, atau verifikasi laporan bug. Jika Anda bertanya di milis proyek bantuan apa yang paling mereka butuhkan saat ini, mereka akan dengan senang hati membimbing Anda di sana. :)

Dengan cara ini Anda akan mempelajari proyek dan membangun reputasi Anda di sana sambil berkontribusi jauh lebih banyak daripada jika Anda mulai mengirimkan tambalan di bawah standar yang akan ditolak beberapa kali hingga siap.

Yang terakhir dan yang paling penting: jika Anda terbakar di satu tempat, teruskan; jangan menyerah.

Semoga itu bisa membantu.

kdubinet
sumber
2
+1 untuk "pertimbangkan mulai dari peran pendukung." Tes menulis sangat mudah dan melihat dari dekat dengan tes memberikan ide bagus tentang apa yang ingin dicapai oleh kode. Dokumentasi adalah cara yang baik untuk mendapatkan pemahaman tentang 'gambaran yang lebih besar', dan memverifikasi bug adalah titik masuk penghalang rendah yang baik untuk memecahkan kebekuan. Mengerjakan hal-hal yang biasanya diabaikan oleh pengembang menunjukkan bahwa fokus Anda adalah untuk meningkatkan proyek dan kontribusi Anda tidak hanya didorong oleh ego. Masalah ego dapat membuat hidup sulit bagi pengelola proyek sehingga mereka berhati-hati terhadap hal semacam itu.
Evan Plaice
9

Saya akan sangat menyarankan Anda menemukan proyek sumber terbuka yang memiliki minat tulus Anda dan yang Anda gunakan secara aktif .

Alasannya sederhana: Itu membuat perbedaan antara tugas dan hobi.

Lihatlah komputer Anda. Perangkat lunak apa yang Anda pasang di atasnya yaitu Open Source? Tebakannya adalah Chrome atau Firefox, atau mungkin Open Office atau klien Instant Messenger. Apakah mereka sempurna atau hanya ada beberapa hal kecil yang ingin Anda ubah jika Anda bisa?

Jika ada, maka sekarang adalah waktu untuk melakukan sesuatu.


sumber
8

Saya menyarankan mencari (atau memulai) proyek seperti yang dilakukan orang selama bertahun-tahun, mulai menggunakan perangkat lunak Open Source untuk melakukan sesuatu. Itu mungkin tampak sepele bagi Anda, bahkan mungkin terlalu sederhana. Namun, sangat sulit untuk menggambarkan kepuasan menggunakan sesuatu, menemukan bug, mengambil sumbernya dan memperbaikinya. Atau, mungkin mengubahnya agar berfungsi seperti yang Anda inginkan.

Juga, jangan hanya meretas demi terlibat '. 95% dari tambalan saya ke kernel Linux tidak akan pernah melihat hari yang cerah, saya tahu pasti bahwa tidak ada yang menginginkannya kecuali saya, dan saya mungkin akan dipaksa untuk menjalani evaluasi psikiatrik jika ada hacker kernel kompeten lainnya yang pernah melihatnya. Tapi saya masih menikmati implementasi saya piglatin_printk()yang dimulai sebagai lelucon 1 April beberapa tahun yang lalu :)

Meskipun ya, mendapatkan kode dan proses pemikiran Anda di depan banyak orang yang kompeten sangat berharga, begitu juga belajar cara berkomunikasi dan berkolaborasi. Proyek solo adalah cara yang bagus untuk menunjukkan kepada Anda apa yang tidak boleh dilakukan. Petunjuk, ada lebih dari itu hanya menggunakan perangkat lunak kontrol versi, milis dan pelacak bug.

Untuk memulai, saya sarankan menggali di sekitar Ohloh untuk menemukan perangkat lunak yang mungkin Anda tertarik untuk menggunakannya , pertama. Unduh, bangun, mainkan. Lalu pergi ambil sesuatu yang lain. Akhirnya Anda akan ingin meningkatkan sesuatu, atau menyadari bahwa Anda memiliki keinginan untuk mengimplementasikan sesuatu yang sama sekali berbeda dari apa yang Anda temukan.

Hal lain yang membantu adalah bekerja untuk perusahaan ramah terbuka. Perusahaan saya menggunakan Xen secara ekstensif, jadi mereka tidak punya masalah dengan saya menemukan bug yang menarik dan memperbaikinya, karena bagaimanapun kita perlu melakukannya. Mereka juga tidak keberatan karyawan berpartisipasi dalam hal-hal seperti RFC dan spesifikasi rancangan, karena pada akhirnya kita akan menggunakan hasilnya.

Pos Tim
sumber
+1 piglatin_printk ()? Kedengarannya lucu. Saya ingin melihatnya dalam aksi. Tidak mengherankan bahwa sebagian besar tambalan Kernel Linux Anda telah ditolak, tidak ada banyak ruang untuk bersenang-senang / kreativitas dalam suatu proyek yang kritis. Untungnya, ada banyak proyek yang lebih kecil yang memiliki hambatan masuk yang jauh lebih rendah untuk menerima kode - bahkan jika kontribusi tersebut memerlukan pekerjaan sebelum dilakukan.
Evan Plaice
1
@EvanPlaice Mereka tidak ditolak, tidak pernah dikirimkan;)
Tim Post
7

OpenHatch dibuat khusus untuk ini.

Kutipan:

OpenHatch adalah nirlaba yang didedikasikan untuk mencocokkan calon kontributor perangkat lunak bebas dengan komunitas, alat, dan pendidikan.

Anda dapat menelusuri proyek berdasarkan jenis, teknologi, tingkat keterampilan yang diperlukan, dll. Dan menemukan yang cocok dengan tingkat Anda.

phw
sumber
Situs kecil yang bagus :) Anda juga bisa melihat freecode.com
nha
4

Satu hal yang berulang kali saya perhatikan ketika orang-orang yang ingin memulai dengan pengembangan open source adalah mereka kewalahan dengan kerumitan dan besarnya proyek-proyek besar. Saya menghadapi masalah yang sama beberapa tahun yang lalu, dan dari pengalaman saya, yang terbaik adalah tidak melihat proyek yang lebih besar segera.

Setelah menghabiskan waktu melihat-lihat proyek yang mungkin saya sukai, saya menyadari bahwa mereka masih di luar jangkauan saya dan kemudian mulai mengerjakan proyek yang sangat kecil sendirian. Saya membuat titik untuk hanya merilis kode pada Github, terlepas dari apakah itu benar-benar relevan atau apakah orang lain akan mulai menggunakannya. Akhirnya, orang mungkin mulai tertarik dengan apa yang Anda lakukan. Bahkan sebaliknya, Anda akan mendapatkan kepercayaan diri dan kemampuan teknis untuk perlahan-lahan pindah ke proyek yang lebih besar dan lebih populer.

Checksum
sumber
3

Ada situs web baru di luar sana khusus untuk ini disebut Kode 52 yang mendorong pengembang baru untuk terlibat dalam open source dengan memulai proyek OSS baru setiap minggu.

Idenya adalah bahwa hal itu akan tampak jauh lebih menakutkan bagi orang-orang yang belum pernah terlibat dalam open source sebelumnya dan mudah-mudahan akan merasa lebih cenderung untuk terlibat dalam proyek OSS lain juga.

Marcus Swope
sumber
1
Saya telah melihatnya dan memiliki beberapa catatan untuk ditambahkan. Code52 dipimpin oleh 3 pengembang dari perusahaan Readify yang mengklaim telah memenangkan gelar 'Microsoft's 2012 Partner of the Year'. Meskipun proyek di-host di GitHub, setiap proyek ditulis dalam WinJS (yaitu target Win8) dan membawa Lisensi Publik Microsoft. Dari pandangan sepintas MPL adalah copy-kiri tetapi membawa pembatasan tertentu yang memerlukan turunan untuk mewarisi lisensi yang sama atau serupa. Yaitu lebih seperti lisensi GPL daripada lisensi MIT yang jauh lebih ketat.
Evan Plaice
Proyek ini terlihat sangat menarik tetapi saya tidak dapat menghilangkan perasaan bahwa ini adalah program baru yang dikembangkan oleh Open Source Developer Digital Sharecropping yang dibuat oleh Microsoft untuk mengisi ekosistem Windows 8 baru tanpa mengeluarkan uang sepeser pun. Tidak terdengar seperti topi kertas timah yang memakai leher tetapi MS tidak benar-benar memiliki reputasi terbaik ketika datang untuk berintegrasi dengan Open Source.
Evan Plaice
1
-1 Sepertinya situs ini pada dasarnya mati (tidak ada pembaruan lagi) lebih dari setahun yang lalu
Michael Durrant
3

Saya sarankan membaca: http://open-advice.org/ .

Ini bertujuan membantu mereka yang menciptakan dan memelihara komunitas, dan mereka yang tidak percaya diri tentang komunitas mana yang ingin mereka bergabung atau bagaimana melakukannya.

Gagal itu, cari proyek yang memiliki misi yang beresonansi dengan Anda, atau bercabang dan berkontribusi untuk yang sudah berguna bagi Anda.

Semoga berhasil.

pengguna549213
sumber
3

Ketika saya mulai, saya mencari opsi secara daring dan terbukti sulit untuk menemukan sesuatu yang bisa Anda gunakan sebagai pemula.

Beberapa proyek sulit untuk dikontribusikan bukan karena mereka terlalu maju tetapi karena masyarakat tidak ramah. Jadi, jangan berkecil hati ketika Anda menabrak dinding.

Selama pencarian, saya memutuskan untuk menyusun daftar 10 proyek sumber terbuka yang pemula dapat mulai mendukung tanpa banyak proses yang menegangkan. Berikut tautan yang akan digunakan:

Sepuluh Proyek untuk pemula untuk mendukung dan belajar dari

Saya harap Anda merasa terbantu dan Anda selalu dapat menambahkan lebih banyak jika Anda menemukan yang keren!

Eenvincible
sumber
maukah Anda menjelaskan lebih lanjut tentang apa yang dilakukannya dan mengapa Anda merekomendasikannya untuk menjawab pertanyaan yang diajukan? "Jawaban khusus tautan" tidak diterima di Stack Exchange
agas
2

Saya sarankan untuk memulai proyek sendiri pada topik yang Anda minati.

Banyak yang bisa dipelajari dengan bekerja pada suatu proyek secara umum. Tidak perlu melihat bagaimana orang lain membuat kode untuk mempelajari cara membuat kode dengan lebih baik. Dan kadang-kadang Anda akan benar-benar melihat apa yang tidak boleh dilakukan karena orang lain sering kali tidak lebih berpengalaman daripada Anda.

Biasanya membantu melihat kode orang lain, tetapi Anda akan menemukan kode orang lain di proyek Anda sendiri hanya melalui perpustakaan dan komponen yang Anda gunakan.

Pengalaman akan mengajarkan Anda apa yang baik dan praktik buruk.

Brian R. Bondy
sumber
1
Walaupun saya pikir ini adalah ide yang bagus, melakukannya sebagai proyek pemula bisa sangat menakutkan. Terutama ketika Anda tidak memiliki ulasan kode atau orang lain yang dapat menambahkan input. Proyek saya sendiri telah melalui banyak penulisan ulang dan ribuan baris kode karena tidak ada yang memberi tahu saya X lebih baik, masalah yang masih saya miliki. Bergabung dengan proyek yang sudah mapan akan mempercepat belajar lebih baik
TheLQ
@TheLQ: Tergantung tingkat pengalaman Anda, saya kira, melakukan sesuatu dari awal sendiri akan mengajarkan banyak pelajaran dan hal-hal yang tidak akan Anda pelajari dengan bergabung dengan tim yang sudah memiliki banyak hal dilakukan. Menurut saya, ada banyak hal buruk tentang proyek Anda sendiri atau orang lain.
Brian R. Bondy
@TheLQ saya sepenuhnya setuju. Merupakan pengalaman yang sangat berharga untuk bergabung dengan proyek yang sudah ada karena memberi Anda gambaran tentang bagaimana proyek open source dikelola dan bagaimana struktur organisasi. Setelah mengerjakan proyek sukses orang lain, membuat lompatan untuk menciptakan salah satu proyek saya adalah berjalan-jalan di taman.
Evan Plaice
2

Saya adalah pemilik proyek pada kode google, dan saya mencari kontributor. (Namun saya tidak akan menyalahgunakan jawaban ini untuk iklan.) Karenanya pendapat saya mungkin menarik untuk Anda.

Pertama-tama Anda harus mencari tahu apa yang Anda minati. Kemudian kembangkan beberapa keahlian dalam beberapa bidang yang terkait dengan minat Anda . Kemudian temukan proyek di mana keahlian Anda dituntut dan dibutuhkan.

Semakin kecil proyek, semakin sedikit kontributor yang ada, semakin besar peluang kontributor dicari dan Anda dapat menghubungi penulis / pemilik proyek secara langsung. Beri tahu mereka a) apa keahlian Anda b) di mana Anda melihatnya dapat diterapkan dalam proyek c) apa yang menurut Anda dapat Anda capai.

Ingat: hanya mengetahui satu atau dua bahasa pemrograman utama bukanlah keahlian.

Ingo
sumber
Bagaimana Anda menyarankan seseorang untuk menentukan apa yang mereka minati atau membangun keahlian di bidang-bidang itu?
Adam Lear
2
@ Anna Saya tidak yakin saya mengerti pertanyaan Anda. Maksud saya ada ratusan topik - dari hal-hal tingkat rendah seperti protokol jaringan atau cara kerja GPU hingga sangat abstrak, topik yang hampir matematis (parsing, sistem tipe, teori kategori, dll.). Jenius terhebat tidak akan menguasai mereka semua dan akan senang memiliki seseorang yang ahli dalam bidang di mana ia, si genius, tidak. Tapi apa minat Anda sebenarnya, siapa yang bisa mengatakan itu selain Anda?
Ingo
1
Ya, menemukan minat itu mungkin cukup pribadi (atau sarannya adalah untuk "mencoba hal-hal yang berbeda dan melihat apa yang Anda sukai"), tetapi bagaimana dengan mendapatkan keahlian? Anda mengatakan itu lebih dari sekedar mengetahui beberapa bahasa. Jadi, mengingat topik / subjek baru, apa yang akan Anda lakukan untuk mendapatkan keahlian itu? Bagi saya, bergabung dengan proyek OSS akan menjadi bagian dari proses itu, tetapi jika saya membacanya dengan benar, Anda menyarankan seseorang harus menjadi ahli sebelum bergabung dengan proyek.
Adam Lear
Apa yang akan saya lakukan? Membaca buku-buku. Baca PDF. Diskusikan dengan seseorang yang Anda kenal, atau di internet. Coba sesuatu. Praktek. Jawab semua pertanyaan pada SO yang muncul mengenai topik itu. Kemudian suatu hari perhatikan bahwa sedikit yang tahu lebih baik dari Anda. - Jangan menganggap saya terlalu "ahli", tetapi ingat, dalam proyek sumber terbuka, karena sifatnya sukarela, tidak ada cara untuk memaksa seseorang untuk melakukan pekerjaan - karenanya orang yang tahu apa yang mereka lakukan dan yang ingin untuk melakukan hal itu sangat disambut.
Ingo