Halo!
Saya sesekali memposting tentang proyek Obsidian/pengembangan, dan kali ini untuk merayakan pendaftaran tiga plugin buatan saya di toko plugin Obsidian, saya ingin meninggalkan beberapa pemikiran singkat tentang vibe coding yang telah saya lakukan setelah lama.
Obsidian adalah aplikasi catatan berbasis markdown dengan tingkat kebebasan tinggi dan skalabilitas luar biasa, serta mudah terintegrasi dengan alat eksternal. Sebelumnya, kebebasan seperti ini bertindak sebagai hambatan masuk yang besar, sehingga banyak orang berakhir hanya dalam tahap pengenalan.
Bahkan sebelum munculnya AI, ini adalah alat yang luar biasa, tetapi baru-baru ini banyak orang menggunakan Obsidian sebagai semacam hub pengetahuan dan melakukan pertanyaan dengan AI berdasarkan hub pengetahuan tersebut.
Saya sebenarnya mulai menggunakan Obsidian tahun lalu untuk memanfaatkan blog statis (Jekyll) yang ada di Github. Namun saat menulis postingan blog, saya ingin memiliki pemeriksa tata bahasa Korea, jadi saya membuat plugin pemeriksa tata bahasa. Ada plugin pemeriksa tata bahasa Korea lain di komunitas plugin yang ada, tetapi saat itu tidak berfungsi untuk saya. Saya dengan berani melompat dengan pemikiran "jika tidak ada, buat dan gunakan."
Hasilnya tampaknya tidak buruk. Ini adalah proyek yang dibuat di awal dengan AI sehingga ada beberapa kekasaran, tetapi semuanya berfungsi. Saya berharap orang lain juga akan merasa terbantu, jadi saya melamar untuk mengunggah ke toko komunitas pada saat itu.
Tim Obsidian terdiri dari sekitar 7 orang, dan saat itu saya mendengar ada banyak antrian review plugin, tetapi saya tidak tahu berapa lama dan tidak ada informasi atau panduan yang akurat. Butuh waktu yang cukup lama hanya untuk menerima hasil review awal. Ketika Anda pertama kali mengirimkan, semacam bot memindai kode untuk memverifikasi bahwa itu ditulis sesuai dengan sintaks Obsidian. Anda harus menyelesaikan beberapa komentar bot sebelum menerima umpan balik dari orang, dan setelah proses menerima umpan balik selesai, itu disetujui.
Sejak paruh kedua tahun lalu, vibe coding menjadi sangat populer, dan tim Obsidian juga mengalami peningkatan eksponensial plugin, dan review terus tertunda. Saya mengirimkan milik saya sekitar Juli tahun lalu, dan butuh lebih dari sebulan hanya untuk menerima review dari orang, dan kemudian butuh bulan lain untuk menyelesaikan review itu dan menerima umpan balik tambahan, dan seterusnya.
Dari saat ini saya menyerah pada pikiran bahwa saya tidak tahu kapan akan didaftarkan di toko resmi, dan saya hanya membagikan melalui metode di mana orang yang tertarik dapat mendaftarkan alamat Github, meskipun merepotkan, dan menggunakan plugin bernama BRAT yang memperbarui.
Plugin kedua dibuat untuk membuat istri saya yang menulis di blog Naver menulis dengan cara saya. Saya membuatnya dengan keras, tetapi istri saya akhirnya tidak dapat memindahkan blog karena pengasuhan anak dan pekerjaan. Untuk membuat plugin itu, saya mereferensikan beberapa proyek open source yang melakukan web scraping blog Naver. Sebagian besar ditulis dalam Python, tetapi Obsidian didasarkan pada TypeScript, jadi saya agak kesulitan mengportnya.
Video demo di bawah ini sudah lama, jadi tolong anggap saja referensi.... ㅎㅎ
Ketika menjadi mungkin untuk mengambil postingan blog, saya ingin dapat mengambil postingan dari kafe Naver, dan saya ingin dapat mengambil postingan dari Kakao Brunch, jadi fitur terus ditambahkan perlahan-lahan. Saya bahkan menambahkan fitur untuk mengambil postingan ketika Anda membuka Obsidian jika Anda mendaftarkan alamat blog tertentu.
Namun, bahkan ketika saya mengirimkan plugin kedua dan menerimanya untuk review, review plugin pertama belum selesai. Saya menganggap ini adalah kesalahan keterampilan saya yang tidak memadai dan hanya menjawab setiap kali hasil review datang. Umpan balik yang ditinggalkan oleh petugas Obsidian cukup untuk merespons dan menjawab berdasarkan AI, tetapi saya harus menunggu lagi selama beberapa minggu hingga lebih dari sebulan.
Dari saat ini saya menjadi skeptis terhadap prosedur plugin resmi dan tidak memberikan penekanan besar pada toko plugin komunitas. Orang-orang yang membutuhkan menemukan dan menggunakannya.
Setelah membuat beberapa plugin, saya mendapatkan beberapa kepercayaan diri. Saya bisa melakukan ini juga! Dengan pikiran itu, saya dengan berani menantang aplikasi Mac. Plugin pemeriksa tata bahasa tidak buruk, tetapi saya ingin AI fitur melekat dengan cara yang alami, dan saya merasa ingin menghilangkan ketidaknyamanan penulisan artikel Obsidian.
Awalnya saya melompat secara membabi buta, dan setelah berinvestasi 2-3 minggu, saya menyadari bahwa sesuatu telah salah besar, dan saya membangun kembali sepenuhnya. Pembangunan kembali juga membutuhkan hampir sebulan. Saya menangkap beberapa bug dan meluncurkannya untuk membuat itu dapat digunakan pada tingkat tertentu. Karena saya membuatnya, saya pikir saya akan membuat pembayaran sederhana dan pengaturan, jadi saya mendapatkan pengalaman dan kesulitan yang tepat.
Saya begitu fokus membuat ini sehingga saya mengalami burnout dan hanya menulis beberapa postingan pengenalan dan habis energi bahkan untuk mempromosikan lebih lanjut. Ini adalah proyek yang mengajarkan banyak pelajaran. Saya baru menyadari betapa sulitnya aplikasi. Pentingnya tech stack, pentingnya refactoring kode, build dan deployment, pembayaran dan server otentikasi, dan banyak hal lainnya yang saya cicipi. (Ada juga fitur di dalamnya untuk menggunakan pemeriksa tata bahasa Universitas Busan menggunakan API key, dan banyak orang yang tidak tahu apakah ini mungkin. Saya langsung bertanya kepada perusahaan pemeriksa tata bahasa Busan dan dapat mengimplementasikan fitur itu. Jika Anda mengirim email dan menerima kunci pribadi, Anda dapat menggunakannya gratis hingga sekitar 300 kalimat.)
Setelah lama tidak melihatnya, baru-baru ini saya menulis posting pribadi yang akan diposting ke komunitas melalui alat itu. Sambil melakukannya, saya memperbaiki hal-hal kecil sangat jarang, tetapi sudah cukup bisa digunakan sekarang. Saya masih tidak bisa merekomendasikannya.
Saya pikir saya juga meninggalkan ulasan tentang pengembangan saat membuat ini..ㅎㅎ
Dalam mengembangkan aplikasi Mac, saya benar-benar memahami betapa nyamannya mengembangkan plugin secara relatif. Saya menyadari bahwa hanya dengan memanfaatkan API yang diberikan dalam ekosistem tersebut, Anda dapat melakukan hal-hal dasar, dan ada semacam jaring pengaman. Jadi saya melanjutkan dengan pengembangan plugin ketiga.
Saya biasanya merasa tidak nyaman menyimpan dan mengelola postingan di media sosial, dan saya pikir akan bagus jika itu dibuat sebagai plugin Obsidian. Media sosial memiliki fitur penyimpanan mereka sendiri, tetapi ketika Anda memasuki media sosial itu, fitur penyimpanan ini disembunyikan, dan pencarian dan manajemen menjadi tidak nyaman. Sebagai media sosial, pengguna akan tersesat dan perlu melihat lebih banyak hal baru untuk melihat lebih banyak iklan. Selain itu, saya pikir ada cukup banyak pengguna Obsidian yang memiliki sifat pengumpul data (Data Hoarder).
Namun, pengalaman telah terakumulasi dengan baik sehingga pengembangan berlangsung tanpa kesalahan percobaan utama, dan berikut adalah tampilan plugin di awal-awal. Ciri khasnya adalah hanya dengan memasukkan tautan media sosial, dokumen markdown tentang postingan itu dan metadata seperti jumlah like dibuat di dalam Obsidian, dan ketika Anda membuka tampilan terpisah, Anda dapat melihatnya dalam format timeline.
Pengalaman sebelumnya membantu, dan saya mendapatkan beberapa respons dari posting yang saya buat di Reddit, sehingga saya dapat mengumpulkan pengguna global melalui Obsidian, dan saya memperluas visi dunia di plugin dan sedang menyediakan layanan sebagai web dan aplikasi mobile.
Plugin ketiga sudah selesai dibuat, bahkan cukup matang hingga memiliki pengguna dari seluruh dunia, namun tetap saja tidak bisa melewati ambang batas seleksi di toko plugin komunitas Obsidian. Sementara proses seleksi plugin ketiga sedang berjalan, dua plugin pertama yang saya buat pun masih belum berhasil didaftarkan. Rasanya sudah keterlaluan..

