Seri Buku Micro Adventure

Ini cuma kisah singkat mengenai seri buku cerita yang saat ini mulai disukai Jonathan: Micro Adventure. Seri ini diterbitkan di tahun 1980-an  oleh Scholastic dan cukup terkenal pada masanya.  Satu hal yang menarik dari buku-buku ini adalah: di dalamnya ada program dalam bahasa BASIC yang bisa diketikkan dan merupakan bagian dari cerita.

Jonathan sedang menyalin kode dari buku ke QBasic di Dosbox
Jonathan sedang menyalink kode dari buku ke QBasic di Dosbox

Buku pertama yang selesai dibaca Jonathan adalah Space Attack, buku ini terbit tahun 1984.

Di awal cerita buku pertama ada pesan rahasia yang harus didekrip. Sebenarnya bisa didekrip manual (caesar cipher), tapi lebih menarik jika didekrip dengan program.

Program yang diberikan dapat berjalan di berbagai komputer yang ada di jaman itu jika ada tanda centang untuk platform tersebut, dan kadang diperlukan modifikasi untuk komputer tertentu dengan cara modifikasi diberikan di akhir buku.

Waktu saya kecil, saya tidak pernah tahu mengenai seri buku ini karena sampai 1986 saya tinggal di desa tanpa listrik dan baru punya komputer pertama tahun 1993.  Ketika mendengar mengenai seri buku ini beberapa tahun yang lalu, saya juga tetap tidak tertarik membacanya, dan saya pikir tidak akan menarik untuk anak modern seperti Jonathan yang saya sudah saya ajari  berbagai cara modern coding dengan Scratch, Scratch Jr, dan berbagai aplikasi coding di iPad. Di sini saya melihat kelemahan Scratch yang terlalu visual, sehingga kurang cocok menyelesaikan masalah sederhana seperti enkripsi di buku tersebut.

Tapi ternyata ketika saya sedang melihat (ulang) video Youtube The basics of BASIC, the programming language of the 1980s, Jonathan ikut melihat dan tertarik dengan buku yang ditunjukkan. Dia sangat bersemangat membaca bukuya dan mengetikkan kode program dalam buku (versi PDF) ke QBasic yang saya jalankan di Dosbox di Linux, menjalankan programnya, merasa senang melihat outputnya benar, dan juga tertawa riang ketika ada lelucon yang dienkripsi.

Sebagai catatan, saya memilih QBasic karena tahu kompatibilitasnya dengan BASIC di IBM PC (sehingga kode dalam buku tersebut pasti jalan). Meskipun ada proyek open source QB64 yang katanya kompatibel dengan QBasic (yang berarti kompatibel dengan BASIC di IBM PC) tapi karena menggunakan mode kompilasi (bukan interpretasi), maka terasa sangat lambat, dari mulai menekan F5 sampai program berjalan bisa butuh 5 detik, sedangkan menekan F5 di QBasic program langsung berjalan instan.

Ada juga bagian program yang agak rumit untuk Jonathan (usia  7 tahun) yang tidak bisa saya jelaskan secara singkat, misalnya frequency analysis (yang dalam implementasi programnya butuh pemahaman konsep array). Akhirnya setelah beberapa program, dia menyelesaikan membaca isi bukunya dalam beberapa jam, dan setelah itu baru meneruskan lagi mengetik programnya.

Ada hal yang menarik di salah satu program yang diberikan, pembaca diminta untuk “membaca” atau “Reverse engineer” sebuah program. Dari program singkat berikut diminta untuk mencari tahu input apa yang perlu diberikan untuk bisa “membuka Airlock” dan untuk mengirim “S.O.S”.

Ternyata bahasa BASIC ini memang cocok untuk pemula, karena Jonathan yang belum pernah saya ajari BASIC bisa langsung memahami input apa yang harus diberikan. Bahasa BASIC ini memang kurang terstruktur, dan kalau direnungkan, masalah struktur dalam BASIC tidak terlalu jauh dari assembly (dengan jump/goto).

Saya tidak tahu berapa buku yang akan diselesaikan oleh Jonathan (ada 10 buku dalam seri Micro Adventure), tapi saya cukup terkesan bahwa buku terbitan 34 tahun yang lalu ini masih dianggap menarik oleh anak modern seperti Jonathan.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.