4 poin oleh GN⁺ 2025-11-17 | 4 komentar | Bagikan ke WhatsApp
  • Pustaka utilitas kecil JavaScript makin menjadi tidak diperlukan karena kemampuan pembuatan kode oleh LLM
  • Sebagai contoh, blob-util adalah paket npm berusia 10 tahun, sebuah kumpulan alat pemrosesan Blob, tetapi kini AI dapat langsung menghasilkan kode serupa
  • Perubahan ini memungkinkan pengurangan dependensi dan pengembangan yang lebih cepat, tetapi juga menyebabkan hilangnya kesempatan untuk belajar dan memahami
  • Setelah perluasan fitur bawaan Node.js dan browser, LLM kini mempercepat berakhirnya pustaka skala kecil
  • Ke depan, nilai open source kemungkinan akan tetap bertahan di ranah yang kreatif, berskala besar, dan sangat spesialis

Kemunduran open source kecil dan pengaruh LLM

  • blob-util, yang dibuat 10 tahun lalu, adalah kumpulan utilitas sederhana untuk mengubah objek Blob JavaScript menjadi string atau ArrayBuffer, dan diunduh lebih dari 5 juta kali per minggu
    • Pembuatnya membuatnya setelah melihat pengguna PouchDB kebingungan dalam menangani Blob
  • Saat ini sekitar 80% pengembang menggunakan AI dalam pekerjaan mereka, sehingga utilitas sederhana kini dapat digantikan oleh LLM
    • Contohnya, Claude dapat langsung menghasilkan fungsi TypeScript untuk mengubah Blob menjadi ArrayBuffer
  • Hasil dari Claude mirip dengan blob-util, tetapi lebih bertele-tele dan validasi tipenya berlebihan, sementara penanganan error-nya lebih baik
  • Penulis menyebut perubahan ini bisa terlihat sebagai pengurangan dependensi dan peningkatan ketahanan kode

Hilangnya nilai open source yang berpusat pada pembelajaran

  • README blob-util menyertakan tutorial yang menggunakan karakter Kirby, dan tujuannya bukan hanya menyediakan fungsi sederhana, tetapi juga membantu pembelajaran JavaScript
  • Dalam lingkungan pengembangan yang berpusat pada LLM, jawaban instan lebih diutamakan daripada pemahaman dan pendidikan, sehingga kebutuhan akan open source jenis pembelajaran seperti ini menurun
  • Upaya seperti llms.txt untuk otomatisasi dokumentasi membuat makna dokumentasi itu sendiri didefinisikan ulang

Arah baru open source

  • Penulis tetap melanjutkan open source, tetapi berpandangan bahwa era pustaka kecil bernilai rendah telah berakhir
    • Tren penurunan ini sebenarnya sudah terjadi karena perluasan fitur bawaan Node.js dan browser (node:glob, structuredClone, dan lain-lain)
    • LLM mempercepat arus tersebut secara menentukan
  • Pustaka yang dulu berperan edukatif (misalnya Underscore.js) juga makin berkurang kebutuhannya
    • Fungsi sederhana seperti pengelompokan array kini bisa diselesaikan dengan API standar

Syarat open source yang masih bernilai

  • Nilai kini terkonsentrasi pada proyek berskala besar, kreatif, dan spesialis yang tidak mudah dihasilkan oleh LLM
    • Sebagai contoh, proyek fuite dan riset deteksi kebocoran memori adalah pekerjaan kreatif yang sulit direproduksi LLM
  • Ke depan, makna open source terletak pada ide-ide baru dan kreativitas manusia
    • Sebagai contoh, disebutkan framework Ripple.js yang dikembangkan oleh Dominic Gannaway untuk menekankan semangat eksperimen manusia

Kesimpulan

  • LLM memang telah membuat sebagian open source terlihat ketinggalan zaman, tetapi peluang untuk menciptakan bentuk baru open source tetap ada
  • Kreativitas dan semangat bereksperimen para pengembang manusia dipandang sebagai faktor kunci keberlanjutan ekosistem open source di era AI

4 komentar

 
savvykang 2025-11-20

Saya rasa itu tidak masalah, asalkan kita bisa mencegah kebiasaan ekosistem aneh seperti left-pad.

 
shakespeares 2025-11-19

