8 poin oleh GN⁺ 3 jam lalu | Belum ada komentar. | Bagikan ke WhatsApp
  • Prinsip "Choose Boring Technology" yang berfokus pada stack teknologi yang dapat diverifikasi menjadi semakin penting di era alat coding AI
  • Perusahaan harus menggunakan "innovation tokens" yang terbatas secara strategis pada teknologi yang sudah terbukti andal
  • Alat coding AI modern dapat menghasilkan kode yang tampak meyakinkan untuk hampir semua stack teknologi, tetapi ketika dua atau lebih teknologi yang tidak dipahami pengguna digabungkan, kesalahan menjadi mustahil diverifikasi
  • Pada stack teknologi yang sudah benar-benar dipahami, alat coding AI berfungsi sebagai force multiplier (alat pengganda kemampuan), tetapi pada teknologi yang tidak dikenal, alat ini merosot menjadi sekadar sarana ketergantungan
  • Semakin tinggi kualitas kode yang dihasilkan AI, semakin sulit menemukan masalah, sehingga nilai dari pemahaman mendalam terhadap teknologi menjadi makin besar

Penegasan ulang prinsip Choose Boring Technology

  • Pandangan yang sejalan dengan tulisan Dan McKinley "Choose Boring Technology" 10 tahun lalu tetap tidak berubah hingga sekarang
    • Saat memulai proyek baru, pertanyaan pertama adalah "apakah ini alasan untuk mempelajari sesuatu yang baru, atau untuk menyelesaikan masalah?"
    • Jika tujuannya belajar hal baru, batasi elemen yang belum dikenal menjadi satu saja; jika tujuannya menyelesaikan masalah, tetap gunakan teknologi yang sudah dikenal
  • Dengan hadirnya LLM dan alat coding AI agentic, prinsip ini menjadi jauh lebih critical

Argumen inti McKinley

  • Perusahaan memiliki "innovation tokens" yang terbatas, dan harus menggunakannya secara strategis pada teknologi yang mapan dan dipahami dengan baik, bukan pada teknologi menarik yang belum terbukti
  • Teknologi yang membosankan memiliki failure modes (mode kegagalan) yang sudah dikenal, fungsionalitas yang dipahami dengan baik, dan keandalan operasional yang telah terbukti
    • Saat terjadi gangguan pada pukul 3 pagi, lebih baik men-debug teknologi yang punya jawaban di Stack Overflow daripada merintis wilayah yang sama sekali tidak dikenal
  • Prinsip ini benar pada 2015 dan tetap benar hari ini

Alat coding AI sebagai variabel baru

  • Alat coding AI modern menghasilkan kode yang terlihat profesional untuk hampir semua stack teknologi yang bisa dibayangkan
    • Jika meminta Claude atau Copilot untuk membuat microservices berbasis Kubernetes, GraphQL federation, atau implementasi framework JavaScript terbaru, mereka akan mengembalikan kode yang mengikuti aturan dan bahkan bisa dijalankan
  • Jika seseorang memakai dua atau lebih teknologi yang tidak ia pahami, praktis tidak ada cara untuk memverifikasi apakah AI sedang memberikan hasil yang salah
    • Meski kemampuannya mengesankan, LLM tetap bisa hallucinate (berhalusinasi) pada detail teknis
  • Ada kasus ketika engineer menerima begitu saja kode bermasalah yang dihasilkan AI
    • Menggunakan API deprecated, menerapkan anti-pattern keamanan, atau menimbulkan masalah performa halus yang baru terlihat di beban produksi
    • Kodenya terlihat benar, mengikuti konvensi penamaan, dan memiliki penanganan error yang layak, tetapi tetap salah dengan cara yang hanya bisa ditangkap oleh orang yang benar-benar paham teknologinya

Teknologi yang tidak dikenal + kode AI = perkalian ketidakpastian

  • Menggabungkan teknologi yang belum familiar dengan kode buatan AI bukan menambah ketidakpastian, melainkan mengalikannya
    • Tidak tahu apakah pilihan framework-nya tepat
    • Tidak tahu apakah implementasi AI mengikuti best practice
    • Tidak tahu bagian mana dari kode yang dihasilkan merupakan boilerplate dan mana yang merupakan logika bisnis inti
    • Tidak tahu failure mode apa yang harus diawasi
  • Ini melampaui sekadar cargo-culting, hingga ke tingkat masalah "cargo-culting times 2,356"

Titik sinergi antara teknologi yang membosankan dan AI

  • Saat memahami stack dasarnya, alat coding AI menjadi sangat kuat
    • Karena cukup paham Rails, penulis bisa menangkap saat Claude memberi saran yang meragukan (dengan bantuan context7)
    • Karena memahami karakteristik JavaScript, saran dari Copilot bisa di-fact-check
  • AI menjadi force multiplier pada teknologi yang sudah dipahami, tetapi berubah menjadi crutch (penopang ketergantungan) pada teknologi yang tidak dikenal

Panduan praktis di era AI

  • Saat mengevaluasi teknologi baru, tanyakan dulu: "jika AI menghasilkan kode implementasi untuk teknologi ini, apakah saya bisa meninjaunya dengan layak?"
    • Jika jawabannya "tidak", maka teknologi itu seharusnya tidak dipakai pada bagian yang mission-critical
  • Jika memutuskan untuk mempelajari hal baru (dan innovation token hanya satu), luangkan waktu sungguhan untuk memahaminya cukup dalam agar bisa melakukan fact-check atas saran AI
    • Jangan sekadar copy-paste lalu berharap semuanya berjalan baik
  • Tahan godaan untuk mengambil beberapa teknologi baru sekaligus hanya karena ada alat AI
    • AI membuat kita merasa bisa menangani bahasa baru, framework baru, dan infrastruktur baru sekaligus, padahal tidak satu pun yang bisa diverifikasi dengan benar

Risiko yang meningkat di era AI dan kesimpulan

  • Gagasan asli "choose boring technology" adalah mengurangi kompleksitas operasional dan beban kognitif, dan kekhawatiran itu masih tetap valid
  • Di era AI ada risiko tambahan: false confidence (rasa percaya diri palsu) dari AI yang mampu menghasilkan kode yang tampak profesional untuk stack apa pun
  • Justru karena kualitas kode buatan AI tinggi, tingkat kesulitan menemukan masalah menjadi lebih besar
    • Dulu kode buruk terlihat buruk; sekarang, seseorang harus cukup memahami domainnya untuk bisa menyadari masalah yang halus
  • Saat menyelesaikan masalah, gunakan yang sudah diketahui; saat belajar hal baru, fokuslah benar-benar pada proses belajarnya; dan jangan menyamakan kode buatan AI dengan pemahaman
  • Teknologi paling membosankan dalam sebuah stack mungkin justru teknologi yang Anda pahami cukup baik untuk menyadari saat AI salah
    • Di dunia tempat AI dengan percaya diri menghasilkan ribuan baris kode untuk teknologi yang belum pernah Anda pakai, nilai dari pemahaman itu lebih besar daripada sebelumnya

Belum ada komentar.

Belum ada komentar.