Selama dua tahun terakhir, saya dan tim di Work & Co telah menguji dan secara bertahap mengintegrasikan alat pengkodean AI seperti Copilot, Cursor, Claude, dan ChatGPT untuk membantu kami memberikan pengalaman web yang digunakan oleh banyak orang. Memang benar, setelah beberapa skeptisisme awal dan beberapa momen aha, berbagai alat AI telah mulai saya gunakan sehari-hari. Seiring waktu, daftar aplikasi yang menurut kami masuk akal untuk membiarkan AI mengambil alih mulai bertambah, jadi saya memutuskan untuk membagikan beberapa kasus penggunaan praktis alat AI untuk apa yang saya sebut “pengembang yang bertanggung jawab”. Apa yang saya maksud dengan pengembang yang bertanggung jawab? Kami harus memastikan bahwa kami memberikan kode kualitas seperti yang diharapkan oleh pemangku kepentingan dan klien kami. Kontribusi kami (yaitu, permintaan penarikan) tidak boleh menjadi beban bagi kolega kami yang harus meninjau dan menguji pekerjaan kami. Selain itu, jika Anda bekerja untuk sebuah perusahaan: Alat yang kami gunakan harus disetujui oleh perusahaan kami. Aspek sensitif seperti keamanan dan privasi perlu ditangani dengan benar: Jangan menempelkan rahasia, data pelanggan (PII), atau kode kepemilikan ke dalam alat tanpa persetujuan kebijakan. Perlakukan itu seperti kode dari orang asing di internet. Selalu uji dan verifikasi. Catatan: Artikel ini mengasumsikan beberapa pemahaman mendasar tentang alat pengkodean AI seperti Copilot di dalam VSCode atau Cursor. Jika semua ini terdengar benar-benar baru dan asing bagi Anda, tutorial video Github Copilot bisa menjadi titik awal yang bagus untuk Anda.

Aplikasi Alat Pengkodean AI yang Bermanfaat Catatan: Contoh berikut terutama akan berfokus pada bekerja di aplikasi web berbasis JavaScript seperti React, Vue, Svelte, atau Angular. Mendapatkan Pemahaman Tentang Basis Kode yang Tidak Dikenal Bekerja pada basis kode yang sudah ada bukanlah hal yang aneh, dan bergabung dengan basis kode lama yang besar dapat menjadi hal yang menakutkan. Cukup buka proyek Anda dan agen AI Anda (dalam kasus saya, Copilot Chat di VSCode) dan mulailah mengajukan pertanyaan seperti Anda bertanya kepada rekan kerja. Secara umum, saya suka berbicara dengan agen AI mana pun seperti halnya dengan sesama manusia. Berikut adalah contoh prompt yang lebih halus: "Beri saya ikhtisar arsitektur tingkat tinggi: titik masuk, perutean, autentikasi, lapisan data, perkakas pembuatan. Lalu buat daftar 5 file untuk dibaca secara berurutan. Perlakukan penjelasan sebagai hipotesis dan konfirmasikan dengan melompat ke file referensi."

Anda dapat terus menanyakan pertanyaan lanjutan seperti “Bagaimana cara kerja perutean secara detail?” atau “Beri tahu saya tentang proses dan metode autentikasi” dan ini akan mengarahkan Anda ke petunjuk berguna untuk menjelaskan kegelapan basis kode yang tidak dikenal. Memprioritaskan Perubahan yang Dapat Mengganggu Saat Meningkatkan Ketergantungan Memperbarui paket npm, terutama ketika paket tersebut disertai dengan perubahan yang dapat mengganggu, bisa menjadi pekerjaan yang membosankan dan memakan waktu, serta membuat Anda melakukan debug dalam jumlah regresi yang cukup banyak. Saya baru-baru ini harus memutakhirkan pustaka visualisasi data plotly.js ke satu versi rilis utama dari versi 2 ke 3, dan akibatnya, pelabelan sumbu di beberapa grafik berhenti berfungsi. Saya melanjutkan untuk bertanya pada ChatGPT: "Saya memperbarui proyek Angular saya yang menggunakan Plotly. Saya memperbarui plotly.js - paket dist dari versi 2.35.2 ke 3.1.0 - dan sekarang label pada sumbu x dan y hilang. Apa yang terjadi?"

Agen segera kembali dengan solusi (lihat sendiri di bawah). Catatan: Saya masih memverifikasi penjelasannya terhadap panduan migrasi resmi sebelum mengirimkan perbaikannya.

