1 poin oleh GN⁺ 5 jam lalu | 1 komentar | Bagikan ke WhatsApp
  • Alat AI telah meningkatkan produktivitas pengembangan dan kapabilitas tim, tetapi kualitas dan stabilitas perangkat lunak tidak membaik setara, sehingga pengguna justru cenderung mengantisipasi pengalaman yang lebih buruk setelah pembaruan
  • Autentikasi FaceID berulang di aplikasi bank, Slack yang mencuri fokus, kegagalan pengajuan garansi LG, error infotainment mobil, dan bug sehari-hari lainnya mengganggu keuangan, pekerjaan, dukungan pelanggan, hingga aktivitas berkendara
  • Berbeda dari masa lalu yang lebih sederhana, abstraksi baru, framework frontend, dan kompleksitas infrastruktur terus menumpuk, dan ketika berpadu dengan standar pengalaman pengguna yang makin tinggi, sistem menjadi semakin rapuh
  • Bahkan dengan model terbaru dan anggaran token yang memadai, peningkatan stabilitas sulit menonjol dalam KPI atau materi presentasi, sehingga perusahaan memprioritaskan fitur baru dan redesign alih-alih perbaikan bug
  • Sementara perusahaan menumpuk utang AI, pengembang individu bisa menantang diri membuat perangkat lunak yang dulu sulit dibuat, dan reaksi terhadap macOS serta Windows berpotensi meluas menjadi perbaikan perangkat lunak sehari-hari

Pengalaman pengguna yang memburuk bahkan di era AI

  • Di tengah demam AI, orang-orang menghabiskan token secara berlebihan demi mengamankan nilai pasar sebelum semuanya terotomatisasi
    • Peningkatan performa model, gelombang PHK programmer, dan prediksi bahwa AI akan menulis 100% kode pada akhir tahun memperbesar kecemasan
  • Era agen menjanjikan produktivitas dan kualitas yang lebih tinggi
    • Alat baru sudah mengubah cara perangkat lunak dibuat dan digunakan
    • Output yang diminta eksekutif dari tim meningkat, dan rata-rata kapabilitas tim perangkat lunak juga mungkin telah naik ke level yang berbeda dari sebelumnya
  • Namun produk nyata sering kali bahkan gagal menjamin stabilitas dasar
    • Aplikasi bank meminta login FaceID rata-rata tiga kali sampai layar verifikasi 3D Secure muncul
    • Slack untuk macOS terbuka terlambat lalu merebut fokus dari Ghostty, sehingga perintah git pull yang sedang diketik di terminal terkirim ke obrolan grup
    • Pengajuan garansi kulkas LG gagal pada tahap submit terakhir dari formulir multi-langkah berisi banyak field, dan error-nya baru diketahui setelah memeriksa konsol JavaScript
    • Infotainment mobil reboot setiap kali berkendara setelah pembaruan, suara lampu sein menghilang atau radio terbuka alih-alih Google Maps, dan input layar juga terlambat 1–2 detik
    • Error pada mobil melampaui sekadar ketidaknyamanan UX dan bahkan menurunkan konsentrasi saat mengemudi
  • PM dari tim redesign OS mobil itu merayakan hasilnya di LinkedIn, tetapi pengguna nyata tetap harus terus bergulat dengan produknya
  • Tim-tim tersebut kemungkinan memakai model terbaru dan anggaran token yang longgar, dan LLM juga bisa menunjukkan performa unggul dalam perbaikan bug bila diberi kesempatan

