Ketika Anak Berumur 15 Tahun Belajar Pemrograman C di Linux

Bismillahirrahmanirrahim. Kemarin malam (19 Mei 2015), saya mengajarkan pemrograman C dasar kepada adik saya. Umur adik saya 15 tahun. Dia masih duduk di bangku kelas 2 SMP. Saya ajarkan bab pertama dari buku rahasia saya. Tentu saja saya mengajarkannya di Linux dengan gcc walaupun masih dengan bantuan Geany. Demikian apa yang dia pelajari.

Yang Pertama Saya Ajarkan


Yang pertama saya ajarkan adalah motivasi bahwa dengan menguasai pemrograman kamu akan menguasai komputer. Kedua, saya ajarkan pemahaman bahwa yang dilakukan dalam pemrograman adalah tindakan 1) berpikir 2) membuat langkah-langkah kerja (algoritma) 3) menuliskan kode 4) compiling 5) linking. Ketiga, saya ajarkan bahwa pemrograman membutuhkan perangkat lunak kompiler untuk melakukan compile dan saya perkenalkan dia dengan gcc. Keempat, saya ajarkan bahwa saya mengajarkan bahasa C dan saya katakan bahwa dengan menguasai C kamu akan bisa menguasai bahasa-bahasa pemrograman lain seperti C++, Java, Python, dan lain-lain.

Mengenai Buku Rahasia Saya


Buku rahasia saya adalah buku pemrograman C praktikal. Buku satu-satunya di Indonesia ini yang berhasil memahamkan orang seperti saya dengan bahasa C. Buku itu berbasis Turbo C. Saya tidak mengajarkan kepada adik saya Turbo C, tetapi saya ajarkan GNU gcc. Sengaja saya katakan bahwa Turbo C itu komersial sedangkan gcc itu gratis. Saya berusaha memahamkan bahwa dia harus menggunakan perangkat lunak legal dan mampu bertahan dengannya semenjak awal dia belajar. Buku itu berisi banyak source code yang tidak sesuai dengan standar C internasional seperti masih disertakannya void main() atau masih dipakainya fungsi-fungsi nonstandar semisal getch() (fungsi yang ada di dalam conio.h bukan di dalam pustaka glibc). Buku itu walau seperti itu, tetapi ditulis dalam Bahasa Indonesia. Seluruh buku itu adalah kode sumber-kode sumber praktis. Bahasa yang dipakai pun sederhana dan mudah dimengerti. Barang siapa mempelajarinya akan memahami bagaimana C bekerja. Saya sendiri merasakan manfaat yang begini besar dari buku ini. Manfaat yang tidak saya dapatkan dari buku-buku pemrograman yang lain. Siapa pun Anda yang sempat berjumpa saya, silakan minta buku ini. Saya akan berikan kepada Anda gratis in syaa Allah.

Listing Pertama


#include 
// Tuesday, May 19, 2015 09:23 PM
int main()
{
printf("assalamualaikum!\n") ;
return 0;
}

Listing Kedua


#include 
/* Tuesday, May 19, 2015 09:32 PM */
int main ()
{
printf("asalamualaikum") ;
getchar();
return 0;
}

Listing Ketiga


#include 
//Tuesday, May 19, 2015 10:07 PM
int main ()
{
int jumlah, selisih ;

jumlah=123+456 ;
selisih=456-123 ;

printf ("jumlah dari 456 dan 123 adalah %d\n\n", jumlah) ;
printf("selisih dari 456 dan 123 aalah %d\n", selisih) ;
getchar () ;
return 0;
}

Skrinsot


Dengan editor Geany inilah dia belajar.

adik-amri
Geany, IDE di Linux untuk memrogram C
adik-amri1
GNOME Terminal, penayang output eksekusi program

Pemahaman Dia


Dia mampu memahami seluruh perkataan saya. Dia mampu memahami penjelasan saya di setiap baris yang dia ketik. Dia mampu menerima bahwa di dalam pemrograman ada proses compiling dan linking. Dia mampu memahami apa itu kode \n dan %d. Dia mampu memahami bahwa printf() adalah sebuah fungsi dari dalam header stdio.h. Beruntungnya, dia masih kelas 2 SMP. Pemahaman dia dalam hal ini tergolong bagus untuk ukuran anak SMP. Saya tidak bisa mengatakan sempurna karena yang saya ajarkan baru awal dari yang paling awal.

Adik saya bisa memahami C preprocessor command #include. Dia paham apa gunanya. Saya jelaskan kepadanya bahwa kode ini bertugas memanggil kompiler untuk menyertakan stdio.h setelahnya yang ditulis dalam kurung < >. Kenapa stdio.h dipanggil? Dia juga paham karena printf() dipakai. Saya menjelaskan bahwa sudah ada orang yang menulis kode fungsi printf() sebelum kita dan orang itu meletakkannya di dalam stdio.h. Dia paham.

Saya tidak akan membiarkan adik saya hanya kenal klik tanpa kenal adanya proses compiling dan linking. Dua pemahaman yang barangkali langka didapatkan di dunia akademika Indonesia.

Kesalahan-Kesalahan Dia


