스크립트
00:00:00Apakah Anda masih membaca kodenya atau haruskah Anda masih membaca kodenya?
00:00:04Itu adalah sebuah pertanyaan, diskusi yang muncul di TechX selama akhir pekan,
00:00:09setidaknya di lingkaran saya.
00:00:12Dan itu pertanyaan yang menarik, jelas juga pertanyaan yang memancing emosi,
00:00:15tapi bukan itu yang akan dibahas di episode ini.
00:00:18Dan saya akan menjawab pertanyaannya.
00:00:20Bagi saya, ini bukan sekadar ya atau tidak.
00:00:22Dan saya juga ingin mendengar pendapat Anda.
00:00:24Saya benar-benar ingin.
00:00:25Jadi, tolong bagikan pendapat Anda juga.
00:00:26Ini tidak sederhana.
00:00:27Dan saya akan kembali ke pertanyaan ini nanti.
00:00:29Tapi saya pikir ada pertanyaan lain yang harus didahulukan.
00:00:32Apakah Anda masih menulis kodenya?
00:00:35Karena jelas, jika Anda masih menulis semua kode Anda, Anda akan membacanya, kan?
00:00:40Jadi ya, Anda tidak perlu membacanya karena Anda yang menulisnya.
00:00:43Tapi bagi banyak pengembang, termasuk saya sendiri, kita mungkin tidak menulis semua kode kita.
00:00:49Dan Anda jelas bisa berada di mana saja dalam rentang 0 hingga 100%
00:00:55mengenai pertanyaan itu, seberapa banyak kode yang masih Anda tulis.
00:00:58Saya mungkin sudah hampir 100% sekarang.
00:01:03Dan itu jelas banyak berubah selama enam, delapan bulan terakhir,
00:01:08seperti yang terjadi pada banyak pengembang, saya yakin, dengan model AI yang semakin baik.
00:01:14Tapi yang terpenting, model-model itu menjadi lebih baik dalam mengikuti instruksi,
00:01:18disetel dengan lebih baik untuk mengikuti instruksi dengan lebih baik,
00:01:20dan kemudian alat-alat pendukungnya seperti Claude Code dan sebagainya.
00:01:22Jadi itu berubah bagi saya.
00:01:24Dan saya sudah membicarakan hal itu di episode lain,
00:01:26bagaimana hal itu juga menghilangkan banyak kesenangan dari kerajinan tersebut.
00:01:30Dan saya mencoba menemukan kesenangan baru dalam membangun sesuatu
00:01:33dan bukan pada bagian penulisan kode, yang telah diambil dari saya.
00:01:37Tapi saya membicarakan hal itu di episode lain, seperti yang disebutkan.
00:01:39Jadi, bukan itu yang dibahas di episode ini.
00:01:42Tapi ini, tentu saja, pertanyaan penting yang pertama.
00:01:45Apakah Anda masih menulis kodenya?
00:01:47Dan tentu saja jawaban itu mungkin ya bagi Anda.
00:01:50Anda mungkin lebih dekat ke 0% di sini atau di mana saja dalam rentang itu.
00:01:55Dan itu benar-benar tidak masalah.
00:01:57Saya pikir terlalu dini untuk mengetahui apa posisi yang tepat pada skala itu
00:02:02karena kita masih di awal seluruh evolusi AI dalam hal pengodean.
00:02:07Dan kita harus melihat efek jangka panjang dari lebih banyak perangkat lunak yang sepenuhnya dibuat oleh AI,
00:02:12seperti yang pasti terjadi, di mana pun Anda berada.
00:02:16Jadi itu adalah pertanyaan penting yang pertama.
00:02:18Dan itu berhubungan dengan yang lainnya.
00:02:19Tapi bagaimana dengan yang satunya lagi sekarang?
00:02:21Apakah Anda masih membaca kodenya?
00:02:22Nah, sekali lagi, ini kompleks karena kita bisa membaginya.
00:02:26Kita punya membaca kode.
00:02:29Dan saya akan mengatakan kita punya peduli tentang kode tersebut.
00:02:33Dan bagi saya, itu tidak sama.
00:02:36Dan Anda juga bisa membaca tapi tidak peduli, yang agak bodoh.
00:02:40Dan saya akan kembali ke sana.
00:02:41Atau tidak membaca dan peduli, yang mungkin saja terjadi, menurut saya.
00:02:45Dan itu memiliki implikasi.
00:02:47Jadi seperti yang disebutkan, Anda mungkin tidak membaca dan tidak peduli.
00:02:51Anda mungkin membaca dan tidak peduli.
00:02:55Anda mungkin tidak membaca tapi peduli.
00:02:58Dan, tentu saja, Anda mungkin membaca dan peduli.
00:03:02Ini adalah empat kombinasi jika Anda memiliki pemisahan membaca dan peduli ini.
00:03:08Nah, jika Anda tidak membaca dan Anda tidak peduli, itu adalah definisi saya tentang wipe coding.
00:03:14Nah, Anda mungkin memiliki definisi yang berbeda dan itu tidak masalah.
00:03:17Tapi ini adalah definisi saya tentang wipe coding.
00:03:20Tidak membaca, tidak peduli, itu adalah wipe coding.
00:03:22Nah, itu tidak berarti Anda tidak peduli dengan produknya.
00:03:25Anda mungkin peduli.
00:03:26Karena jika Anda tidak peduli dengan produknya, mengapa Anda melakukan sesuatu sejak awal, kan?
00:03:31Tapi Anda mungkin hanya peduli dengan produknya.
00:03:33Jika berhasil, Anda senang.
00:03:34Jika ada masalah, Anda hanya memberi tahu AI, hei, bla, bla, bla, ini tidak berfungsi.
00:03:38Tolong perbaiki.
00:03:39Dan Anda tidak peduli dengan kodenya dan Anda tidak membaca kodenya.
00:03:42Itu adalah definisi saya tentang wipe coding.
00:03:44Nah, jika Anda membaca kodenya tapi Anda tidak peduli, itu agak aneh.
00:03:49Saya rasa Anda hanya membuang-buang waktu dalam kasus itu.
00:03:52Jika Anda membaca tapi tidak peduli, Anda mungkin hanya berada dalam pekerjaan di mana Anda dibayar untuk melakukan sesuatu.
00:03:57Jadi, Anda menghabiskan waktu Anda menganalisis kode yang Anda tidak terlalu pedulikan.
00:04:00Saya tidak tahu.
00:04:01Bukan fokus saya di sini.
00:04:03Tapi tentu saja, Anda bisa memiliki kombinasi itu.
00:04:05Nah, ini kombinasi yang lebih menarik.
00:04:08Tidak membaca dan peduli serta membaca dan peduli.
00:04:11Nah, mari kita mulai dengan membaca dan peduli.
00:04:13Saya rasa itu yang jelas.
00:04:15Saya rasa Anda bisa menyebut ini rekayasa perangkat lunak bertenaga AI atau semacamnya.
00:04:20Karena Anda mungkin tidak menulis kodenya lagi atau tidak semuanya.
00:04:24Tapi Anda peduli tentang itu sebagai insinyur perangkat lunak.
00:04:26Anda mungkin bertanggung jawab atasnya.
00:04:28Dan Anda membacanya karena karena Anda peduli tentang itu, karena Anda mungkin bertanggung jawab atasnya,
00:04:33Anda, yah, Anda ingin melihat apa yang terjadi di sana, kan?
00:04:35Masuk akal.
00:04:36Jadi, itu yang jelas.
00:04:37Dan saya akan kembali ke sana.
00:04:38Tapi bagaimana dengan tidak membaca dan peduli?
00:04:40Apakah ini mungkin?
00:04:42Dan saya akan katakan, ya, itu mungkin.
00:04:43Itu mungkin, tapi sulit.
00:04:46Dan kita bisa berdebat jika itu adalah masa depan, mungkin.
00:04:50Dan jawaban membosankan pertama.
00:04:52Saya tidak tahu, jelas.
00:04:53Saya tidak tahu apakah itu masa depannya.
00:04:56Sama seperti empat tahun yang lalu, saya tidak akan membayangkan bahwa suatu hari kita tidak akan menulis kodenya
00:05:02lagi.
00:05:03Saya mungkin tidak membayangkan bahwa suatu hari kita tidak membaca kodenya sama sekali.
00:05:09Pada kenyataannya, kita mungkin akan berakhir pada skala seperti ini.
00:05:12Dan saya akan berpendapat kita sudah berada pada skala seperti ini.
00:05:15Tapi sekali lagi, saya akan kembali ke sini.
00:05:16Jadi, tidak membaca dan peduli.
00:05:18Apakah ini mungkin?
00:05:20Seperti yang saya sebutkan, saya akan katakan, ya, mungkin saja.
00:05:24Tapi ini adalah cara berpikir yang sama sekali berbeda tentang perangkat lunak.
00:05:27Itu bergantung pada Anda mempercayai AI, tidak hanya ketika ia menulis kodenya, tetapi Anda
00:05:34mungkin juga menggunakan AI untuk meninjau kodenya, untuk memindai atau menganalisis basis kode Anda, untuk
00:05:40mengaudit basis kode Anda.
00:05:41Dan Anda bisa, tentu saja, melakukan itu.
00:05:43Anda bisa menggunakan cloud code dengan Fable 5 atau apa pun, atau Codex atau Pi, agen favorit saya, dengan model AI favorit Anda untuk mengerjakan kodenya.
00:05:55Dan kemudian Anda bisa menggunakan agen yang sama dalam sesi baru dengan model yang sama atau berbeda, atau Anda menggunakan agen yang berbeda dalam sesi yang berbeda dengan model yang berbeda.
00:06:03Kombinasi apa pun dari itu, Anda bisa menggunakannya untuk meninjau kodenya, untuk meninjau perubahan terbaru, untuk melakukan audit rutin pada seluruh basis kode.
00:06:12Anda bisa melakukan hal-hal seperti itu.
00:06:13Anda bisa dan Anda mungkin juga harus menghabiskan banyak waktu untuk merencanakan dan membaca rencana-rencana tersebut, membaca spesifikasi tersebut.
00:06:22Saya pikir tidak membaca kodenya, jika dilakukan dengan benar, jika itu adalah masa depannya, tidak boleh menyiratkan bahwa Anda tidak membaca apa pun.
00:06:32Anda harus benar-benar menghabiskan lebih banyak waktu untuk membuat rencana yang baik bersama AI, memastikan bahwa Anda mengerjakan hal yang benar dengan detail implementasi yang benar, jika Anda ingin mengatakannya seperti ini.
00:06:47Jadi dengan cara yang benar, Anda tidak hanya peduli dengan produknya, Anda peduli dengan arsitekturnya, tentang blok pembangunnya.
00:06:54Dan Anda bisa, tentu saja, memastikan atau tidak memastikan, tapi meningkatkan peluang mendapatkan hasil yang baik di sana jika Anda menghabiskan lebih banyak waktu pada spesifikasi, pada rencana, dan Anda kemudian membiarkan AI mengimplementasikannya.
00:07:08Dan Anda kemudian melakukan tinjauan kode di mana Anda memberikan agen peninjau juga akses ke spesifikasi atau rencana yang harus diimplementasikan oleh AI tersebut.
00:07:15Nah, tetap saja, tentu saja, satu masalah yang akan Anda miliki di sini, dan itulah mengapa saya tidak berada di kereta saya tidak membaca apa pun, bahwa Anda tidak tahu dengan pasti apa yang terjadi di basis kode Anda.
00:07:29Anda tidak bisa. Anda hanya tidak bisa tahu dengan pasti jika Anda tidak membacanya.
00:07:33Anda bisa, tentu saja, mencoba yang terbaik untuk membuat AI menghasilkan kode yang Anda inginkan dan menggunakan AI untuk meninjau, tapi Anda tidak memiliki kepastian 100% jika Anda tidak melihatnya.
00:07:44Maksud saya, itu bukan hanya untuk pengodean, jelas.
00:07:46Itu benar untuk apa pun dalam hidup.
00:07:48Jika Anda memiliki AI atau pengacara, kita bahkan tidak perlu berbicara tentang AI, menyusun kontrak, dan Anda tidak membacanya sama sekali, dan Anda hanya menandatanganinya, Anda tidak memiliki kepastian apa yang ada di dalamnya.
00:08:00Dan Anda mungkin atau mungkin tidak melakukan itu.
00:08:03Saya pribadi tidak melakukan itu.
00:08:05Saya pribadi masih membaca kode, tapi mungkin itu bagian yang menarik sekarang.
00:08:13Sekali lagi, pada skala, saya tidak membaca 100% kodenya.
00:08:19Saya kesulitan memberi tahu Anda di mana tepatnya saya berada pada skala itu.
00:08:24Itu mungkin di tengah, karena saya meninjau kodenya, semua kode yang diberikan AI kepada saya.
00:08:31Tapi, tentu saja, itu tidak berarti saya harus membaca setiap baris.
00:08:36Itu berarti saya melompat ke bagian penting terlebih dahulu, yang bisa saya identifikasi sebagai insinyur perangkat lunak.
00:08:42Saya tahu bagian blok pembangun mana yang penting atau bagian mana dari pull request atau commit yang dibuat yang penting.
00:08:51Saya terjun ke bagian itu.
00:08:53Saya menganalisis bagian itu.
00:08:54Saya terjun ke bagian-bagian kritis.
00:08:56Kemudian saya terjun ke beberapa bagian di mana saya tahu AI cenderung mengacaukan.
00:08:59Dan begitulah cara saya meninjau.
00:09:01Dan saya mungkin hanya memindai atau sekilas melihat bagian-bagian yang kurang penting.
00:09:07Maksud saya, misalnya, ketika AI menulis kode untuk membaca beberapa variabel lingkungan dan untuk mengurainya,
00:09:16saya mungkin tidak membaca setiap baris di sana.
00:09:18Tapi saya hanya ingin melihat pendekatan umumnya, terutama karena AI, misalnya, cenderung menulis kode yang terlalu defensif di mana ia memiliki fallback untuk fallback untuk fallback.
00:09:27Dan saya ingin menghindari itu.
00:09:28Jadi saya masih melakukan pemeriksaan di sana, tapi saya tidak peduli dengan semua detail kecil tentang bagaimana ia mengurai bilangan bulat atau apa pun seperti itu, misalnya.
00:09:36Jadi di situlah saya akan menempatkan diri saya saat ini.
00:09:42Tapi sama seperti menulis kodenya, saya tidak tahu bagaimana ini akan berubah, bagaimana saya mungkin bergerak lebih dekat ke tidak membaca 100%.
00:09:50Nah, saya tidak tahu apakah saya akan pernah mencapai 100%.
00:09:54Saya tidak bisa melihat ke masa depan.
00:09:55Dan saya rasa jika kita mencapai 100% untuk penulisan dan pembacaan, kita benar-benar harus melihat apa artinya bagi kita sebagai insinyur perangkat lunak.
00:10:06Mungkin masih sangat penting untuk memberi AI tugas yang tepat untuk mengetahui tentang sistem penandatanganan dan tentang arsitekturnya.
00:10:15Dan itu adalah tebakan saya bahwa ke arah inilah kita bergerak.
00:10:18Tapi jelas, itu sulit untuk dikatakan.
00:10:21Pertanyaannya adalah jika pada suatu saat kita tidak akan menulis kode apa pun dan kita tidak akan membaca kode apa pun jika Anda masih perlu tahu cara membuat kode, kan?
00:10:31Jika masih layak untuk bisa membaca atau menulis kode, kan?
00:10:35Jika itu masih penting.
00:10:36Dan saat ini, itu jelas masih penting bagi saya.
00:10:39Itu jelas masih penting juga karena pertanyaannya adalah, apa yang Anda pedulikan, kan?
00:10:44Itu bagian lainnya, peduli.
00:10:46Membaca adalah satu bagian, tapi kita membaca karena kita peduli dan kita mungkin peduli tanpa membaca, seperti yang saya perjelas.
00:10:53Tapi apa arti peduli itu?
00:10:55Dan saya akan mengatakan peduli jelas bisa berarti banyak hal.
00:11:03Itu mungkin berarti sesuatu seperti gaya kode.
00:11:06Anda mungkin peduli dengan gaya kode, bagaimana fungsi dibuat, pendekatan mana yang digunakan di sana.
00:11:13Anda mungkin bahkan peduli dengan keputusan yang lebih besar, seperti jika Anda menginginkan pemrograman berorientasi objek, pemrograman fungsional, hal-hal seperti itu.
00:11:21Anda mungkin peduli dengan keterbacaan program Anda.
00:11:26Anda mungkin peduli dengan keamanan dan tentang hal-hal seperti keandalan.
00:11:33Dan ada banyak dimensi lain yang bisa kita pikirkan.
00:11:35Ada beberapa dimensi di sini, yang menurut saya kurang penting sekarang.
00:11:39Gaya kode, keterbacaan, terutama jika Anda tidak membaca, tidak terlalu penting.
00:11:44Itu hanya penting dalam kasus itu, maksud saya, bahwa AI mampu membaca dan memahami kodenya.
00:11:50Dan itu kemungkinan besar akan baik-baik saja dengan itu.
00:11:53Nah, gaya kode masih bisa penting juga untuk alasan efisiensi token.
00:11:58Jika Anda memiliki basis kode di mana Anda hanya memiliki banyak pemeriksaan yang tidak perlu, yang, seperti yang disebutkan, adalah sesuatu yang cenderung dilakukan AI sekarang,
00:12:04atau beberapa model AI cenderung melakukannya, itu juga akan menjadi token ekstra untuk dibakar saat AI menganalisis kode itu.
00:12:11Jadi itu masih ada di sini, tapi mungkin tidak sepenting dulu.
00:12:18Maksud saya, kita semua punya preferensi kita sendiri mengenai gaya kode di masa lalu.
00:12:22Dan bagi saya, itu pasti berubah.
00:12:24Itu pasti berubah.
00:12:26Nah, jelas, hal-hal seperti keamanan, keandalan, juga kemampuan pengujian, itu masih sangat penting.
00:12:34Jelas, itu adalah bagian, jika ada, yang penting dalam perangkat lunak.
00:12:39Anda ingin ia melakukan apa yang seharusnya dilakukan.
00:12:41Anda ingin ia melakukannya dengan aman.
00:12:43Anda mungkin peduli dengan kinerja.
00:12:46Anda harus peduli dengan kinerja.
00:12:47Itu harus andal.
00:12:48Itu tidak boleh rusak secara acak pada pengguna Anda.
00:12:51Dan, tentu saja, ini semua adalah hal yang kita lihat dalam perangkat lunak modern.
00:12:54Perangkat lunak modern sering kali tidak andal, mungkin tidak aman.
00:12:58Dan keamanan 100%, tentu saja, tidak dapat dicapai, terutama dengan model AI ini yang cukup baik dalam,
00:13:04menemukan kerentanan keamanan dan kita tidak serta merta memiliki akses ke model terbaru yang dapat melakukan itu.
00:13:10Tapi itu diskusi yang berbeda.
00:13:11Tapi Anda harus tetap peduli tentang itu.
00:13:13Itu poin saya.
00:13:14Anda harus mencoba membangun perangkat lunak yang aman, andal, dan berkinerja tinggi, menurut pendapat saya.
00:13:20Dan sebagai insinyur perangkat lunak, itu, tentu saja, juga berarti bahwa Anda mungkin ingin memberikan input mengenai pola mana yang akan digunakan, perpustakaan mana yang akan digunakan dalam suatu proyek.
00:13:30Jadi di situlah kita kemudian bergerak lebih ke area desain sistem atau arsitektur perangkat lunak, yang bukan hal yang sama, desain sistem, arsitektur perangkat lunak.
00:13:39Tapi ini adalah hal-hal yang masih sangat penting, saya akan katakan.
00:13:44Dan ini adalah hal-hal di mana memiliki spesifikasi yang baik, memiliki rencana yang baik adalah penting jika Anda lebih dekat ke 100% tidak membaca, yang, sekali lagi, mungkin bukan kasus bagi Anda.
00:13:57Ini semua adalah sesuatu di mana tidak ada yang salah atau benar, seperti yang saya coba perjelas.
00:14:02Jadi bagian-bagian ini menjadi lebih penting spesifikasi, rencana, karena, sekali lagi, Anda pasti ingin memastikan keamanan dan keandalan jika Anda tidak terlalu peduli dengan gaya kode dan keterbacaan lagi, yang mungkin sangat mungkin terjadi.
00:14:18Dan oleh karena itu, tentu saja, seluruh pertanyaan tentang apakah Anda masih membaca kodenya jelas juga sedikit memancing emosi, seperti yang saya sebutkan sebelumnya, dan tidak semudah itu untuk dijawab.
00:14:30Dan hanya tidak ada yang benar atau salah di sini.
00:14:34Dan omong-omong, ini harus jelas, tapi ada juga perbedaan besar.
00:14:37Jika Anda memiliki sesuatu, beberapa perangkat lunak yang berjalan dalam produksi, mungkin digunakan oleh ribuan, ratusan ribu, atau jutaan orang, dan itu juga tergantung pada area mana Anda bekerja.
00:14:49Maksud saya, jika Anda bekerja di perbankan, katakanlah, kesalahan dalam perangkat lunak Anda mungkin memiliki konsekuensi bencana dan bukan hanya perbankan, ada bagian yang lebih penting dalam perbankan, tentu saja kesehatan, pertahanan, teknologi, semua hal itu.
00:15:05Jadi itu aspek yang penting.
00:15:10Jika Anda seorang peretas indie dengan nol pengguna, ya, tentu saja, Anda mungkin tidak terlalu peduli dengan kodenya.
00:15:18Tapi secara keseluruhan, saya pikir kita masih bisa melihat tren atau kita mungkin melihat tren di mana sama seperti menulis kode, kita juga bergerak lebih dekat ke 100% untuk tidak membaca kodenya.
00:15:32Saya hanya tidak yakin apakah kita akan pernah mencapai 100% dan apakah kita harus sampai di sana, apakah itu ide yang baik.
00:15:38Dan kita jelas tidak boleh berhenti peduli.
00:15:41Dan kemudian pertanyaan besarnya hanya, bisakah kita peduli tanpa membaca?
00:15:45Akankah itu benar-benar, benar-benar, benar-benar berhasil?
00:15:48Saya tidak yakin.
00:15:49Bagi saya, saya tidak memiliki kepercayaan itu pada AI.
00:15:53Dan saya tidak yakin apakah atau kapan itu akan berubah.
00:15:56Itu mungkin berubah.
00:15:57Tidak menutup kemungkinan.
00:15:58Sama seperti menulis kode atau tidak menulis kode telah berubah.
00:16:03Tapi saat ini, saya masih lebih di bagian membaca dan peduli itu atau saya berada di antara karena, seperti yang saya sebutkan, saya berada di tengah skala itu.
00:16:11Tapi seperti yang juga saya sebutkan, tolong beri tahu saya di mana Anda berada.
00:16:150% membaca, 100% membaca, mungkin masih 100% menulis.
00:16:19Itu mungkin juga cara yang benar untuk pergi.
00:16:21Beri tahu saya.
00:16:22Dan beri tahu saya pendapat Anda tentang seluruh topik ini secara umum.