Cuplikan layar oleh Tiernan Ray/ZDNET
Ikuti ZDNET: Tambahkan kami sebagai sumber pilihan di Google.
—
Kesimpulan utama ZDNET
Alat seperti Cursor sangat membantu dalam menyederhanakan penyiapan kode.
Namun, masih dibutuhkan banyak upaya untuk menyempurnakan hasilnya.
Merumuskan tujuan aplikasi dan cara mencapainya adalah tantangan tersembunyi dalam pemrograman berbasis AI.
—
Kesuksesan terbesar sejauh ini dari kecerdasan buatan generatif di dunia enterprise adalah alat pengkodean AI yang membantu para pemrogram. Startup seperti Cursor, Replit, Lovable Labs, Harness, Windsurf, Augment Code, All Hands AI, dan Microsoft dengan Visual Studio bersama GitHub Co-pilot, menawarkan program yang dapat secara drastis mengurangi kebutuhan pengkodean manual oleh manusia.
Dan saya pun bertanya-tanya: Bisakah seorang pemula seperti saya, dengan pengetahuan pemrograman yang terbatas, membuat sebuah aplikasi hanya dengan berinteraksi melalui percakapan?
CEO Nvidia Jensen Huang pernah menyatakan bahwa vibe coding dalam bahasa Inggris akan menjadi bahasa pemrograman baru. Dengan dorongan itu, saya pun mencoba.
Saya sangat terkesan melihat bagaimana Cursor dan alat lainnya dapat secara otomatis melakukan tugas seperti menyiapkan virtual environment, menemukan dan menginstal pustaka kode, menginstal dan menjalankan server lokal, serta melakukan berbagai penyesuaian. Kemampuan aplikasi untuk melakukan semua itu hanya dengan perintah bahasa alami dari pengguna memang mengagumkan.
Setelah bereksperimen beberapa hari dengan berbagai alat, saya berhasil menjalankan program analisis data sederhana. Ini awal yang menjanjikan, tetapi juga jelas bahwa saya tidak bisa melangkah jauh tanpa keahlian pemrograman yang sesungguhnya.
Terlalu sering, alat berbasis PC seperti Cursor dan Microsoft Visual Studio mengarahkan saya ke jendela terminal dan meminta saya menjalankan berbagai tugas command line. Meski saya cukup akrab dengan command line, langkah tambahan ini—bahkan beberapa langkah—terasa membosankan. Saya yakin non-programmer dengan kesabaran lebih rendah akan menyerah.
Sementara itu, platform cloud seperti Replit dan Lovable membuat kredit saya cepat habis saat saya mencoba mencari tahu perubahan apa yang dibutuhkan aplikasi saya. Selain itu, menaruh data pribadi di cloud menimbulkan kecemasan tersendiri.
Program pertama saya
Kebanyakan pengguna AI memanfaatkan chatbot untuk bercakap-cakap, menganalisis beberapa dokumen, atau mungkin menggambar.
Semua alat pengkodean—Cursor dan lainnya—beroperasi dengan prinsip yang sama: Anda mengetikkan prompt, dan program akan merespons deskripsi proyek bahkan yang masih samar, merumuskan rencana, menyiapkan berkas kode yang diperlukan, dan secara otomatis menghasilkan antarmuka pengguna untuk program baru Anda, biasanya yang berjalan di peramban web.
Proyek vibe coding saya: alat analisis database yang dapat mencerna dokumen pengolah kata dan mencari pola di dalamnya. Visi saya adalah menambahkan bagian di situs web newsletter saya di mana pembaca tidak hanya bisa melakukan pencarian kata kunci dari 1.731 artikel saya, tetapi juga kueri bebas yang lebih kompleks, seperti "Bagaimana posisi Nvidia sebagai perusahaan dan investasi berubah dalam lima tahun terakhir?" Artikel-artikel saya, yang memiliki ratusan penyebutan Nvidia, dapat menghasilkan semacam ringkasan eksekutif yang tidak tersedia hanya dengan menanyakan hal yang sama di ChatGPT atau Perplexity, karena mereka tidak memiliki artikel khusus saya.
Langkah awal
Saya mulai dengan Cursor karena merek inilah yang paling sering saya dengar. Saya mengunduh dan menginstal binari MacOS dengan mudah seperti unduhan Mac lainnya.
Cursor menawarkan uji coba gratis 7 hari untuk versi Pro, tetapi saya memilih untuk langsung menggunakan paket gratis.
Bagi yang bukan programmer, layar pertama Cursor setelah mendaftar bisa menakutkan. Program ini menanyakan apakah saya ingin "membuka proyek", "repositori kode", atau "Terhubung via SSH."
Sebagian besar pekerjaan vibe coding dilakukan di panel samping aplikasi ini, tempat Anda mengetik seperti saat menggunakan prompt ChatGPT.
Cuplikan layar oleh Tiernan Ray/ZDNET
Meski saya tidak tahu bagaimana program ini bekerja, saya tahu ia menggunakan paradigma chat seperti ChatGPT. Saya akhirnya menemukan cara membuka panel samping "agen"—dengan pintasan Command+I di keyboard—dan mendeskripsikan proyek yang saya inginkan.
Semua program ini, baik yang berjalan lokal di Mac/PC maupun yang berjalan sebagai aplikasi cloud di peramban web, memiliki tiga area utama tempat Anda mengetik atau mengamati hasil: Panel agen, tempat Anda memberikan prompt ke model; tampilan terminal, tempat Anda melihat command line tradisional; serta pratinjau antarmuka grafis (GUI) aplikasi Anda, yang merupakan hasil akhir pekerjaan Anda.
Intinya adalah bolak-balik antara ketiganya saat Anda membuat permintaan, menyesuaikan, melihat hasil, dan mengulangi.
Antusiasme awal dengan Cursor
Beberapa menit pertama dengan Cursor sangat mengasyikkan. Cursor mendeskripsikan semua kebutuhan proyek yang tidak akan saya ketahui; lalu ia menawarkan untuk menyiapkan struktur berkas proyek di hard drive saya, menghubungkan ke database, menginstal berkas Python yang diperlukan, dan sebagainya. Saya bertanya apakah bisa menggunakan berkas .Pages milik Mac, dan lega ketika Cursor mengatakan akan menginstal "parser" yang diperlukan dari pustaka kode eksternal.
Saya sangat senang.
Lalu, kekecewaan datang.
Cursor memberi tahu bahwa ia akan menginstal beberapa pustaka Python yang dibutuhkan. Kemudian program restart sendiri, dan riwayat obrolan saya dari satu jam sebelumnya hilang begitu saja. Tidak ada riwayat obrolan sama sekali. Itu berarti rencana yang kami diskusikan untuk apa yang akan kami bangun telah lenyap.
Saya menghabiskan satu jam untuk hal ini dan mengetahui bahwa orang lain juga pernah kehilangan riwayat obrolan mereka. Forum bantuan dan obrolan baru di jendela agen tentang masalah ini menjelaskan bahwa ini adalah salah satu hal yang bisa terjadi. Riwayat obrolan untuk sebuah proyek disimpan di folder "workspace", di dalam folder ~Library pada akun pengguna saat ini di hard drive Mac. Namun, tidak ada cara untuk memaksa Cursor mengambil kembali riwayat obrolan itu jika tidak dilakukan secara otomatis.
Bagi saya, ini dead end. Saya tidak akan bekerja dengan program yang tidak dapat menjaga riwayat obrolan dengan andal, mengingat riwayat obrolan adalah salah satu inovasi kunci vibe coding. Saya menyerah pada Cursor dan beralih ke Replit.
Saya cepat terbentur paywall di Replit
Replit sepenuhnya online, di cloud, tanpa unduhan. Saya kurang senang dengan itu karena saya ingin menggunakan data saya secara offline di Mac, tetapi demi eksperimen, saya mengambil risiko memaparkan data saya.
Saya mendeskripsikan tujuan proyek, dan Replit mulai bekerja menyiapkan lingkungan, dengan jendela aplikasi sederhana yang siap dalam mode pratinjau dalam sekitar 15 menit. Saya meminta kemampuan untuk menggunakan berkas .Pages sebagai data, dan Replit menyesuaikan variabel lingkungan.
Semua program yang di-host di cloud ini memiliki kapasitas tertentu sebelum Anda harus berhenti dan menunggu untuk bekerja lagi. Saya cepat menghabiskan alokasi di Replit sebelum sempat melakukan apa pun dengan aplikasi yang baru saya buat.
Dengan kueri besar pertama yang saya coba, aplikasi gagal karena dikatakan tidak ada data yang diunggah, meskipun semua sumber data saya telah dipilih di panel samping. Tepat saat saya mendeskripsikan masalah berkas yang hilang, saya mencapai kuota paket gratis dan diberi tahu bahwa saya harus menunggu 24 jam untuk melanjutkan kerja, kecuali meningkatkan ke paket berbayar.
Cuplikan layar oleh Tiernan Ray/ZDNET
Anda bisa cepat terbentur paywall dengan aplikasi berbasis cloud, seperti yang saya alami dengan Replit, jauh sebelum aplikasi benar-benar berfungsi.
Visual Studio bukan penyelamat sepenuhnya
Saat saya mempertimbangkan apakah akan beralih ke paket berbayar Replit, saya masih ingin bekerja di mesin lokal daripada di cloud. Jadi, saya lanjut ke Microsoft Visual Studio, yang memiliki fungsi GitHub Copilot bawaan yang menyediakan pemrograman berbasis chat seperti Cursor dan Replit. Visual Studio memiliki IDE Mac khusus seperti Cursor.
Meskipun Visual Studio bisa meminta izin untuk menjalankan perintah terminal, sering kali ia hanya menyediakan cuplikan kode yang harus saya salin dan tempel ke command line.
Akhirnya, setelah beberapa jam berurusan dengan terminal, semua masalah teknis terselesaikan, dan prototipe aplikasi analisis telah berjalan di peramban web di server lokal. Ini pencapaian terjauh saya, jadi saya sangat gembira!
Lalu muncul bagian yang paling sulit. Apa yang dihasilkan Visual Studio hanyalah fungsi pencocokan string teks sederhana yang hanya akan melihat apakah suatu rangkaian teks dapat ditemukan dalam berkas. Itu bukan analisis, hanya pencocokan kata kunci. Saya mencoba meminta Visual Studio Copilot untuk menyempurnakan analisis, tetapi berjam-jam percobaan di Visual Studio tidak menghasilkan perbaikan apa pun.
Menjadi jelas saat ini bahwa membangun alat analisis yang benar-benar dapat melakukan analisis teks adalah hal yang kompleks. Itu berarti tidak hanya mampu membuat kode, atau meminta Copilot membuat kode; tetapi juga memahami apa yang terdiri dari fungsi analisis tersebut, yang akan memengaruhi pilihan yang dibuat.
Cuplikan layar oleh Tiernan Ray/ZDNET
Saya berhasil mendapatkan fungsi pencocokan string teks yang sangat dasar dalam antarmuka web dengan Visual Studio, dan kemudian saya menyadari saya menginginkan lebih dari itu.
Awal yang cepat dari Lovable
Saya masih belum siap membayar Replit, jadi saya beralih ke Lovable, yang menawarkan pengaturan berbasis cloud gratis yang mirip dengan banyak alat lainnya.
Saya senang melihat betapa cepatnya Lovable membuat front-end web untuk mengunggah berkas dan melakukan analisis teks. Lovable juga memiliki antarmuka pengguna paling sederhana, menyembunyikan banyak detail kode. Dari keempat alat yang saya coba, Lovable paling mirip dengan menggunakan ChatGPT, Gemini, atau Perplexity.
Namun, saya cepat sampai pada kesimpulan yang sama seperti dengan Visual Studio: untuk mendapatkan analisis yang bermakna, lebih banyak pekerjaan diperlukan. Saya memberi tahu Lovable bahwa saya ingin analisis "tema, ide, dan perspektif" dalam artikel yang diunggah, dan Lovable menyarankan untuk menggunakan Google Gemini, yang saya setujui.
Itu sebuah peningkatan. Gemini memberikan beberapa observasi tingkat tinggi yang saya anggap relevan. Namun, karena persyaratan parsing unik dari berkas .Pages Apple, Gemini hanya dapat menganalisis judul dan metadata dokumen, bukan isi artikelnya.
Sebelum saya bisa mengambil langkah lain, saya telah mencapai batas kredit paket gratis. Saya menyukai apa yang telah saya lihat, dan saya begitu lelah dengan kegagalan sehingga saya bertekad untuk tidak pergi tanpa pencapaian apa pun.
Jadi, saya memasukkan kartu kredit untuk paket Pro Lovable, $25 per bulan untuk 100 kredit.
Saya melanjutkan dengan beberapa peningkatan. Alih-alih mengandalkan berkas .Pages, saya menghubungkan Lovable ke arsip artikel yang saya simpan dalam format XML di layanan Algolia. Prosedur ini relatif sederhana. Aplikasi dapat mengambil semua teks dari server Algolia, mengirimkannya ke Gemini, dan Gemini melakukan analisis semantik dasar sebagai respons terhadap kueri.
Akhirnya, saya berhasil membuat aplikasi analisis teks dasar.
Sebelum menyelesaikan, saya kembali ke Replit, sehari setelah jeda kredit gratis saya. Jeda itu telah berakhir dan saya bisa melanjutkan kerja dari tempat saya berhenti. Saya mencoba menyelesaikan masalah berkas yang tidak terbaca. Tampaknya Replit membuat semacam kesalahan dalam mengekstrak isi berkas .Pages saya. Saya coba lagi mengunggah dokumen, Replit mencoba memperbaiki situasi, tetapi ini berlarut-larut selama setengah jam lagi. Saya menyerah pada Replit, sangat bersyukur tidak memberikan uang kepada mereka.
Cuplikan layar oleh Tiernan Ray/ZDNET
Saya akhirnya mencapai produk minimum yang layak dengan alat Lovable.
Gambaran besar
Alat AI membantu saya melakukan banyak hal yang tidak bisa saya lakukan tanpanya, itu pasti. Di saat yang sama, alat-alat itu membuat saya sadar betapa banyak upaya tambahan yang harus saya lakukan untuk menguasai semua keanehan program dan keunikan dalam menginstal serta merawat kode.
Saya terjebak di antara dua dunia: dunia perangkat lunak desktop seperti Cursor dan Visual Studio, serta dunia platform yang di-host di cloud. Tidak ada yang tepat benar untuk saya. Saya terlalu banyak sakit kepala dengan perangkat lunak desktop. Namun, versi cloud terus menghitung penggunaan, menumpuk biaya, dan saya harus memaparkan data saya dengan menaruhnya di server jauh.
Di dalam perusahaan besar dengan tim TI yang besar, orang lain akan menangani detail penyiapan lingkungan virtual, pengelolaan data, dan sebagainya untuk saya. Namun, sebagai pemilik tunggal yang juga menjadi tim TI, ada begitu banyak pekerjaan tambahan bagi saya.
Saya harus mengatakan bahwa menggunakan alat-alat ini memberi saya apresiasi lebih besar kepada para programmer. Saya pernah duduk dan menyaksikan orang memprogram dan kagum dengan bagaimana mereka melakukan lompatan intuitif untuk menemukan masalah dalam kode dan mengimprovisasi solusi. Mencoba dan gagal melakukan sesuatu, bahkan dengan banyak bantuan otomatisasi, semakin memperjelas betapa banyak hal yang terlibat hanya untuk mengelola alat itu sendiri dan bertindak ketika otomatisasi tidak bekerja.
Saya rasa pekerjaan programmer manusia tidak akan hilang dalam waktu dekat.
Saya juga mendapatkan apresiasi lebih besar untuk tim pengembangan produk. Ketika saya akhirnya mencapai sesuatu yang dapat digunakan dengan Lovable, jelas bagi saya betapa banyak lagi pekerjaan yang akan terlibat dalam merancang aplikasi akhir, dan mencari tahu cara mencapainya. Anda dapat mengotomatisasi kode, tetapi itu hanya menyisakan lebih banyak keputusan tentang apa yang sebenarnya ingin Anda bangun, dan bagaimana Anda tahu telah mencapai produk minimum yang layak. Saya rasa itu berarti tim pengembangan produk juga tidak akan hilang.