- Selama puluhan tahun, ramalan “kiamat programmer” yang terus berulang selalu terbukti salah, dan kemajuan teknologi justru menghasilkan lebih banyak pengembang dan lebih banyak program
- Berbagai teknologi otomasi seperti WYSIWYG, 4GL, No-Code, LLM telah muncul, tetapi pada praktiknya tidak berhasil mengurangi kebutuhan akan pengembang
- Alat berbasis LLM memiliki keandalan dan kemudahan pemeliharaan yang lebih rendah dibanding teknologi sebelumnya, dan di sebagian besar tim justru menyebabkan penurunan produktivitas dan memburuknya kualitas
- Kesulitan esensial dalam pemrograman bukanlah menulis kode, melainkan kemampuan mengubah pemikiran manusia yang ambigu menjadi logika yang terstruktur, dan ini masih merupakan ranah manusia
- Karena itu, kemungkinan AI menggantikan pengembang rendah, dan justru permintaan terhadap pengembang terampil diperkirakan akan semakin besar
Siklus “kiamat programmer” yang terus berulang
- Selama 43 tahun terakhir, berbagai teknologi seperti Visual Basic, Delphi, Executable UML, No-Code, Low-Code telah diklaim akan menghapus kebutuhan terhadap programmer
- Pada era 1970~80-an ada 4GL, 5GL, sebelumnya Fortran, COBOL, dan jika ditarik lebih jauh bahkan kompiler A-0 pun pernah disertai ramalan yang sama
- Komputer elektronik awal COLOSSUS diprogram dengan pengkabelan fisik, dan generasi setelahnya pun pernah diejek sebagai “bukan programmer sungguhan”
- Namun pada akhirnya jumlah programmer tidak berkurang, malah meningkat, dan ini disebut sebagai contoh representatif dari Jevons Paradox
Perbedaan LLM dengan teknologi masa lalu
- Teknologi masa lalu benar-benar meningkatkan kecepatan produksi perangkat lunak sekaligus menjaga keandalan, tetapi LLM menunjukkan efek sebaliknya di sebagian besar tim
- LLM menurunkan kualitas kode dan mempersulit pemeliharaan sehingga menciptakan situasi “LOSE-LOSE”
- Bahkan dengan prompt yang sama, hasilnya tidak selalu identik, dan kode yang dihasilkan tetap memerlukan verifikasi serta perbaikan oleh pengembang manusia
- Tidak ada bukti bahwa AI menggantikan pengembang, dan pengurangan tenaga kerja baru-baru ini lebih disebabkan faktor ekonomi seperti perekrutan berlebihan saat pandemi, kenaikan suku bunga, dan fokus investasi pada data center
Tantangan esensial dalam pemrograman
- Inti pemrograman adalah proses mengubah pemikiran manusia yang ambigu menjadi cara berpikir komputasional yang logis dan presisi
- Ini adalah kesulitan yang tidak berubah sejak era kartu berlubang hingga COBOL, Visual Basic, dan Python
- Karena bahasa alami pada dasarnya ambigu dan tidak presisi, dikutip ramalan Dijkstra bahwa era pemrograman dalam bahasa Inggris atau Prancis tidak akan datang
- Cara berpikir seperti ini memang bisa dipelajari, tetapi tidak semua orang menikmatinya atau mampu melakukannya dengan baik, dan pasokan tenaga terampil selalu kurang
Batasan AI dan keberlanjutannya
- AGI (kecerdasan umum buatan) masih jauh, dan memerlukan kemampuan memahami, menalar, dan belajar setingkat manusia
- LLM skala besar menimbulkan biaya dan kerugian yang sangat besar sehingga tidak berkelanjutan dalam jangka panjang
- Seiring waktu, kegunaannya bisa menurun karena keterbatasan bahasa dan versi library yang dipelajari model
- Karena alasan ini, LLM raksasa bisa saja berakhir sebagai eksperimen yang tidak ekonomis seperti penjelajahan bulan Apollo
Prospek lingkungan pengembangan di masa depan
- Dalam waktu dekat, pengembangan perangkat lunak diperkirakan akan berbentuk penggunaan alat bantu berbasis model bahasa kecil untuk menjalankan peran pendukung seperti pembuatan prototipe atau pelengkapan kode otomatis
- Namun keputusan penting dan jaminan kualitas tetap akan dipimpin pengembang manusia, dan sesuai hukum Jevons, permintaan terhadap pengembang justru bisa meningkat
- Perusahaan perlu mulai sekarang berinvestasi dalam perekrutan dan pelatihan pengembang terampil, karena ini merupakan strategi inti untuk meningkatkan produktivitas dan keandalan terlepas dari ada atau tidaknya AI
1 komentar
Komentar Hacker News
Setelah bertahun-tahun bekerja dengan agent-LLM, hasilnya sama sekali tidak berguna untuk pemrograman nyata
Ia tidak bisa menyelesaikan masalah library tingkat rendah yang kompleks atau bug yang tidak intuitif, dan tidak memahami logika pada lapisan abstraksi
Namun, untuk pekerjaan boilerplate yang sudah diulang ribuan kali, seperti membangun website sederhana, ia sangat unggul. Untuk tugas sederhana seperti ini, saya menghemat waktu kerja sehari penuh
Tapi saya tidak melihat kemungkinan LLM melampaui area tugas sederhana dan masuk ke tahap memahami masalah yang kompleks
Pemrograman bukan hanya coding tingkat rendah atau memperbaiki bug legacy. Membangun website yang diselesaikan LLM juga jelas merupakan salah satu bentuk pemrograman
Saya menghemat banyak waktu dalam memahami codebase besar, brainstorming fitur, dan mengidentifikasi gap dalam implementasi
LLM memang tidak bisa menggantikan sepenuhnya, tetapi nilainya jelas sebagai alat yang kuat bagi engineer
Namun sebagian besar developer bekerja dengan menggabungkan framework dan library.
Seperti mobil listrik yang kurang cocok untuk angkutan barang berat tetapi tetap sangat berguna bagi pengemudi biasa, posisi LLM juga seperti itu
Beberapa bulan lalu saya mungkin akan setuju, tetapi sekarang tampaknya teknologinya sudah melampaui batas itu
Saya bekerja di bidang ERP, dan agent meningkatkan produktivitas saya secara drastis
Bahkan jika biaya langganannya naik menjadi 500 dolar per bulan, tetap layak saya pakai
Saya takut prediksi bahwa AI akan mengurangi kebutuhan akan programmer benar-benar menjadi kenyataan
Saya sudah merasa AI lebih baik daripada saya dalam desain, code review, deteksi bug, dan perencanaan proyek
Saya merasa hanya berperan sebagai dirigen yang memimpin proses itu
Rasanya menakutkan, seperti melakukan pekerjaan yang dulu dikerjakan 20 orang sendirian
Hanya manusia yang benar-benar unggul dalam perencanaan jangka panjang dan pengambilan keputusan. Kita punya kekhawatiran, kebanggaan, dan emosi, dan itulah kekuatan sejati kita
AI hanyalah sekumpulan kata, tanpa cinta dan tanpa kesinambungan
Dengan kemampuan dasar saja, manusia menurut saya masih jauh lebih baik
Jika satu orang bisa melakukan pekerjaan 20 orang, mungkin 20 orang itu sejak awal memang tidak produktif
Kuncinya adalah terus menjalankan mesin pencuci piring, dan agent coding AI juga mirip mesin itu
Saya memasukkan prompt, memeriksa hasilnya, lalu merapikannya. Pada akhirnya, tangan manusia tetap dibutuhkan
Jika berkat AI satu orang bisa melakukan pekerjaan yang dulu dilakukan 20 orang, itu berarti peningkatan produktivitas dan menciptakan kekayaan yang lebih besar
Saya pikir demam LLM saat ini adalah efek Eliza dalam skala besar
Konsep terkait bisa dilihat di ELIZA effect dan buku Weizenbaum Computer Power and Human Reason
LLM tampaknya berevolusi untuk membuat orang berpengaruh (CEO, investor) terkesan
Ia tidak perlu benar-benar mencapai tingkat pakar; cukup terlihat “lumayan meyakinkan” agar diadopsi
Ancaman nyata bagi developer di Amerika bukan AI melainkan outsourcing
Saya seorang imigran dan bekerja di perusahaan keuangan di New York. 95% karyawannya berasal dari luar negeri, dan mayoritas perekrutan baru adalah pemegang visa H1B
Seperti yang sudah dikatakan Dijkstra 50 tahun lalu, pemrograman dengan bahasa manusia itu mustahil
Bahasa alami pada dasarnya ambigu dan tidak presisi
Orang yang mengklaim “prompt adalah source code baru” itu seperti orang yang membuat aplikasi dengan Excel
Saya membaca buku “Blood in the Machine” dan jadi mengetahui sejarah gerakan Luddite
Sebelum Revolusi Industri, pakaian dibuat oleh keluarga sebagai unit kerja, tetapi ketika mesin muncul, industri kerajinan tangan runtuh
Rasanya developer sekarang sedang menempuh jalan yang sama
Tetapi dalam pengembangan software, coding hanyalah sebagian dari keseluruhan proses
Seperti Toyota menggantikan para perajin, jika LLM mengotomatiskan sampai pemeliharaan, developer pun akan menghadapi nasib yang sama
Meski pakaian murah melimpah, desainer dan brand premium tetap bertahan. Software juga akan berubah seperti itu
Dulu alat WYSIWYG seperti Visual Basic dan Delphi juga disebut akan menggantikan programmer, tetapi ternyata tidak
AI juga mirip. Ia bisa menghasilkan kode yang rapuh dan tidak stabil, tetapi tetap perlu programmer sungguhan untuk menstabilkannya
Pada 1980-an, pemerintah dan industri juga menginvestasikan dana besar pada 4GL, tetapi akhirnya gagal
MITI Fourth Generation Project di Jepang juga serupa. “Krisis software” saat itu mirip dengan demam AI sekarang
Tulisan ini terasa seperti artikel pemujaan AI. Bagian promosi layanan pendidikan di akhir terutama memberi kesan itu
Meski begitu, produktivitas saya memang benar-benar meningkat, jadi pada akhirnya penurunan permintaan developer tampaknya tak terelakkan
Malah terasa seperti tulisan LLM yang menjahit berbagai opini menjadi satu
Jika biaya pengembangan turun setengah, lebih banyak bidang akan mulai memanfaatkan software
Lihat Jevons paradox
Seperti model Swiss cheese dalam keselamatan penerbangan, LLM juga bisa dilihat sebagai salah satu lapisan dalam pengembangan software
Gagasannya adalah bahwa meski tiap lapisan tidak sempurna, masing-masing saling menutupi kekurangan sehingga kualitas keseluruhan meningkat
Belum sampai pada tahap menerapkannya secara cerdas untuk verifikasi kode atau analisis pengujian
Namun saya yakin suatu saat nanti akan muncul use case yang benar-benar tepat
Untuk menjamin keamanan, pada akhirnya manusia tetap harus meninjau semuanya
Reliabilitas software penerbangan dan ketidakstabilan LLM bahkan tidak layak dibandingkan sama sekali