Seiring kita memasuki masa ketika kepuasan yang didapat semakin tidak sebanding dengan usaha yang dikeluarkan, utilitas kecil tampaknya akan makin diabaikan karena dinilai tidak sepadan dengan kerja keras yang dibutuhkan untuk pemeliharaannya.

 
GN⁺ 2025-11-17
Opini Hacker News
  • Sekitar 80% developer saat ini menggunakan AI dalam pekerjaan mereka
    Utilitas seperti blob-util kini kebanyakan bisa langsung dibuat dengan LLM
    Namun pendekatan seperti ini adalah pedang bermata dua. Kode yang belum terverifikasi meninggalkan beban pemeliharaan dan bisa gagal pada edge case
    Karena itu, di ekosistem Java, kumpulan utilitas standar tepercaya seperti Apache Commons pun menjadi mapan

    • Library utilitas lama sudah teruji di berbagai lingkungan sehingga stabil
      Sebaliknya, kode yang dihasilkan LLM tampak logis di permukaan tetapi sangat mungkin menyimpan bug aneh
  • Kita telah memasuki era ketika AI menghasilkan kode dan tutorial dalam jumlah besar, sehingga penurunan kualitas dan membanjirnya spam makin cepat
    Motivasi untuk membuat blog pribadi atau library kecil pun berkurang

    • Sebenarnya web sudah lama dipenuhi spam tutorial berkualitas rendah
      Tulisan buatan LLM terasa mirip levelnya, jadi malah terasa lebih mudah difilter
      Saya menguji nilai nyata tutorial dengan menjalankan kodenya di dalam devcontainer. Kalau berjalan, layak dilihat; kalau tidak, dibuang
    • Hari ini saya mencari topik tertentu di YouTube dan kaget karena yang muncul tanpa henti hanya video buatan AI
    • Ucapan “era spam berkualitas rendah akan datang” pada dasarnya sudah menjadi kenyataan
    • Seorang web developer bercanda, “sekarang 10 kali lebih cepat, jadi mustahil buruk bagi umat manusia”
    • Ada juga yang menyindir dengan melempar kode assembly sambil berkata, “kalau ini tidak bisa dijelaskan, berarti bukan developer sungguhan”
  • Neraka micro-dependency di JS dulu adalah mimpi buruk
    Sekarang semoga era itu berakhir dan kita kembali ke masa ketika developer belajar ngoding lagi

    • Hasil terbaik justru datang dari kumpulan utilitas kecil seperti jQuery atau lodash yang dibundel menjadi satu paket
    • Namun ada yang meragukan pernyataan “sekarang semuanya sudah berakhir”. Justru bisa makin buruk karena banjir kode buatan AI
    • Jika kode LLM makin banyak, fungsi dengan kegunaan sama akan tersebar dalam banyak versi, dan perbaikan bug juga harus dilakukan masing-masing
    • Memakai LLM tidak berarti orang akan belajar lebih banyak. Saat ada masalah, mereka akan menyerahkan refactor ke LLM juga
    • Ada juga tambahan singkat: “sekarang eranya vibe coder”
  • Muncul pertanyaan apakah “masalah membalik binary tree” benar-benar ada

    • Ini tampaknya merujuk pada soal yang membuat pendiri Homebrew gagal dalam wawancara Google
    • Kemungkinan besar itu hanya kekeliruan sederhana dari penulis, dan kalaupun dilakukan, hanya latihan tanpa makna berupa membalik operator perbandingan
  • Ada yang setuju dengan klaim bahwa “era library kecil bernilai rendah telah berakhir”
    Bahasa Go sejak awal tidak punya dependency hell, dan masalah npm disebabkan faktor budaya
    Kini lebih bernilai dan lebih menyenangkan membuat produk yang benar-benar bekerja daripada utilitas

    • Seperti pepatah Go, ada filosofi bahwa “sedikit copy lebih baik daripada sedikit dependency” (Go Proverbs)
    • Ada juga pertanyaan tentang fitur Go apa yang mencegah masalah dependency seperti ini
  • Saya menganggap micro-dependency itu sendiri tidak bermakna
    Lebih baik daftar fungsi ditulis di Markdown agar bisa disalin
    Pendekatan library kecil berbasis header file di C lebih praktis

    • Lalu ada tanggapan bercanda, “kalau begitu kenapa library header seperti ini tidak dimasukkan saja ke standard C library?”
    • Namun ada juga sanggahan realistis: “kalau pakai cara copy-paste, bagaimana dengan update keamanan?”
  • Muncul pertanyaan, bentuk open source seperti apa yang masih bermakna sekarang
    Sebab kode yang dipublikasikan pada akhirnya akan diserap menjadi data pelatihan AI
    Karena itu, model source-available dianggap bisa menjadi alternatif alih-alih FOSS sepenuhnya

    • Ada yang membantah, “kalau lebih banyak orang bisa memakainya, bukankah itu justru keunggulan open source?”
      Penulis menekankan bahwa makna kontribusi lebih besar daripada sekadar pencantuman nama
    • Namun ada juga pandangan skeptis bahwa “source-available pun pada akhirnya akan dipakai untuk pelatihan”
    • Ada yang berpendapat kita tidak berkewajiban memberi pengetahuan gratis kepada dunia, dan harus menolak berbagi tanpa timbal balik
    • Ada pula pendapat bahwa mendistribusikan kode nonfree itu tidak etis, dan prinsip free software harus dijaga
    • Seseorang mengaku “sudah kehilangan minat pada open source” dan mengubah semua proyek menjadi privat
  • Saya percaya open source tidak akan hilang, malah akan menjadi lebih kuat
    Developer yang benar-benar kreatif akan memakai AI untuk menciptakan inovasi yang tidak bisa dibuat perusahaan
    Open source tetap menjadi arena pembuktian nilai yang nyata, sekaligus tempat belajar melampaui batas lewat AI

    • Inovasi sejati akan datang dari open source
      Namun diperkirakan pemerintah dan perusahaan besar akan mencoba mengatur sistem AI lokal, dan segera akan muncul batas tentang “AI yang boleh dipakai warga”
    • Di sisi lain, proyek open source sudah pusing menghadapi submission kode buatan AI
      Waktu terbuang untuk review dan diskusi kebijakan, dan khususnya di bidang kompleks seperti compiler, AI sama sekali tidak membantu
  • Ada yang menegaskan bahwa meskipun tidak ditambahkan sebagai paket, tindakan mempublikasikan kode itu sendiri tetap bernilai

    • Saya juga kalau menemukan potongan kode kecil akan menyalinnya lalu menyesuaikannya dengan standar saya. Rasanya seperti semangat berbagi dalam sains
      Jika LLM yang menuliskan kodenya, beban belajar berkurang dan kita bisa fokus pada topik yang lebih dalam
    • Saya menganggap lisensi copyleft lebih baik. Perusahaan jadi tidak bisa seenaknya mengambil dan memakainya, dan sebagai gantinya harus mempekerjakan orang secara langsung
    • Meski tidak dijalankan, membaca kode orang lain untuk belajar tetap sangat bernilai. Penyelesaian masalah itu sendiri adalah hadiah
    • Namun pada akhirnya open source adalah investasi waktu dan tenaga
      Misalnya, ada yang mengaku setelah 14 tahun memelihara rubygems.org, ia pergi karena kecewa dengan struktur yang sudah terlalu terkorporetisasi
  • Muncul pendapat bahwa menulis kode dengan AI pada akhirnya juga salah satu bentuk dependency
    Menyalin-tempel tanpa verifikasi pada dasarnya tidak berbeda dari menambahkan library eksternal

    • Namun kode yang dihasilkan LLM bisa dirancang sempit sesuai kebutuhan, sehingga fitur yang tidak perlu berkurang dan bisa lebih efisien
    • Selain itu, tidak ada beban supply chain attack maupun update yang terlalu sering, dan itu menjadi kelebihan
    • Sebaliknya, kekurangannya adalah library akan termodernisasi secara otomatis seiring waktu, sedangkan potongan kode LLM tidak
    • Pada akhirnya masalahnya bukan alatnya, melainkan kebiasaan copy-paste tanpa verifikasi. Developer yang ceroboh akan menghasilkan hal yang sama apa pun alat yang dipakai
 
haytsir 2025-11-18

Pada awal 2024, saat membuat proyek kecil,
saya pernah meminta Claude 3.5 membuatkan modul store state yang bisa dipakai di pure JavaScript,
dan saya ingat sempat terkejut karena ia menuliskan kode yang ringkas sekaligus mampu menangani situasi migrasi.

Saya rasa ini fenomena yang wajar jika mengingat bahwa makin kecil sebuah library, makin banyak pula kode yang dibagikan secara publik oleh orang-orang dengan pemikiran serupa, dan AI akan lebih mudah membentuknya menjadi struktur yang baku.

Seperti copyparty, sesuatu yang bisa terpikir oleh siapa saja, tetapi sulit dipelihara lama oleh individu.
Agak disayangkan bahwa ke depannya kita mungkin akan semakin sulit melihat proyek-proyek yang lahir dari dorongan sampai tuntas terhadap proyek semacam itu lalu muncul sebagai proyek yang rapi dan dipoles dengan baik.