Mereplikasi Refactor dengan Aman di Seluruh File Basis kode yang berkembang tentu saja membuka peluang untuk konsolidasi kode. Misalnya, Anda melihat duplikasi kode di seluruh file yang dapat diekstraksi menjadi satu fungsi atau komponen. Akibatnya, Anda memutuskan untuk membuat komponen bersama yang dapat disertakan dan melakukan pemfaktoran ulang tersebut dalam satu file. Sekarang, alih-alih melakukan perubahan tersebut secara manual pada file Anda yang tersisa, Anda meminta agen Anda untuk meluncurkan pemfaktoran ulang untuk Anda. Agen memungkinkan Anda memilih banyak file sebagai konteks. Setelah pemfaktoran ulang untuk satu file selesai, saya dapat menambahkan file yang telah difaktorkan ulang dan yang belum disentuh ke dalam konteks dan meminta agen untuk menerapkan perubahan pada file lain seperti ini: “Replikasi perubahan yang saya buat di file A ke file B juga”. Menerapkan Fitur Dalam Teknologi Asing Salah satu momen aha favorit saya saat menggunakan alat pengkodean AI adalah ketika alat itu membantu saya membuat animasi gradien animasi yang cukup kompleks di GLSL, bahasa yang selama ini saya tidak familiar. Pada proyek terbaru, desainer kami membuat gradien animasi sebagai status pemuatan pada objek 3D. Saya sangat menyukai konsep ini dan ingin memberikan sesuatu yang unik dan menarik kepada klien kami. Itumasalah: Saya hanya punya waktu dua hari untuk mengimplementasikannya, dan GLSL memiliki kurva pembelajaran yang cukup curam. Sekali lagi, alat AI (dalam hal ini, ChatGPT) sangat berguna, dan saya mulai memintanya untuk membuat file HTML mandiri untuk saya yang merender kanvas dan gradien warna animasi yang sangat sederhana. Selangkah demi selangkah, saya meminta AI untuk menambahkan lebih banyak kemahiran hingga saya mendapatkan hasil yang layak sehingga saya dapat mulai mengintegrasikan shader ke dalam basis kode saya yang sebenarnya. Hasil akhirnya: Klien kami sangat senang, dan kami menghadirkan fitur kompleks dalam waktu singkat berkat AI. Tes Menulis Menurut pengalaman saya, proyek jarang sekali memiliki cukup waktu untuk terus menulis dan memelihara rangkaian pengujian unit dan integrasi yang tepat, dan terlebih lagi, banyak pengembang tidak terlalu menikmati tugas menulis pengujian. Meminta pembantu AI Anda untuk menyiapkan dan menulis tes untuk Anda sangat mungkin dilakukan dan dapat dilakukan dalam waktu singkat. Tentu saja, Anda, sebagai pengembang, tetap harus memastikan bahwa pengujian Anda benar-benar memperhatikan bagian penting aplikasi Anda dan mengikuti prinsip pengujian yang masuk akal, namun Anda dapat “mengalihdayakan” penulisan pengujian tersebut ke pembantu AI kami. Contoh perintah: "Tulis pengujian unit untuk fungsi ini menggunakan Jest. Tutupi jalur bahagia, kasus tepi, dan mode kegagalan. Jelaskan mengapa setiap pengujian ada."

Anda bahkan dapat meneruskan praktik terbaik pengujian guru Kent C. Dodds sebagai pedoman kepada agen Anda, seperti di bawah ini:

Perkakas Internal Agak mirip dengan contoh shader yang disebutkan sebelumnya, saya baru-baru ini ditugaskan untuk menganalisis duplikasi kode dalam basis kode dan membandingkan sebelum dan sesudah refactor. Tentu saja bukan tugas yang sepele jika Anda tidak ingin melakukan proses membandingkan file secara manual yang memakan waktu. Dengan bantuan Copilot, saya membuat skrip yang menganalisis duplikasi kode untuk saya, mengatur dan mengurutkan output dalam sebuah tabel, dan mengekspornya ke Excel. Lalu saya mengambil satu langkah lebih jauh. Ketika pemfaktoran ulang kode kami selesai, saya meminta agen untuk mengambil lembar Excel saya yang ada sebagai garis dasar, menambahkan status duplikasi saat ini di kolom terpisah, dan menghitung delta. Memperbarui Kode yang Ditulis Lama Sekali Baru-baru ini, klien lama saya menghubungi saya, karena seiring berjalannya waktu, beberapa fitur tidak lagi berfungsi dengan baik di situs webnya. Hasil tangkapannya: Situs web ini dibuat hampir sepuluh tahun yang lalu, dan JavaScript serta SCSS menggunakan alat kompilasi yang agak lama seperti requireJS, dan penyiapannya memerlukan Node.js versi lama yang bahkan tidak dapat berjalan di MacBook 2025 saya. Memperbarui seluruh proses pembangunan dengan tangan akan memakan waktu berhari-hari, jadi saya memutuskan untuk bertanya kepada agen AI, “Dapatkah Anda memperbarui proses pembangunan JS dan SCSS ke tumpukan lean 2025 seperti Vite?” Memang benar, dan setelah sekitar satu jam menyempurnakan dengan agen, build SCSS dan JS saya dialihkan ke Vite, dan saya dapat fokus pada perbaikan bug yang sebenarnya. Pastikan untuk memvalidasi output dan file yang dikompilasi dengan benar saat melakukan perubahan integral pada proses pembangunan Anda. Meringkas dan Menyusun Apakah Anda ingin meringkas semua perubahan kode terkini dalam satu kalimat untuk pesan penerapan, atau memiliki daftar penerapan yang panjang dan ingin merangkumnya dalam tiga poin penting? Tidak masalah, biarkan AI yang mengurusnya, tapi pastikan untuk mengoreksinya. Contoh promptnya sesederhana mengirim pesan kepada sesama manusia: “Tolong rangkum perubahan terbaru saya dalam poin-poin singkat”. Saran saya di sini adalah menggunakan GPT untuk menulis dengan hati-hati, dan seperti halnya kode, harap periksa hasilnya sebelum mengirim atau mengirimkan. Rekomendasi Dan Praktik Terbaik Mendorong Salah satu manfaat penggunaan AI adalah semakin spesifik dan disesuaikan permintaan Anda, semakin baik hasilnya. Proses meminta agen AI memaksa kami untuk merumuskan persyaratan kami sespesifik mungkin sebelum kami menulis dan membuat kode. Inilah sebabnya, sebagai aturan umum, saya sangat menyarankan agar bisikan Anda sespesifik mungkin. Ryan Florence, salah satu penulis Remix, menyarankan cara sederhana namun ampuh untuk meningkatkan proses ini dengan menyelesaikan perintah awal Anda dengan kalimat: “Sebelum kita mulai, apakah kamu punya pertanyaan untukku?”

