[caption caption="Cuplikan dari baris-baris kode ANUGA yang sedang aku pelajari. ANUGA adalah hasil kolaborasi antara Australian National University dengan Geosciences Australia untuk melakukan simulasi aliran air seperti banjir."][/caption]Aku tergelitik menanggapi ide menteri telekomunikasi kita soal memasukkan pelajaran coding ke kurikulum SMK. Aku menggap positif hal ini dan gebrakan ini merupakan sesuatu yang patut didorong lebih jauh. Akan tetapi, menurutku ada beberapa hal yang perlu mendapat perhatian yang komprehensif.
Aku mencari sesuap nasi melalui aktivitas coding ini. Paling tidak enam jam sehari aku habiskan untuk beraktivitas di depan komputer mengetikkan tulisan-tulisan aneh yang hanya dapat dimengerti oleh yang orang terlatih. Tanpa aktivitas coding ini sarana seperti kompasiana tak mungkin terwujud :).
Masalahnya, aktivitas coding yang berupa mengetikkan tulisan-tulisan aneh di komputer adalah sebagian kecil dari pekerjaan yang sebenarnya. Pekerjaan sebenarnya adalah penyelesaian masalah. Tulisan-tulisan aneh yang oleh kalanganku disebut bahasa pemrograman jumlahnya ratusan macam di luar sana. Masing-masing bahasa pemrograman ini cocok untuk menyelesaikan permasalahan tertentu. Aku penasaran bahasa pemrograman apa nantinya yang akan diajarkan ke siswa-siswi SMK yang beruntung itu?
Aku pernah bertemu seorang bocah sebelas tahun yang sudah mulai belajar bahasa pemrograman JAVA yang aku anggap cukup sulit digunakan. Salah satu kegunaan bahasa JAVA ini adalah untuk membuat aplikasi Android. Kebanyakan kawan-kawan kuliahku pernah ikut ekstrakurikuler berupa pemrograman bahasa C atau C++ waktu SMA.
Salah satu kegunaan bahasa C atau C++ adalah untuk membuat sistem operasi seperti Android atau iOS. Sementara aku waktu SMA tak ada yang mengajari soal coding. Pernah aku membeli buku tentang bahasa pemrograman PHP namun tergeletak begitu saja. Memasuki kuliah aku tak mengerti satupun bahasa pemrograman dan kuliahku bukanlah jurusan komputer atau sejenisnya yang memang mengajarkan pemrograman.
Tapi ada salah satu modal berharga dan untuk ini aku sangat berterima kasih kepada guru-guru matematika di SMA yang telah mengajar dengan baik. Selama karir profesionalku sebagai "coder" ilmu matematika sangat sekali membantu. Bahkan ilmu matematika adalah dasar dibalik semua bahasa pemrograman. Bahasa pemrograman itu seperti bahasa manusia.
Dua kata berbada "ini" dalam bahasa indonesia dan "this" dalam bahasa inggris mempunyai makna yang sama dalam otak manusia. Berbagai hal yang berbeda pada dua bahasa pemrograman dapat mempunyai makna yang sama dalam otak komputer. Oleh karena itu yang penting adalah bagaimana nalar itu dapat berfungsi yang waktu SMA dapat diasah dengan pelajaran matematika.
[caption caption="Jangan disangka kegunaan bahasa pemrograman hanya sebatas membuat website, aplikasi web, aplikasi smartphone dan sebagainya. Bahasa pemrograman memungkinkan NASA melakukan simulasi peluncuran roket hingga mendaratkan robot Curiosity di permukaan Mars. Di gambar robot Curiosity sedang melakukan selfie :)"]
![](https://assets.kompasiana.com/items/album/2015/11/28/curiosity-selfie-56593e39597b613905e9a491.jpg?v=400&t=o?t=o&v=770)
Jikalau bapak menteri tetep ngotot untuk memasukkan pelajaran coding ini ke kurikulum SMK aku pribadi menyarankan menggunakan bahasa pemrograman yang mempunyai kriteria:
- Spektrum permasalahan yang dapat dipecahkannya luas
- Bahasa yang mudah digunakan di komputer manapun bahkan komputer tua yang sering dijumpai di sekolah-sekolah pelosok kampung.
Kriteria pertama adalah bahasa pemrograman yang akan diajarkan nanti harus mampu menyelesaikan persoalan yang sebanyak mungkin, tidak hanya berfokus pada beberapa hal saja. Istilahnya bahasa pemrograman tersebut disebut general purpose programming language. Untuk menjabarkannya aku akan berandai-andai andaikata waktu SMA dulu ada pelajaran coding atau setidaknya ekstrakurikuler coding. Pertama sang pengajar tentu harus memilih permasalahan apa yang cocok untuk SMA.
Waktu aku masuk SMA pada tahun 2006 masalah yang mungkin adalah membuat aplikasi web sederhana menggunakan bahasa pemrograman PHP. Mungkin tahun 2015 masalah yang mungkin adalah membuat aplikasi Android sederhana. Pertama pengajar mengajari tentang dasar-dasar pemrograman seperti soal "tata bahasa pemrograman".
Aku akan kesulitan menangkap konsep-konsep asing seperti ini namun pelan-pelan berhasil memahami. Pengajar secara bertahap dan instruktif mulai mengajari membangun aplikasi yang lebih kompleks. Akhirnya aku akan mengerti. Tapi pengertianku akan terbatas bahwa satu bahasa pemrograman itu untuk membuat aplikasi seperti itu. Pemahaman seperti itu dapat membatasi pandanganku kelak. Hal inilah yang sebisa mungkin diantisipasi oleh perancang kurikulum nanti.
Kriteria kedua dalam pemilihan bahasa pemrograman yang hendak diajarkan adalah bahasa pemrograman itu mudah digunakan. Mudah digunakan di sini bukan hanya berarti mudah dipelajari tetapi juga tidak membebani komputer yang digunakan. Seperti yang sering diberitakan di media massa bahwa di negeri ini masih sering dijumpai kesenjangan infrastruktur pendidikan. Jangan-jangan sekolah yang ada di pelosok tidak memiliki fasilitas laboratorium komputer. Kalaupun ada jangan sampai komputer-komputer itu tersendat-sendat saat melakukan pelajaran coding.
Selain soal pemilihan bahasa pemrograman hal lain yang perlu diperhatikan adalah soal penilainnya. Aktivitas coding membutuhkan kerja sama kelompok sehingga penilaiannya sebaiknya bersifat kelompok. Dengan ini melatih siswa-siswi juga dalam berkolaborasi yang aku sadari merupakan bekal yang sangat penting apapun profesi yang mereka pilih nantinya.
Pemrograman adalah salah satu cabang paling sulit dari ilmu matematika.
Sebagai penutup aku ingin mengutip EW Djikstra yang merupakan salah satu peletak dasar di dunia coding. Dia bilang, "Programming is one of the most difficult branches of applied mathematics." Pemrograman adalah salah satu cabang paling sulit dari ilmu matematika. Penyesalanku bukanlah karena aku tidak mempelajari coding waktu SMA namun karena aku tidak banyak membaca buku matematika yang bermutu waktu itu. Jadi jangan lupa perkuat juga kurikulum matematika dan hargai guru-guru matematika!
*Artikel ini dapat dilihat juga di sini.