Ketika dulu kita sekolah atau madrosah atau juga kuliah, setiap pelajaran yang kita dapat selalu dipecah berdasar berbagai kategori. Dulu aku pun bingung, mengapa banyak sekali yang harus dipelajari, dari berbagai macam pengelompokan kategori pula. Tetapi semenjak mempelajari pemprograman di umur 16 tahun, berbagai macam pelajaran yang dipecah-pecah itu mulai menyatu dalam kepalaku. Diawali dengan yang paling sering membuat jengkel, yaitu Matematika. Semenjak aku ngeuh bahwa rumus-rumus persamaan dapat mengoptimasi algoritma program, justru aku jadi berbalik mencintai Matematika. Di saat itu aku sedang menerapkan algoritma Bresenham dan optimasinya, hanya cukup dengan persamaan ABC (C=B+A) atau ABCD (D+C=B+A). Dan dulu aku pun selalu bingung, apa gunanya mempelajari sinus, cosinus, tangent, dan semacamnya. Tetapi semenjak mulai belajar menggambar lingkaran perpixelnya, barulah aku paham bahwa koordinat X-nya adalah cosinus, dan koordinat Y-nya adalah sinus.
Lalu ke pelajaran yang aku cintai, Fisika. Sempat bertanya-tanya juga untuk apa juga mempelajari gelombang, percepatan, kelembaman, momentum, gravitasi, dan sebagainya. Lalu seorang senior dari Monash University mengajarkanku berbagai macam teknik pemprograman game. Daaann... Matematika, Fisika, sampai ke Ilmu Sosial, masuk terserap ke dalamnya, bahkan BIOLOGI, ... ajiiyb. Pengumpulan data untuk suatu statistik, teknik penyebarannya, serta pendistribusiannya, hingga ke teknik cloning data yang tak bisa sembarangan.
Kemudian, Bahasa, pelajaran yang sering diremehkan orang. Semenjak aku berkenalan dengan "Mind-Mapping", alur suatu rencana yang berasal dari niat di dalam qolbu, dipikirkan oleh aqal, kemudian ditumpahkan menjadi flow-chart, dilanjut kepada pseudo-code, hingga tumpah-ruah menjadi kode-kode pemprograman yang bahkan dengan berbagai macam bahasa pemprograman, maka teknik berbahasa menjadi yang amat penting dalam hidupku. Walau hanya sekedar imbuhan ke-an, bisa menjadi perubahan drastis jika ditumpahkan menjadi kode pemprograman. Karena bahasa memiliki vektor di dalam "Mind-Mapping", yaaa... bahasa memiliki vektor, maka peggunaan kata harus sangat diperhatikan. Sebagai contoh, aku coba menjelaskan mengenai "gelombang":
Apa yang dimaksud dengan gelombang? Orang awam akan membayangkannya sebagai sesuatu yang naik-turun. Kalangan dokter akan membayangkannya sebagai denyut jantung. Kalangan seniman akan membayangkannya sebagai riak-arus. Tetapi seorang programmer yang menguasai algoritma dengan mantap, akan membayangkannya sebagai lingkaran, atau ellipse, atau persegi (tiga, empat, lima, dst), yang tidak terputus menerus dalam alur. Baik itu gelombang yang cekung, atau cembung, atau yang berbentuk bagaimanapun, tiap gelombang selalu menyentuh garis tengahnya (diameter) kembali. Jika tidak kembali, maka tentunya itu bukanlah gelombang.
Satu paragraf di atas mencoba memetakan pikiran (Mind-Mapping) dari berbagai sudut pandang (perspektif), mengenai kata "gelombang". Penjelasan yang absurd tentu tidak akan mengena pada maksud yang dituju. Itulah kenapa tiap bidang keilmuan memiliki kamus bahasanya sendiri. Tetapi setiap kata dari berbagai macam bahasa, bahkan "bahasa monyet" sekalipun, jika ditumpahkan dalam bentuk kode pemprograman, maka maksud yang dituju akan mengerucut kepada titik/point yang sama.
Ini bukanlah mengenai penggunaan bahasa baku atau bahasa sleng, juga bukan mengenai penggunaan bahasa asing, tetapi ini mengenai pemprograman. Tidak ada kebohongan dalam pemprograman, berbagai macam bidang keilmuan jika ditumpahkan ke dalamnya, ataupun berbagai macam bahasa jika ditumpahkan ke dalamnya, maka semua akan menjadi alur yang jelas. Jika tidak, berarti si programmernya SINTING.
No comments:
Post a Comment