All Posts

31 Juli 20264 menit

Menulis itu susah. Kalau saya jujur, ini kalimat pertama yang membuat artikel ini terasa berat, padahal ini cuma kalimat pembuka.

Beberapa tahun terakhir saya menyimpan banyak pelajaran berharga di kepala. Semuanya tersimpan rapi. Masalahnya, kepala tidak punya fitur pencarian. Begitu satu proyek selesai, pelajaran dari proyek itu ikut tertimbun cerita proyek berikutnya. Dulu saya menganggap itu wajar. Sekarang saya mulai ragu.

Kenapa saya tidak pernah menulis

Bukan karena tidak ada bahan. Selama empat tahun bekerja sebagai frontend developer, bahan saya cukup banyak. Mulai dari proyek klien yang menuntut keputusan arsitektur yang sulit, sampai eksperimen pribadi yang tidak pernah saya ceritakan ke siapa pun.

Alasan yang lebih jujur adalah saya takut tulisannya tidak bagus. Saya membayangkan tulisan saya harus rapi, lengkap, dan seolah-olah menjawab semua masalah. Standar itu terlalu tinggi, jadi tulisannya tidak pernah selesai. Saya menyimpan draf, lalu lupa.

Satu hal berubah beberapa waktu lalu, ketika saya mencoba menulis cerita dari salah satu proyek yang pernah saya kerjakan. Saya menyadari bahwa tulisan yang paling bermanfaat justru tidak harus sempurna. Tulisan yang paling bermanfaat adalah tulisan yang jujur tentang masalah dan cara menyelesaikannya.

Kenapa menulis itu penting

Ada dua alasan.

Pertama, menulis memaksa saya berpikir jernih. Selama ini saya mengira memahami sesuatu artinya bisa menjelaskannya di depan orang lain. Ternyata tidak cukup. Menjelaskan di depan orang masih bisa lari ke jawaban yang kabur. Menulis tidak memberi ruang untuk itu. Setiap kalimat harus berdiri di atas kalimat sebelumnya. Kalau ada bagian yang tidak saya pahami, bagian itu akan terlihat jelas di tulisan.

Kedua, catatan adalah aset. Satu bug yang membuat saya begadang semalam adalah bahan pelajaran yang sama berharganya dengan kursus mana pun. Masalahnya, bug itu akan hilang dari ingatan dalam hitungan minggu. Begitu ditulis, dia bertahan selamanya, dan bisa membantu orang lain yang menghadapi masalah serupa.

Apa yang akan saya bagikan

Blog ini rencananya berisi perjalanan saya di dunia development. Tidak ada kurikulum, tidak ada janji rutin mingguan yang akan saya langgar di bulan kedua.

Yang pasti, ada dua kategori.

Pelajaran dari kerjaan klien. Proyek yang saya kerjakan jarang mulus. Selalu ada keputusan yang ternyata salah, integrasi yang lebih rumit dari perkiraan, dan permintaan yang berubah di tengah jalan. Cerita seperti ini, termasuk kegagalannya, lebih berguna daripada versi yang sudah dirapikan.

Proyek pribadi di GitHub. Repo-repo dan eksperimen kecil di sana adalah tempat saya belajar hal yang tidak bisa saya pelajari di proyek klien. Beberapa sudah cukup matang untuk diceritakan, beberapa masih setengah jadi. Semuanya layak dibagikan.

Selain itu, saya akan menulis hal-hal kecil. Cuplikan kode yang menarik, keputusan kecil yang berdampak besar, atau sekadar opini yang tidak penting. Hal-hal kecil ini biasanya yang paling sering hilang, padahal justru yang paling sering berguna.

Cara saya menulis

Gaya tulisannya santai. Saya menulis seperti bercerita, bukan mendokumentasikan. Tidak ada bahasa yang terlalu kaku, tidak ada istilah yang dibiarkan menggantung tanpa penjelasan.

Bukan tutorial lengkap. Ada banyak tutorial bagus di luar sana. Blog ini lebih ke arah cerita, tentang apa masalahnya, kenapa saya memilih cara ini, dan apa hasilnya. Kalau sebuah cerita butuh kode, saya akan sertakan secukupnya.

Untuk siapa

Pertama, untuk diri saya sendiri setahun ke depan. Saya berharap tulisan ini menjadi catatan yang bisa saya baca ulang saat menghadapi masalah yang mirip.

Kedua, untuk siapa saja yang sedang berada di posisi yang sama, seperti developer yang sedang belajar, menyelesaikan proyek sendirian, atau menimbang untuk mulai menulis. Kalau tulisan saya membantu satu orang menghindari satu bug yang pernah membuat saya begadang, itu sudah cukup.

Penutup

Artikel ini bukan janji. Ini komitmen kecil untuk menuliskan apa yang saya pelajari selama saya masih belajar. Dan di dunia development, kita semua selalu belajar.

Kalau ada bagian dari perjalanan saya yang menarik untuk diikuti, atau ada topik yang ingin dibahas, kabari saya. Kotak masuk saya terbuka, dan percakapan selalu lebih menarik daripada monolog.