Pada titik ini, AI biasanya memberikan pertanyaan berguna yang dapat memperjelas maksud spesifik Anda, sehingga memandu agen untuk memberi Anda pendekatan yang lebih disesuaikan untuk tugas Anda.

Gunakan Kontrol Versi Dan Bekerja Dalam Bagian yang Dapat Dicerna Menggunakan kontrol versi seperti git tidak hanya berguna saat berkolaborasi sebagai tim dalam satu basis kode tetapi juga untuk menyediakan Anda sebagaikontributor individu dengan poin stabil untuk dikembalikan jika terjadi keadaan darurat. Karena sifatnya yang non-deterministik, AI terkadang bertindak nakal dan membuat perubahan yang tidak membantu apa yang ingin Anda capai dan pada akhirnya merusak segalanya. Membagi pekerjaan Anda menjadi beberapa komitmen akan membantu Anda menciptakan titik stabil yang dapat Anda kembalikan jika terjadi hal-hal yang tidak diinginkan. Dan rekan tim Anda juga akan berterima kasih, karena mereka akan lebih mudah meninjau kode Anda ketika kode tersebut dipecah menjadi bagian-bagian yang terstruktur dengan baik secara semantik. Tinjau Secara Menyeluruh Ini lebih merupakan praktik terbaik secara umum, namun menurut saya, ini menjadi lebih penting ketika menggunakan alat AI untuk pekerjaan pengembangan: Jadilah peninjau kritis pertama terhadap kode Anda. Pastikan untuk meluangkan waktu untuk memeriksa perubahan Anda baris demi baris, sama seperti Anda meninjau kode orang lain, dan hanya mengirimkan pekerjaan Anda setelah lolos tinjauan mandiri Anda sendiri. "Ada dua hal yang benar bagi saya saat ini: agen AI luar biasa dan peningkatan produktivitas yang besar. Mereka juga merupakan mesin yang sangat buruk jika Anda mematikan otak dan melepaskannya sepenuhnya."— Armin Ronacher dalam postingan blognya Agen Psikosis: Apakah Kita Menjadi Gila?

Kesimpulan Dan Pemikiran Kritis Menurut pendapat saya, alat pengkodean AI dapat meningkatkan produktivitas kita sebagai pengembang setiap hari dan membebaskan kapasitas mental untuk lebih banyak perencanaan dan pemikiran tingkat tinggi. Mereka memaksa kita untuk mengartikulasikan hasil yang kita inginkan dengan sangat rinci. AI apa pun terkadang bisa berhalusinasi, yang pada dasarnya berarti AI itu terletak dalam nada percaya diri. Jadi pastikan untuk memeriksa dan mengujinya, terutama jika Anda ragu. AI bukanlah solusi terbaik, dan saya percaya, keunggulan dan kemampuan memecahkan masalah sebagai pengembang tidak akan pernah ketinggalan jaman. Bagi pengembang yang baru memulai karir mereka, alat ini mungkin sangat menggoda untuk melakukan sebagian besar pekerjaan untuk mereka. Apa yang mungkin hilang di sini adalah pekerjaan yang seringkali menguras tenaga dan menyakitkan melalui bug dan masalah yang sulit untuk di-debug dan dipecahkan, alias “penggilingan”. Bahkan Lee Robinson dari Cursor AI sendiri mempertanyakan hal ini di salah satu postingannya:

Alat pengkodean AI berkembang dengan pesat, dan saya sangat antusias dengan apa yang akan terjadi selanjutnya. Saya harap artikel ini dan tipsnya bermanfaat bagi Anda dan bersemangat untuk mencobanya sendiri.

You May Also Like

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free