Struktur ketika kompleksitas dan KPI menyingkirkan kualitas

  • Perangkat lunak selalu punya bug, dan nostalgia terhadap era macOS Snow Leopard yang dianggap sepenuhnya stabil juga bercampur dengan ingatan selektif
    • Jika perangkat lunak masa lalu terasa lebih baik, alasan utamanya adalah karena saat itu jauh lebih sederhana daripada sekarang
    • Setelah itu, abstraksi baru, framework frontend, dan lebih banyak kompleksitas infrastruktur terus ditambahkan
    • Standar pengalaman pengguna terus naik, tetapi seluruh sistem justru menjadi makin rapuh
  • Pembaruan macOS dan aplikasi yang bergantung padanya kini lebih menjadi sumber kekhawatiran daripada harapan, dan pengguna lebih dulu mengantisipasi kemungkinan versi baru lebih buruk daripada yang sebelumnya
  • Masalahnya bukan AI itu sendiri, melainkan untuk apa AI diprioritaskan
    • Infrastruktur GPU memberi kemampuan yang kuat kepada pengembang, tetapi tidak cukup digunakan untuk membuat perangkat lunak yang lebih baik
    • Perusahaan perangkat lunak sudah lama bergerak berpusat pada KPI, dan peningkatan stabilitas mungkin tidak tercermin langsung dalam angka
    • Rencana untuk menghentikan fitur baru dan redesign selama satu kuartal lalu hanya fokus pada perbaikan bug sulit menonjol dalam materi presentasi
  • Jika prioritas ini tidak berubah, penurunan kualitas perangkat lunak juga tak akan berhenti

Peluang yang terbuka bagi pengembang individu

  • Saat perusahaan secara kolektif terjebak dalam utang AI, pengembang individu mendapat peluang untuk membuat perangkat lunak yang dulu berada di luar kemampuan mereka
  • Ekspektasi terhadap Android Auto di mobil atau situs web LG memang rendah, tetapi frustrasi yang menumpuk terhadap kondisi saat ini bisa menjadi pendorong untuk memperbaiki perangkat lunak sehari-hari
    • Gerakan perlawanan terhadap kondisi macOS dan Windows saat ini sudah mulai muncul
    • Ada harapan bahwa arus ini bisa meluas ke seluruh stack perangkat lunak