Namun hari ini akhirnya semuanya berhasil didaftarkan. Mungkin tidak terlalu bermakna, tapi kenapa tiba-tiba semuanya bisa terdaftar sekaligus.
Rupanya tim Obsidian, yang kewalahan menghadapi banjirnya plugin-plugin berbasis kecerdasan buatan dan tidak mampu lagi menangani alur seleksi yang lama, telah membuat situs komunitas baru. Kini aplikasi yang lolos pemindaian otomatis pun sudah bisa langsung didaftarkan. Seandainya mereka memberi tahu dari dulu bahwa ini sedang dibuat, pasti lebih baik..ㅎㅎ

Agak antiklimaks, bukan?! Tapi setidaknya sekarang saya bisa dengan mudah menyarankan orang untuk cukup mencari dan menginstal plugin langsung dari toko komunitas di dalam aplikasi, dan itu menyenangkan.
Sebenarnya ada sekitar 2-3 proyek lagi yang tidak saya ceritakan di sini. Dimulai sekitar Juli tahun lalu, meskipun sesekali ada jeda istirahat, rasanya saya terus saja mengerjakan sesuatu tanpa henti. Semakin banyak proyek yang saya kerjakan, semakin saya menyadari bahwa pengembangan perangkat lunak itu sungguh tidak mudah, dan saya pun semakin kagum pada para pengembang yang telah mengerjakan proyek-proyek kompleks seperti ini bahkan sebelum era kecerdasan buatan.
Memang benar bahwa vibe coding telah menurunkan hambatan untuk masuk ke dunia pengembangan perangkat lunak, namun bagi yang sudah pernah mengerjakan beberapa proyek, pasti sudah merasakannya sendiri — perjalanan ini mengajarkan bahwa membuat produk yang baik, mendapatkan pengguna, dan mengubahnya menjadi pendapatan sama sulitnya dengan menjadi YouTuber yang sukses. Banyak yang berbicara seolah vibe coding bisa menyelesaikan segalanya hanya dengan prompt yang tepat, tapi menurut saya tidak ada yang lebih berharga daripada pengalaman nyata menyelesaikan sebuah proyek. Kalau produk atau layanan yang dibuat dengan vibe coding tidak mendapat pengakuan, bukan karena dibuat dengan vibe coding, melainkan karena kualitasnya sebagai produk atau layanan yang masih kurang.
Ketika baru memulai vibe coding, kita akan merasa sangat percaya diri. AI bisa langsung membuatkan fitur hanya dengan perintah kata-kata, dan layanan yang tadinya terlihat sulit pun bisa dibuat dengan cukup meyakinkan. Kualitasnya sekitar 80-90%. Tidak buruk, tapi ada sesuatu yang kurang memuaskan. Namun semakin lama digunakan, bagian-bagian yang belum selesai itulah yang mulai menghambat. Terasa kurang nyaman bahkan untuk digunakan sendiri, apalagi untuk orang lain. Desainnya pun langsung terlihat seperti buatan AI. Dari pengalaman langsung, untuk menambal kekurangan itu dibutuhkan waktu (dan token) berkali-kali lipat dari yang awalnya diinvestasikan. Saya memang sudah menyukai layanan dan aplikasi yang dibuat dengan baik sejak dulu, dan setelah melalui proses membangun layanan sendiri seperti ini, kecintaan itu semakin bertambah.
PS 1. Pencari e-book (dibuat karena meminjam buku dari perpustakaan e-book terasa sangat merepotkan)

PS 2. Pengarsipan & penampil webtoon (karena saya pembaca webtoon yang malas, saya membuatnya agar episode-episode bisa diunduh secara otomatis melalui langganan dan bisa langsung ditonton)