Lowongan Pengembang - Jellyfin
(jellyfin.org)- Jellyfin menjadikan momen ulang tahun ke-10 Hacktoberfest pada Oktober 2023 sebagai kesempatan untuk memperluas basis kontributor yang stagnan dan mempercepat peningkatan server, Web UI, dan klien
- Proyek ini mempertahankan model sukarelawan semi-komersial, dan donasi hanya digunakan untuk biaya infrastruktur serta perangkat keras klien pengembangan yang jarang dibutuhkan
- Kontributor inti untuk server, Web UI, dan seluruh klien berjumlah maksimal sekitar 30 orang, dan hampir tidak bertambah dalam 3 tahun terakhir sehingga beberapa aplikasi dipelihara oleh 1–2 orang di waktu pribadi mereka
- Keluhan pengguna berfokus pada kurangnya dukungan klien dan tingkat kematangan yang belum memadai; bahkan fitur atau klien dengan permintaan tinggi seperti Chromecast pernah lama tidak memiliki tenaga pengembangan
- Semua bentuk kontribusi dibutuhkan, mulai dari perbaikan bug kecil, perbaikan dokumentasi, UI/UX, terjemahan, hingga pengembangan klien penuh, dan kontributor berkualitas yang konsisten juga dapat bergabung ke tim resmi
Mengapa Jellyfin sedang mencari kontributor sekarang
- Jellyfin menjadikan masuknya kontributor baru sebagai prioritas penting bertepatan dengan ulang tahun ke-10 Hacktoberfest dari DigitalOcean
- Setiap kali muncul kontroversi terkait Plex, Jellyfin sering disebut sebagai alternatif, tetapi di komunitas juga terus muncul keluhan tentang kurangnya klien, ketiadaan fitur tertentu, dan tingkat kematangan yang belum memadai
- Untuk mengurangi kesenjangan ini, lebih banyak orang perlu ikut serta dalam peningkatan kode, pengembangan fitur baru, dan perapian dokumentasi
Keterbatasan proyek berbasis sukarelawan
- Jellyfin dijalankan sebagai proyek semi-komersial yang langka bahkan di dalam FLOSS
- Pengembang, penerjemah, pengelola komunitas, dan anggota yang membantu pemecahan masalah semuanya adalah sukarelawan
- Tidak ada orang yang dibayar untuk mengerjakan Jellyfin, dan juga tidak ada dukungan dari perusahaan atau organisasi terpisah
- Tidak ada rencana monetisasi, dan bug bounty pun secara aktif dihindari
- Donasi hanya digunakan untuk biaya infrastruktur dan, bila perlu, perangkat keras klien untuk pengembangan yang sesekali dibeli
- Donasi tidak digunakan untuk membayar pengembang, dan sikapnya adalah tidak akan melakukannya di masa depan juga
- Pilihan ini dimaksudkan untuk menghindari pola proyek media streaming lain yang bermula sebagai FLOSS lalu menambahkan fitur yang merugikan pengguna demi pendapatan dan beralih menjadi closed source
Beban menjaga cakupan luas dengan tim kecil
- Saat ini basis kontributor inti, mencakup server, Web UI, dan semua klien, berjumlah maksimal sekitar 30 orang
- Dalam 3 tahun terakhir, ukuran keseluruhannya hampir tidak bertambah
- Beberapa area, terutama aplikasi individual, dikerjakan oleh 1–2 orang secara gratis di waktu pribadi mereka
- Bahkan fitur atau klien dengan permintaan tinggi pun bisa terhenti jika tidak ada orang yang memulai pengembangannya atau membantu
- Chromecast sempat harus ditinggalkan untuk sementara, tetapi dalam beberapa minggu terakhir mulai bergerak lagi
Cara berpartisipasi dan jalur bergabung ke tim resmi
- Orang yang ingin memulai bisa mendapatkan bantuan melalui panduan kontribusi, kanal Matrix/IRC/Discord, dan Forum
- Ruang lingkup kontribusi sangat beragam, mulai dari perbaikan bug kecil, perbaikan dokumentasi, hingga pengembangan klien penuh
- Bagi yang menunjukkan kontribusi berkualitas dan kemauan untuk terlibat, juga tersedia prosedur nominasi anggota tim baru untuk bergabung ke tim resmi
1 komentar
Komentar Hacker News
Saya tidak tahu Jellyfin berbasis C#
Saya memulai karier sebagai developer C#, tetapi sekarang hanya memakai C++, dan selama ini terus mencari proyek untuk mencoba memakai C# lagi
Saya punya daftar hal yang terasa kurang nyaman di Jellyfin, dan sekarang setelah tahu ini C#, rasanya ingin memperbaikinya sendiri
Bahasanya sudah banyak berkembang, terutama kemudahan pengembangan seperti pattern matching, pernyataan using, dan tipe dasar yang berorientasi performa
Sejak awal tahun ini saya mulai kembali memakai C# penuh waktu, dan sangat puas
Akan bagus kalau tim Jellyfin juga menampilkan ajakan berkontribusi seperti ini di titik tempat pengguna meminta fitur
Untuk dukungan Chromecast, contoh di tulisan blog itu, saya pernah bertanya di issue ini bagaimana bisa membantu mengimplementasikan fiturnya: https://github.com/jellyfin/Swiftfin/issues/271#issuecomment...
Walaupun sebenarnya tidak ada hal produktif yang bisa saya kontribusikan untuk fitur itu, kalau ada panduan memulai saya pasti akan membukanya
Kalau tulisan blog dan materi untuk memulai cepat ditautkan di issue tempat orang bertanya bagaimana bisa membantu, konversinya sepertinya akan cukup bagus
Terima kasih kepada semua orang yang berkontribusi ke Jellyfin, dan saya tahu onboarding developer sering kali menjadi pekerjaan yang lebih besar, tetapi ini sekadar usulan bahwa posisi itu cocok untuk menaruh tautan ajakan bertindak
Saya pernah mencoba menambahkan fitur allowlist berbasis tag yang dulu banyak diminta dan kelihatannya tidak sulit diimplementasikan, dan saya juga sudah memahami di bagian mana fitur itu harus dimasukkan dalam kode server
Namun saya menyerah setelah sadar bahwa untuk mengirimkan fiturnya, saya harus mengurus PR di setidaknya dua repositori, dan bolak-balik di antara dua repositori untuk pengujian integrasi
Untuk kode yang terikat erat, satu repositori memang sangat praktis
Mungkin saya akan melihatnya lagi suatu saat
Sebagai tambahan, parental control berbasis allowlist adalah salah satu alat terbaik, tetapi membuat frustrasi karena hampir tidak ada yang benar-benar mendukungnya
Kemungkinan besar Anda bukan satu-satunya yang mengalami masalah itu
Pihak proyek mungkin juga merasa hal itu merepotkan, tetapi bisa jadi mereka sudah terbiasa dengan kerepotan tersebut sampai melupakannya
Jika PR lintas repositori didukung, prosedur seperti ini bisa disederhanakan; saya sudah menginginkan fitur semacam itu hampir 10 tahun
Saya mengatur akun anak agar hanya bisa melihat item dengan tag tertentu, dan karena tag Plex cukup terperinci, bisa juga mengizinkan seluruh film atau acara TV, sebagian acara TV, atau hanya satu episode
Sekarang mereka bisa mengakses cukup banyak konten, tetapi konten baru tidak otomatis terbuka
Kalau saya mendapatkan episode baru Bluey, istri saya biasanya ingin menontonnya dulu, dan karena di program anak-anak jarang ada hal yang sangat bermasalah, hampir selalu kami setujui, tetapi tetap membuat hati tenang
Saya tidak ingat persis istilahnya, tetapi ada tag dan label, jadi harus hati-hati
Dulu saya mencoba sisi yang salah; pada dasarnya buat label, lalu atur akun anak agar hanya melihat konten yang memiliki label itu
Bagus karena sebagian besar film bisa diblokir berdasarkan rating, lalu beberapa film tertentu bisa diizinkan satu per satu
Sebagai developer yang hanya bekerja di sistem Linux, saya penasaran seperti apa lingkungan pengembangan C#
Saya kira Mono masih ada, dan runtime yang dipakai saat proyek C# dijalankan adalah itu
Saya selalu merasa C# agak canggung di lingkungan non-Windows, tetapi mungkin selama ini saya salah paham
Karena tidak ada kesempatan atau kebutuhan memakainya di kantor, saya tidak benar-benar tahu seberapa bagus tooling-nya di Mac atau Linux, atau bagaimana cara kerjanya dalam praktik
Di sisi lain, saya beberapa kali melihat orang menyebutnya seperti Java yang lebih baik, dan di sini sepertinya F# juga cukup disukai
Plugin C# tidak berfungsi di VSCodium
Mirip Java, desain bahasa C# juga cukup banyak mengasumsikan penggunaan IDE
Meski begitu, kalau untuk aplikasi web, selain itu baik-baik saja
Perlu sedikit perhatian saat memasang SDK, dan beberapa API sistem berperilaku agak berbeda, tetapi secara keseluruhan hanya pada level saya sedikit lebih memilih Windows
Mono masih ada, tetapi sejak sekitar 2015 C# sudah didukung secara native di Linux, dan sejauh yang saya tahu sekarang hampir tidak ada yang benar-benar memakai Mono
Kegunaan utamanya lebih untuk menjalankan aplikasi .NET Framework, bukan .NET Core
Mono masih tersisa dan dipakai untuk beberapa kebutuhan khusus seperti WASM dan interpreter
Sejauh yang saya tahu, di Azure pun banyak yang lebih memilih menjalankannya di mesin Linux, dan tempat saya bekerja juga begitu
Performanya menurut saya sama atau lebih cepat
Sekarang banyak developer C#, mungkin bahkan mayoritas, bekerja di mesin non-Windows, dan dukungan untuk arsitektur Mac baru juga ditambahkan dengan sangat cepat
Singkatnya, sekarang bahasa C# itu sendiri sama baiknya atau lebih baik di lingkungan non-Windows
Saya sempat melihat repositori GitHub-nya, dan ada lebih dari 90 PR terbuka di repositori utama, sebagian bahkan tidak mendapat umpan balik selama lebih dari 8 bulan
Kalau tim saat ini bahkan tidak bisa menangani tumpukan PR yang sudah ada, saya tidak tahu apa arti ajakan untuk berkontribusi ini
Dalam kondisi sekarang, bertambahnya PR tidak akan membantu proyek
PR yang cukup sederhana untuk ini sudah terbuka sejak Februari 2023, tetapi tetap begitu saja tanpa umpan balik yang bisa ditindaklanjuti: https://github.com/jellyfin/jellyfin/pull/9291
Saya tidak tahu Jellyfin membutuhkan developer
Saya pengguna setia Plex, tetapi pekerjaan saya adalah developer C#, jadi saya meng-clone proyek server dan web lalu mencoba mengerjakan isu pertama
Saya sangat menyukai Jellyfin dan sudah memakainya selama 3 tahun
Saya pasti berencana ikut Hacktoberfest
Saya ingin memakai Jellyfin, tetapi tidak ada klien resmi Apple TV
Saya memakainya dan cukup bagus
Juga terintegrasi dengan Jellyfin
[0] https://firecore.com/infuse
[1] https://jellyfin.org/posts/client-infuse/
Saat saya mencoba salah satunya beberapa tahun lalu, tidak ada masalah berarti dengan klien Jellyfin
Saya berhenti memakai Jellyfin karena Locast ditutup, dan itu adalah penggunaan utama saya
Opsi pengurutan dan filternya sangat kurang, terasa tersendat seperti kartu film dimuat di posisi yang salah kalau menggulir terlalu cepat, dan kadang progress bar berhenti diperbarui selama sisa film setelah dijeda
Meski begitu, masih bisa dipakai
Pengembangannya memang agak sporadis, tetapi dulu saat saya membutuhkannya, itu berjalan cukup baik
Saya dulu benar-benar ingin memakai Jellyfin dan sempat beralih, tetapi setelah tahu ada banyak API yang tidak terautentikasi, termasuk sampai stream video, saya kembali ke Plex
Rasanya terlalu berisiko mengekspos Jellyfin ke web
https://github.com/jellyfin/jellyfin/issues/5415
Semoga fitur Chromecast di Jellyfin iOS akhirnya dikembangkan
Secara harfiah hanya karena satu fitur ini saya memakai Plex alih-alih Jellyfin
Semoga ada orang yang mahir dengan Chromecast API bergabung dan membantu tim