The Art of Programming

Akhirnya saya ngoding lagi! Ngoding — dari kata kerja Bahasa Inggris coding diimbuhi awalan Bahasa Jawa ng sehingga mendapatkan sebuah kata hibrida yang berarti melakukan pekerjaan coding atau menulis kode program komputer. Sedemikian lamanya sehingga saya baru menyadari salah satu seni pemrograman yang saya lupa.

Programmer itu tidak bisa bekerja mengikuti aturan jadwal tetap, misalnya jam 7 sampai jam 4 sore. Artinya jam 7 tet Anda sudah langsung on, jam 4 teng pulang. Tak bisa. Ndak isa ndak isa…

Mari saya tunjukkan. Menulis kode program itu tidak mudah. Ini adalah ilmu eksak yang digabungkan dengan imajinasi. Anda harus memiliki naluri logis yang sangat kuat untuk bisa memulai menulis. Bagaimana jika, kapan harus mengulang, kapan harus keluar dari perulangan, kapan harus menampilkan pesan ke pengguna, dsb. Itu baru syarat awal, setelah itu Anda harus menggunakan seluruh daya khayal Anda untuk mendesain aliran logika-logika tersebut. Ini tak bisa dilakukan oleh orang yang tak memiliki daya imajinasi.

Imajinasi sangat berkaitan dengan mood. Itulah salah sebab sebagian besar programmer sangat moody. Para bos-bos harap maklum kalau kami sangat tergantung mood dalam bekerja. Programmer memerlukan waktu untuk melakukan pemanasan, dan sesi pemanasan ini bagi tiap-tiap orang berbeda. Ada yang nge-game dulu, browsing sana-sini dulu, dsb. Kadang-kadang hal-hal seperti ini yang dianggap di luar scope pekerjaan. Tetapi kalau boleh saya curcol, hal itu sangat erat kaitannya dengan membangkitkan mood, imajinasi, dan akhirnya bisa menulis kode program dengan lancar.

Programmer cenderung anti sosial? Sangat. Ini jelas karena kebiasaan ketika bekerja perlu konsentrasi tinggi. Segala alur program yang direncanakan di kepala belum tentu bekerja ketika dicoba. Anda harus menemukan alternatif-alternatif ketika rencana utama gagal. Kemarin, saya tiba pada alternatif ketujuh baru program berjalan sesuai dengan yang saya inginkan. Enam cara sebelumnya gagal. Dan biasanya ketika sedang on fire, saya menutup diri dari dunia luar dengan menutup telinga saya dengan earphone yang paling tuli (Eterna rev. 2), dan mengisinya dengan musik.

Dan jika sedang ditengah-tengah keasyikan menulis itu harus dipotong oleh sesuatu: misalnya jam pulang kantor, kami harus memulai segalanya dari awal. Rencana-rencana yang sudah tersusun bisa jadi hilang kalau pekerjaan ditunda besok jam 7 pagi. Bahkan bisa jadi yang ada adalah solusi yang benar-benar berbeda.

Ini saja saya tulis pukul setengah tujuh pagi, setelah saya menyelesaikan proses debugging yang melelahkan. Ini adalah jam orang sebelum masuk kantor dan saya mengerjakannya juga masih di atas kasur. Terima kasih untuk kamar saya yang kena splatteran Wi-fi. Suasana kantor di Muara Badak ini jauh lebih kondusif untuk programmer dibandingkan dengan kantor Wisma Mulia Jakarta.

Adalah wajar kalau banyak orang yang menganggap programmer adalah orang yang aneh dan tidak normal. Dengan ketidakmampuan berkomunikasi dan bersosialisasi, lengkap sudahlah “penderitaan” tersebut. Dengan ketidakmampuan¬†itu, kebanyakan programmer justru menenggelamkan diri ke dunianya sendiri, bercengkerama sepanjang hari dengan kode-kode program, game, atau apapun yang tidak mengharuskannya bersosialisasi dengan orang. Saya sendiri tak jauh berbeda: hobi saya adalah hobi di balik layar (fotografi), dan saya juga sedang menenggelamkan diri di sini — di dunia maya blog, dimana orang tak tahu betul karakter saya yang sesungguhnya, he he he…

Bonus:

By Galih Satriaji

Bookaholic, Workaholic. Chubby. That's me!

2 comments

  1. Blognya keren mas. Saya terlarut membacanya lebih dari dua jam. Saya sekarang juga sedang belajar jadi programmer. Tapi masih kacangan banget. hehe..

    Semua yang mas tuliskan, saya pun merasakan. Walaupun yang dibangun cuma aplikasi-aplikasi sedrhana buat tugas kuliah. Tapi semuanya membutuhkan mood untuk mengerjakan. Tak jarang tugas yang diberi tenggang waktu 2 bulan, baru merasakan on fire pada 2 minggu terakhir. Dan membangun mood itu adalah hal yang sulit.

    Salam kenal…

Leave a comment

Your email address will not be published. Required fields are marked *