1 komentar

 
GN⁺ 5 jam lalu
Pendapat di Hacker News
  • Dulu saya memperbarui dengan antusias, menantikan fitur baru gratis apa yang akan muncul, dan bahkan mencari tahu perubahan di Fedora Workstation 45. Namun sekarang, pembaruan untuk ponsel, TV, mobil, dan sistem operasi non-Linux lebih dulu menimbulkan rasa takut
    Saya khawatir akan ada lagi fitur yang tidak diinginkan dan koneksi eksternal yang ditambahkan. macOS pun sudah lama membuat saya kehilangan rasa antusias, misalnya dengan memaksa pengguna mencari batas transparan kecil untuk mengubah ukuran jendela
    Windows 11 tampak menggunakan dark pattern, seperti kembali menawarkan fitur konektivitas yang tidak diinginkan atau fitur AI setelah pembaruan keamanan

    • Sekarang saat melihat ikon “pembaruan tertunda”, yang pertama terpikir adalah apa lagi yang akan dirusak
      Selain video game, saya hampir membenci semua pembaruan software; bahkan untuk Dead By Daylight, satu-satunya penghiburan adalah inkompetensi Behaviour sebagai pengembangnya masih terbatas di dalam game itu sendiri
    • Software yang pembaruannya tidak menakutkan adalah free and open-source software (FOSS)
      Software proprietary tidak lagi dibuat demi pengguna, tetapi sebagian FOSS masih memprioritaskan pengguna
    • Pembaruan keamanan kumulatif Windows sendiri tidak memuat fitur sistem operasi baru, dan di edisi Pro, setidaknya dulu, pengguna bisa melewati pembaruan kualitas maupun fitur
      Sebagai gantinya, “connected experiences” didistribusikan lewat paket Store/AppX yang diperbarui otomatis, lalu saat reboot setelah patch, OOBE dijalankan untuk kembali menawarkan atau mengaktifkan fitur
      Secara teknis ini tidak digabungkan ke pembaruan keamanan, tetapi tetap saja dark pattern yang mengabaikan pengguna
  • Alat-alat semacam ini, ketika digabungkan dengan budaya Silicon Valley “bergerak cepat dan merusak sesuatu”, telah menaikkan ekspektasi manajemen terhadap output tim, dan menanggung ekspektasi itulah bagian yang paling menyiksa

  • Software bisa dibuat dengan cepat, tetapi untuk yakin bahwa ia benar, dibutuhkan waktu lebih lama
    Dengan pembuatan kode oleh AI, engineer berpengalaman mungkin bisa membuat sesuatu dalam satu jam yang dulu memakan waktu seminggu, tetapi itu tidak ikut memangkas waktu verifikasi kebenaran
    Banyak developer hanya mengambil keuntungan dari kecepatan generasi, tetapi mengabaikan biaya untuk memastikan stabilitas, performa, dan bebas cacat; meski begitu, penurunan kualitas software untuk publik sudah terjadi sejak sebelum AI

    • Dengan asumsi kualitas yang sama, klaim memangkas 1 minggu menjadi 1 jam mendekati skenario terbaik yang ekstrem; biasanya tampak lebih seperti pekerjaan dua atau tiga jam menjadi satu jam
      Dampaknya sangat bergantung pada pekerjaan, tidak berskala secara linear dalam proyek jangka panjang, dan kadang AI justru menciptakan keterlambatan yang lebih besar
      Jika kualitas diabaikan, kecepatannya bisa luar biasa, tetapi tanpa AI pun, jika tidak peduli kualitas, pekerjaan bisa jauh lebih cepat
    • Yang memberi keyakinan bukan lamanya masa pengembangan, melainkan lamanya software berjalan di dunia nyata
      Betapapun lamanya dikembangkan, hasil yang telah berjalan dengan baik selama 3 bulan di lapangan lebih dapat dipercaya, jadi rilis harus dilakukan lebih awal dan lebih sering
  • Kualitas software selalu ditentukan oleh insentif pasar, dan AI tidak otomatis memberi motivasi untuk membuat software yang tangguh
    Pasar memberi imbalan untuk memilih produk one-stop dari Microsoft, bukan aplikasi yang tidak rusak di setiap pembaruan atau kombinasi beberapa solusi independen
    Dulu itu tidak dilakukan hanya karena performa komputer dan pengetahuan belum mencukupi; kini industri seolah sudah menemukan syarat minimum agar software nyaris tetap berdiri, serta batas ketidaknyamanan kecil yang masih akan ditoleransi pengguna

    • Patut dipertanyakan apakah menahan semua orang terus berada di kondisi tepat sebelum mereka pergi atau dirugikan adalah titik keseimbangan yang layak bagi masyarakat
    • Saat kelengkapan dan akurasi mencapai kisaran 90–99%, kurva biaya melonjak secara asimtotik sehingga dari sudut pandang keuntungan tidak lagi layak diinvestasikan
      Software yang lengkap dan akurat hanya dibuat ketika risiko tanggung jawab hukum akibat cacat sangat besar
    • Saya penasaran di mana batas praktis ketika orang terus mengonsumsi sambil menerima penurunan kualitas, lalu akhirnya berhenti dan berkata, “cukup sampai di sini”
  • Wayland di KDE Plasma memiliki pengaturan global untuk mengendalikan jendela mana yang boleh mencuri fokus, dan fitur ini bekerja sangat baik
    Setiap kali memakai Mac kantor atau PC Windows, saya merindukan fitur ini; dokumentasinya bisa dilihat di bagian “Focus stealing prevention”: https://docs.kde.org/trunk_kf6/en/kwin/kcontrol/windowbehavi...

    • Cara pasti untuk menghindari software yang makin memburuk adalah beralih ke FOSS dan Linux/KDE
      Rasanya seperti Windows 7 yang terus perlahan membaik dan menambah tingkat kematangan yang berguna
      NixOS memang punya masalah lama ketika loading library bersifat n² sehingga startup program GUI menjadi lambat, tetapi bahkan di mini PC N100 semuanya berjalan dalam sekitar 1 detik, dan monitor 4K 240Hz HDR pun ditangani dengan mulus
      Yang paling penting, komputer hanya melakukan persis seperti yang diperintahkan
    • Bukannya macOS tidak punya pencegahan pencurian fokus, tetapi tampaknya para perancangnya tidak membayangkan situasi ketika peluncuran aplikasi tertunda
      Jika pengguna menunggu lalu memberi input lain, itu bisa menjadi sinyal bahwa ia tidak lagi ingin aplikasi tersebut mendapat fokus; namun desainnya tampak hanya mengasumsikan situasi optimistis bahwa aplikasi akan langsung terbuka
    • Hal paling menyiksa dalam teknologi masa kini adalah ketidakpastian ketika antarmuka berubah tepat saat pengguna hendak menekan sesuatu
      Kata rekomendasi di keyboard sentuh berubah sesaat sebelum jari menyentuhnya, dan di iOS Liquid Glass atau aplikasi web yang tidak stabil, tombol pun ikut bergerak
      Popup dan ajakan berinteraksi seperti “Apakah Anda menyukai aplikasi ini?” juga berlimpah
      Pencurian fokus di Windows sudah menjadi masalah pada 1995, dan perubahan mendadak yang berulang dalam hitungan 100 ms terus merangsang respons kaget otot serta sistem limbik, sampai tubuh bisa gemetar setelah beberapa jam
      Rangsangan seperti mesin slot dan metrik engagement yang mengejar jumlah klik harus dihentikan agar pengguna bisa fokus bekerja
    • Ini fitur yang bagus, tetapi saat ini ada bug yang membuat tingkat pencegahan di atas “Low” memblokir terlalu agresif: https://bugs.kde.org/show_bug.cgi?id=509990
    • Di Windows, Slack dimuat di latar belakang, lalu ketika siap hanya ikon taskbar yang berkedip, sehingga tidak merebut fokus aplikasi yang sedang digunakan sampai pengguna beralih sendiri
  • Saat pengguna sedang mengetik atau berinteraksi dengan UI, debounce pencurian fokus harus menjadi perilaku bawaan agar aplikasi lain sama sekali tidak bisa mengambil fokus
    Meski memakai popup, suara, atau ikon yang berkedip, aplikasi yang tidak terkait dengan pekerjaan saat ini tidak boleh mencegat input
    Ini bukan kasus yang perlu meminta pengecualian hanya karena koneksi sudah tersambung setelah menekan tombol connect seperti Cisco AnyConnect; sebagaimana kita tidak menoleransi aplikasi terminal yang merampas STDIN, GUI juga seharusnya tidak mengizinkannya

    • Hampir tidak ada situasi di mana pengguna ingin fokus direbut secara otomatis, tetapi sulit dipahami mengapa perilaku ini justru menjadi default dan sering terjadi
    • macOS juga bisa membuat aplikasi yang baru dibuka tetap berada di luar fokus, dan ini terjadi secara konsisten ketika laptop sudah lama tidak di-reboot
      Mungkin saja bug, tetapi jika pengguna mengklik jendela lain sebelum peluncuran aplikasi selesai, itu justru bisa menjadi fitur yang tepat
    • Karena event queue sistem operasi bekerja melintasi proses dan jendela, hal ini sulit di-debounce secara sederhana
      Seperti X11, fokus bisa saja tidak diberikan ke jendela baru, tetapi itu mungkin bukan perilaku yang diinginkan mayoritas pengguna
    • Popup, bunyi peringatan, dan ikon berkedip pun sudah cukup mengganggu, dan konsentrasi pengguna jauh lebih berharga daripada itu
  • Masalahnya sejak awal bukanlah tindakan menulis kode, melainkan proses membuat sesuatu secara cermat dan ketat
    Pengembangan perangkat lunak berkembang selama bertahun-tahun dengan mengakumulasi kebiasaan, pagar pengaman, dan struktur yang teruji, tetapi kini orang cukup mendeskripsikan masalah lalu menerima hasil yang dibuat terlalu cepat tanpa meninjaunya dengan benar, sampai tidak tahu lagi apa yang sebenarnya mereka deploy
    Seperti furnitur buatan tangan yang berubah menjadi produk pabrik sehingga tidak jelas siapa membuat bagian mana dan tidak lagi tahan lama, perangkat lunak juga telah mencapai tahap perakitan dan deployment tanpa pemahaman
    Kerapuhan akan terus menumpuk, tetapi ini juga bisa menjadi awal dari siklus untuk kembali memikirkan secara serius cara membuat sesuatu dengan baik

    • Insiden NPM left-pad sudah terjadi 10 tahun lalu, diskusi tentang serangan supply chain dan SBOM juga sudah lama, dan SourceForge bahkan pernah menyisipkan adware ke dalam file distribusi
      Jika tidak melakukan code review, menyerahkan kode kepada AI tidak secara khusus lebih buruk daripada menjalankan PIP atau NPM install tanpa peninjauan
  • Perangkat lunak terus memburuk karena premis bahwa coding sudah terselesaikan itu sendiri keliru

    • Coding mungkin saja sudah terselesaikan, tetapi sejak awal itu bukan bottleneck-nya
      Coding sudah lama murah dan perusahaan mengalihdayakannya ke tenaga kerja termurah, tetapi kemampuan mengidentifikasi masalah dan merancang solusi adalah hal yang berbeda
      Kode lebih merupakan liabilitas daripada aset, sehingga yang harus ditulis hanyalah seminimal mungkin untuk menyelesaikan masalah nyata, dan untuk itu tetap dibutuhkan engineer
      Setelah meninjau keluaran AI dan memperbaiki kesalahannya, waktunya kira-kira sama dengan menulis sendiri, sehingga tidak banyak membantu pekerjaan
    • Masalah sebenarnya bukanlah fakta bahwa coding sudah terselesaikan, melainkan keyakinan bahwa itu benar
  • Saya setuju bahwa perangkat lunak memburuk, tetapi AI tidak bisa menjadi satu-satunya kambing hitam
    Kegagalan streaming mengirimkan TV, error 500 di browser, dan blue screen pada layar sentuh publik sudah ada sejak sebelumnya
    Selain jumlah programmer yang meningkat secara eksponensial sehingga separuhnya hanya memiliki pengalaman beberapa tahun atau kurang, latihan algoritma single-thread saja tidak cukup untuk menangani distributed system, CQRS, event sourcing, auditability, dan idempotency
    Selain itu, ketika product owner (PO) non-teknis menguasai lifecycle dan membuat tim hanya mengimplementasikan happy path MVP, bug dan penulisan ulang di masa depan menjadi terjamin
    Bahasa memang berubah dari C++ ke Java, JavaScript, dan Python sehingga lebih ramah pemula, tetapi pekerjaannya menjadi lebih kompleks: distributed system antarbisnis, operasi 24 jam, jutaan pengguna, keamanan, machine learning, dan lainnya

    • Begitu MVP selesai, ia secara ajaib dianggap sebagai produk rilis, dan saat tim mulai memahami cara memperbaikinya, manajemen kembali mengacak organisasi
      Sementara promosi eksekutif dan penggabungan departemen dikemas sebagai “kabar menarik”, kesinambungan perbaikan produk menghilang
    • Product-manager-centrism dan obsesi terhadap MVP adalah penyebab besar penurunan kualitas
      Agile tidak perlu diterapkan secara harfiah dan bodoh; infrastruktur maupun aplikasi pengguna tetap bisa merencanakan fitur yang dibutuhkan 3, 6, atau 12 bulan ke depan berdasarkan produk sebelumnya, pesaing, dan pengalaman tim
      Seperti saat mengikuti GPS, kita tetap memeriksa keseluruhan rute dan tiga langkah berikutnya; Agile bukan berarti baru mulai memikirkan langkah berikutnya setelah satu langkah selesai
    • Ketika pemrograman dibuat cukup sederhana agar siapa pun bisa melakukannya, pada akhirnya memang sembarang orang ikut melakukannya
    • Uncle Bob kini juga berisiko menjadi bagian dari masalah karena sepenuhnya menerima AI
    • AI mungkin bukan penyebab penurunan kualitas, tetapi ia sedang mempercepat kemerosotan
      Jika mesin membuat tempat tidur 150% lebih cepat tetapi tingkat cacatnya 70%, maka jumlah produk cacat meningkat, keahlian pertukangan menghilang, dan motivasi serta kegunaan para perajin menurun sekaligus
      Bahkan jika suatu hari mesinnya membaik, selama itu banyak orang harus tidur di tempat tidur yang buruk
  • LLM tidak bisa membaca dan memahami seluruh codebase sekaligus lalu mengambil keputusan berdasarkan pemahaman itu
    Bagian sulit dari pemrograman bukan satu fungsi atau satu class, melainkan cara semuanya saling berinteraksi di dalam sistem besar, dan skala perangkat lunak pada dasarnya lebih besar daripada context window LLM
    Meski context window membesar, itu bukan berarti AI mengakumulasi pemahaman seperti manusia, jadi tidak bisa dikatakan bahwa AI telah menyelesaikan coding
    Ia berguna untuk proyek baru, tetapi membuat perangkat lunak baru dengan cepat sejak awal memang selalu lebih mudah daripada bekerja di atas kode lama