hal-hal yang kita pelajari

apa tujuan kita belajar?

supaya kita tahu banyak hal.

…apa iya? sambil iseng, gw mencoba memikirkan mengenai hal ini akhir-akhir ini.

jadi begini. kalau kita belajar, maka kita akan tahu banyak. setidaknya, tahu lebih banyak dari sebelumnya. dan ini hal yang wajar. maksud gw, semua orang akan setuju kalau gw bilang begitu.

tapi, apa yang kita pelajari?

coba kita mengingat masa-masa sekolah dulu.

dulu, kita belajar kimia. kita disuruh menghapalkan rumus unsur halogen, misalnya. F, Cl, Br, I, At. diajarkan juga bagaimana unsur-unsur tersebut bereaksi dengan asam, misalnya, untuk membentuk asam halida. tentu saja, ketika ujian, kita harus menghapalkan hal-hal seperti itu. dan kita tidak boleh membuka tabel unsur kimia. kalau ada yang melakukannya, maka dianggap melanggar peraturan.

tapi kalau dipikir-pikir, memangnya apa salahnya dengan membuka tabel periodik unsur? ketika kita bekerja di laboratorium, misalnya, kita pasti akan berhadapan dengan tabel periodik yang dipasang di dinding laboratorium kimia. untuk efisiensi, memang lebih baik menghapal. tapi menurut gw, menghapal itu bukanlah sesuatu yang esensial.

coba contoh lain. misalnya di mata bidang Fisika. kita dijelaskan mengenai mekanika kuantum, yang dasarnya dari model atom Bohr. rumusnya adalah bla-bla-bla, dan sesuai dengan letak kulit atomnya, maka perbandingannya juga berbeda. tapi kita tidak boleh membuka rumus sakti tersebut sewaktu ujian.

padahal, rumus tersebut hanyalah rumus. maksud gw, rumus itu tinggal dilihat, dan kalaupun seseorang tidak mengerti maksudnya, maka dia tidak akan bisa mengerjakan soal yang berhubungan dengan emisi energi karena perpindahan elektron dalam suatu model atom.

sekarang, coba yang agak lebih canggih. kalau gw bisa menemukan sourcecode yang tinggal di-copypaste di internet untuk algoritma A*, misalnya. apakah itu salah? jelas tidak. algoritma tersebut adalah gagasan yang telah menjadi umum. demikian juga, tidak akan ada yang menyalahkan ketika kita menggunakan potongan code tersebut dalam kuliah Sistem Cerdas, misalnya.

tapi ada masalah kalau kita asal copy-paste code dalam mengerjakan matakuliah Dasar-Dasar Pemrograman. kenapa? karena memang objective-nya tidak demikian =). kecuali, kalau kita benar-benar membongkar code-nya, memahami algoritmanya, dan akhirnya (kalau mau, sih) membuat code sendiri yang dasarnya dari situ.

nah. apa maksud gw menuliskan segala hal di atas?

sebenarnya, kadang kita terlalu berpikir bahwa yang paling penting adalah ‘belajar untuk tahu’. padahal, kadang yang sebenarnya kita butuhkan adalah ‘belajar untuk mengetahui’. tentu saja, disesuaikan dengan objective kita dalam mempelajari sesuatu.

kalau kita sedang mendalami Fisika dan kita membuka catatan sekadar untuk mengetahui rumus cincin Newton dalam dualisme partikel-gelombang itu bentuknya seperti apa, menurut gw itu sah-sah saja. atau ketika ujian Kimia, dan kita membuka catatan untuk mengetahui apakah Lithium atau Natrium yang ada di bawah Hidrogen dalam unsur golongan IA, seharusnya tidak ada masalah.

yang penting, ketika terjun dalam proses yang sebenarnya (baca: di luar proses pembelajaran), kita tahu di mana kita harus mencari tahu hal tersebut. buka tabel kimia, misalnya. atau gunakan ensiklopedia fisika untuk melihat rumus cincin Newton. pakai search engine juga bisa. banyak, deh.

tentu saja, disesuaikan dengan objective masing-masing proses belajar. kalau dalam kimia, misalnya ketika kita diminta menjelaskan kenapa golongan IA bisa bereaksi hebat dengan air, maka tidak masuk akal kalau kita meminta untuk membaca buku sebentar. demikian juga, ketika kita diminta menjelaskan bagaimana cahaya bisa membentuk pita gelap-terang dalam percobaan interferensi, permintaan untuk pergi dan mencari di search engine jelas tidak relevan.

kenapa? jelas, kan. yang penting adalah pemahaman, bukan sekadar tahu.

dan hal ini menjelaskan kenapa ketika kuliah Dasar-Dasar Pemrograman, mahasiswa tidak boleh menggunakan code buatan orang lain, tanpa pemahaman yang memadai. jelas, kan. objective dari kuliah tersebut adalah membiasakan dan meningkatkan pemahaman akan program dan sourcecode-nya.

tapi ketika kuliah Rekayasa Perangkat Lunak, mahasiswa dipersilakan sebebas-bebasnya untuk mencari referensi code. mau copy-and-paste code JavaScript atau PHP yang aneh-aneh untuk aplikasi sistem web-based pun silakan. itu karena objective-nya beda. objective-nya adalah mengantarkan hasil, bukan lagi pemahaman.

kadang, kita terjebak pada ‘keharusan untuk tahu’, bukan ‘tahu cara untuk mengetahui’.

misalnya begini. ketika ada orang bertanya, apa bedanya QuickSort dan BubbleSort, maka setiap mahasiswa Computer Science seharusnya bisa menjawabnya. tapi kalau ditanya contoh code-nya, silakan cari sendiri, banyak kok di internet. maksudnya, sesuai dengan level kita, kadang lebih esensial untuk ‘tahu cara mengetahui’ daripada ‘tahu sedalam-dalamnya’. tentu saja, lebih baik lagi kalau bisa tahu dua-duanya =).

(note: BubbleSort dan Quicksort adalah dua dari banyak metode yang digunakan untuk mengurutkan data dalam programming. keduanya menerapkan pendekatan yang berbeda dalam melakukan pengurutan data)

sama halnya ketika kita bertanya kepada seorang dokter, bagaimana proses perubahan energi dalam tubuh manusia, maka kemungkinan akan dijawab dengan ‘proses glukosa, daur Krebs, dan transpor elektron’ dan sebagainya. tapi coba tanya bagaimana proses transpor elektron, besar kemungkinan kita akan disuruh membaca buku kuliah kedokteran.

kadang, sesuai dengan level kita, kita jadi tidak perlu lagi ‘terlalu paham akan sedikit hal’, tetapi lebih ke arah ‘paham banyak hal secara umum’. tapi sekali lagi, kalau bisa menggabungkan keduanya sih lebih baik.

tentu saja, kata kuncinya adalah pemahaman, bukan sekadar tahu.

jadi, apa yang salah dengan membuka catatan untuk melihat rumus Fisika atau Kimia, atau melihat tanggal lahir Presiden Roosevelt, misalnya?

menurut gw sih, sebenarnya tidak ada. yang penting, jangan sampai melanggar objective dari proses belajar itu sendiri.