Dia sempat salah meletakkan kurung kurawal { pada posisi di atas #include. Dia sempat salah meletakkan titik koma setelah return 0. Dia sempat lupa angka 0 pada return 0. Untuk orang seperti saya, sangatlah menarik memperhatikan bagaimana psikologi manusia berperan di sini. Sebuah proses pembelajaran. Sebuah proses pendewasaan. Saya membiarkan dia salah. Saya membiarkan dia merasakan error. Saya menginginkan dia untuk mengalami. Ketika dia mengalami, dia mencari kesalahan dirinya. Di situlah peran saya menunjukkan jalannya.

Komentar Saya


Saya – Saya sendiri ingin menguji sejauh apa saya mampu mengajarkan C dasar kepada anak-anak. Kebetulan anak yang mau diajar berusia kelas 2 SMP. Sedangkan pemrograman C dasar minimalnya diajarkan di tingkatan sekolah tinggi. Ternyata sampai di sini, saya mampu mengajarkan C kepada adik saya. Keberhasilan ini sebenarnya tidak lepas dari kemudahan buku rahasia itu sendiri dan kemauan belajar si adik. Buku itu memang mudah dan memudahkan. Adik saya juga tergugah semangatnya untuk belajar (gara-gara saya bilang bahwa saya ingin jadikan kamu yang terbaik di bidang komputer di sekolahmu). Walau sebenarnya yang paling berperan di pengajaran ini adalah tata bahasa yang saya gunakan untuk mengajarinya.

Dari pengalaman mengajar kali ini, saya katakan kepada Anda bahwa tidak ada masalah dengan tingkatan usia atau gelar. Tidak ada yang boleh menghalangi seorang otodidak belajar. Yang paling penting adalah kemampuan Anda untuk menerjemahkan bahasa teknikal formal menjadi bahasa manusiawi sehari-hari. Dengan kata lain, kita harus memiliki kemampuan tata bahasa yang mampu memahamkan orang lain. Dalam pengajaran ini, otodidak di sini adalah saya. Saya belajar bagaimana mengajar dan bagaimana menerjemahkan. Sementara adik saya harus “akademik” yakni belajar C kepada saya. Adik saya belajar bagaimana cara menerima. Saya ajari dia dasar-dasar karena saya ingin dia menjadi otodidak yang hebat. Nantinya, tidak perlu saya mengajarkan bab-bab lain lagi. Dia akan mampu belajar sendiri. Itu semua tentang belajar.

Dia – Saya juga ingin menguji sejauh apa anak-anak bisa memahami pelajaran yang katanya untuk sekolah tinggi. Bagi saya, aturan pemrograman hanya untuk sekolah tinggi tidak ada. Sampai di sini saya benar. Dia tidak mengalami kesulitan pada hari pertamanya. Walaupun saya sendiri memilih mengajarkannya dari GUI (Geany) dahulu. Saya ajarkan dia untuk klik tombol Compile. Bagi ahli pemrograman, bisa jadi keputusan klik itu teranggap semacam “dosa” akan tetapi saya yakin tata bahasa untuk mengajarkan Bahasa Indonesia bagi sekolah tinggi itu berbeda dengan bagi anak-anak SD. Saya menggunakan tata bahasa saya di sini untuk adik saya. Yakni tata bahasa GUI. Dan dia langsung memahaminya.

Hal yang menarik dari pengajaran ini adalah dia tampak begitu senang ketika sampai pada … %d”, jumlah … karena dia paham maksudnya. Dia melihat hasil kompilasinya pada GNOME Terminal lalu saya ajak dia membandingkannya dengan kode sumber yang dia ketik. Mimik wajahnya ketika memahami hal ini sangat mengesankan.

Bagaimana dengan Anda?


Jika Anda baru memulai Linux, tidak ada yang lebih patut dikerjakan selain menguasainya. Jika Anda telah mahir, ajarkanlah. Jangan merasa mustahil mengajarkan Linux kepada orang awam. Kepada anak-anak sekalipun. Lebih dari itu, jika Anda mahir Linux dan mampu memrogram, ajarkanlah keduanya. Berapa banyak orang yang dianugerahi kemampuan itu di Indonesia? Mari mengajar. Mari berbuat baik.

Iklan

29 thoughts on “Ketika Anak Berumur 15 Tahun Belajar Pemrograman C di Linux

  1. Kalau anak sekolah, bisa terus dilanjut dengan mengerjakan problemset dari TOKI atau acm-icpc, sekalian persiapan kalu pengen ikut olimpiade sains. Memang nggak secara langsung mengajarkan hal praktis seperti membuat program aplikasi, tapi pengetahuan yang didapat disana bisa diaplikasikan untuk membuat program yang lebih efisien.

  2. Beruntung bngt adik anda punya kakak sperti anda, usia saya sekarang 16 tahun dan masih proses belajar bahasa c otodidak tanpa dukungan siapapun, saya belajar karena suka.keluarga saya tdk memerdulikan apalagi mendukung cita” saya. saya harus berjuang sendiri untuk jd programmer. Jd iri nih sama adik anda…Trims

    • Janganlah Anda bersedih. Saya sangat senang melihat ada anak yang belajar pemrograman, karena itu sangat langka. Saya mendukung Anda. Hubungi saya di teknoloid@gmail.com, katakan saja apa yang ingin Anda katakan, biar saya memberikan yang saya bisa. Sekali lagi, bila tidak ada orang yang mendukung pembelajaran ilmu komputer Anda, biar saya menjadi satu-satunya. Jangan pernah menyerah. Anda tidak sendirian.

  3. Assalaamu’alaikum mas Ade..

    Semoga mas Ade selalu dalam penjagaan Allah…

    Saya punya anak 5 orang, yang 2 laki-laki sudah berumur 8 dan 7 tahun. Mereka sudah memulai menjalankan Ubuntu + Ncomputing yang saya hubungkan dengan laptop saya. Mereka terbiasa memainkan GCompris dan Klavaro di awal-awal dia menggunakan Ubuntu. Pertanyaan saya bagaimana saya bisa mengarahkan anak-anak untuk belajar pemrograman? Apa kiat-kiat mas Ade untuk membina anak-anak tersebut… ?

    Jazakumullahu khairan

    Abu Abdul Muhaimin

Mohon jangan gunakan emotikon:

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s