Pembangun Mendapati Alat Pengekodan AI Mencipta Kelemahan Keselamatan dan Mengurangkan Pemahaman Kod

Pasukan Komuniti BigGo
Pembangun Mendapati Alat Pengekodan AI Mencipta Kelemahan Keselamatan dan Mengurangkan Pemahaman Kod

Eksperimen seorang pembangun dengan alat pengekodan berkuasa AI telah mencetuskan perdebatan sengit tentang sama ada teknologi ini benar-benar meningkatkan produktiviti atau mencipta masalah baharu. Pengalaman yang dikongsi dalam catatan blog terperinci ini mendedahkan bagaimana kod yang dijana AI boleh memperkenalkan kelemahan keselamatan yang serius sambil menjadikan pembangun kurang biasa dengan pangkalan kod mereka sendiri.

Pembangun tersebut pada mulanya menolak untuk menggunakan alat AI tetapi akhirnya mencubanya di bawah tekanan tempat kerja. Selepas menjana 200 baris kod pemprosesan imej dalam masa hanya 30 minit—tugas yang biasanya mengambil masa lebih lama—keputusan awal kelihatan mengagumkan. Walau bagaimanapun, apabila alat AI yang sama diminta untuk menyemak kodnya sendiri untuk isu keselamatan, ia menemui beberapa kelemahan serius termasuk serangan directory traversal dan potensi penimpaan fail sistem.

Isu Keselamatan Biasa Alat Pengekodan AI:

  • Serangan traversal direktori
  • Tiada had saiz fail
  • Kelemahan penimpaan fail sistem
  • Kekurangan pengesahan input
  • Kawalan akses yang tidak mencukupi

Masalah Titik Buta Keselamatan

Penemuan yang paling membimbangkan ialah AI tersebut mengetahui tentang risiko keselamatan ini sejak awal tetapi tidak memasukkan perlindungan dalam kod asal. Ini mencipta situasi berbahaya di mana pembangun tanpa pengetahuan keselamatan yang mendalam mungkin menggunakan kod yang terdedah tanpa menyedarinya. Perbincangan komuniti mendedahkan ini bukan kejadian terpencil—ramai pembangun melaporkan pengalaman serupa di mana alat AI menghasilkan kod yang berfungsi tetapi cacat.

Apabila cuba membetulkan isu keselamatan, pembangun menghadapi masalah lain: kerana mereka tidak menulis kod itu sendiri, mereka kekurangan model mental yang diperlukan untuk membuat perubahan dengan cekap. Ini membawa kepada kitaran meminta AI membuat lebih banyak pembetulan, seterusnya menjauhkan mereka daripada memahami pangkalan kod mereka sendiri.

Paradoks Produktiviti

Respons komuniti menyerlahkan perpecahan tajam dalam pengalaman dengan alat pengekodan AI. Sesetengah pembangun melaporkan peningkatan produktiviti yang ketara, manakala yang lain menerangkan masa yang terbuang untuk menyahpepijat masalah yang dijana AI. Kajian terbaru yang disebut dalam perbincangan mendapati bahawa pembangun berpengalaman sebenarnya menjadi 19% kurang produktif apabila menggunakan alat AI, bercanggah dengan banyak dakwaan produktiviti yang dilaporkan sendiri.

LLM telah memberikan saya kod yang teruk, menjadikan saya jahil tentang pangkalan kod saya sendiri, dan terlalu malas untuk cuba membetulkannya sendiri. Dan pada masa yang sama, keseluruhan pengalaman terasa lancar, tanpa geseran, memberi kuasa.

Perdebatan sering berpusat pada kejuruteraan gesaan—kemahiran merangka arahan yang lebih baik untuk alat AI. Penyokong berhujah bahawa keputusan yang lemah berpunca daripada gesaan yang tidak mencukupi, manakala pengkritik menunjukkan bahawa keperluan ini menjadikan alat tersebut kurang boleh dipercayai daripada yang diiklankan.

Keputusan Kajian Produktiviti Pembangun:

  • Pembangun berpengalaman: Penurunan produktiviti sebanyak 19% dengan alat AI
  • Pembangun junior: Melaporkan peningkatan produktiviti dalam beberapa kajian
  • Produktiviti yang dilaporkan sendiri berbanding yang diukur sering menunjukkan keputusan yang bercanggah

Kebimbangan Kemerosotan Kemahiran

Ramai pembangun berpengalaman bimbang bahawa terlalu bergantung pada alat AI boleh menghakis kemahiran pengaturcaraan asas mereka. Pengarang asal menyimpulkan bahawa risiko sebenar bukanlah AI menggantikan pembangun, tetapi AI menjadikan pembangun begitu bergantung sehingga mereka menjadi kurang berkebolehan menyelesaikan masalah secara bebas.

Walau bagaimanapun, sesetengah ahli komuniti berhujah untuk pendekatan seimbang, menggunakan AI sebagai pengganda produktiviti sambil mengekalkan kemahiran teras melalui latihan yang disengajakan. Mereka mencadangkan untuk menganggap alat AI seperti autocomplete canggih dan bukannya penyelesai masalah yang bijak.

Perbincangan mencerminkan kebimbangan yang lebih luas tentang bagaimana alat AI mungkin mengubah sifat kerja pembangunan perisian. Walaupun alat ini boleh mempercepatkan tugas tertentu, komuniti kekal berpecah sama ada ia mewakili kemajuan tulen atau mencipta bentuk hutang teknikal baharu yang perlu ditangani kemudian.

Rujukan: I tried coding with AI, I became lazy and stupid