Hobi Elektronik

Sejak kemarin saya baca-baca lagi isi blog ini yang sudah dimulai sejak 2004, dan ternyata sepertinya banyak hal dalam hidup ini yang tidak dituliskan. Nah supaya nggak lupa, sekarang mau nulis soal hobi baru: elektronik, atau tepatnya lagi elektronik digital. Dari dulu sebenarnya saya ingin belajar elektronika tapi nggak pernah dapet pelajarannya waktu SD, SMP ataupun SMU, jadi dasar elektronika yang saya punya cuma dari kuliah Fisika. Di ITB, dulu di Teknik Informatika tidak diajarkan sama sekali dasar elektronika (nggak tau ya sekarang setelah bergabung dengan elektro menjadi STEI).

Awal dari keinginan belajar elektronika lagi adalah karena kemalasan. Kami tinggal di sebuah apartemen yang kuno (fasilitas perusahaan, bukan milik sendiri). Sebenarnya isi apartemennya sangat bagus, kecuali AC yang harus dikendalikan langsung dari thermostat, tidak bisa via remote. Membeli thermostat yang lebih modern harganya cukup mahal (di Internet sekitar 1 juta rupiah), dan mungkin tidak kompatibel dengan AC yang sudah ada. Jadi saya ingin bisa mengendalikan remote tersebut dengan memodifikasi thermostat yang sudah ada. Saya hanya ingin bisa menyalakan/mematikan AC dari tempat tidur (tidak perlu bisa mengatur suhu).

Dengan berbekal kit dari buku berbahasa Thai, awal bulan lalu saya mulai belajar elektronika. Karena saya belum bisa baca bahasa Thai (paling cuma mengerti beberapa kata saja), saya belajar dengan melihat diagram, foto, dan source code. Kit dari buku itu menggunakan microcontroller PIC16F627A, dengan beberapa komponen (transistor, resistor, kapasitor, motor, LED, LDR, thermistor, potensiometer) dan disertai dengan programmer (disebut juga downloader/flasher) dengan serial port. Sebuah breadboard kecil juga disertakan, jadi saya tidak perlu menyolder ketika mulai belajar (breadboard adalah papan kecil dimana kita bisa menancapkan/melepaskan komponen dengan mudah).
Lanjutkan membaca “Hobi Elektronik”

Tutorial membuat interpreter/compiler

Rasanya banyak sekali orang yang ingin bisa membuat interpreter dan/atau compiler. Sejak setahun yang lalu saya sudah berniat menuliskan artikelnya, tapi selalu terdistract hal yang lain. Nah kemarin saya sempat membereskan tulisan yang belum selesai itu, sudah ada 5 bagian. Ternyata agak sulit menuliskan penulisan compiler dalam format tutorial, karena saya harus berusaha menjelaskan isi program bagian demi bagian.

Tutorial ini semoga bisa berguna untuk Anda yang ingin membuat bahasa pemrograman baru, baik yang general purpose, maupun yang domain specific.

Untuk Anda yang berminat membaca, silahkan kunjungi http://yohan.es/compiler/. Kritik, saran, dan komentarnya ditunggu.

Nusa jadi Nusaptel

Sudah lama saya tidak mendengar kabar bahasa pemrograman Nusa. Ternyata sekarang namanya berubah (lagi) menjadi Nusaptel. Dulu di awal namanya adalah batak, lalu berubah menjadi nusa, dan sekarang menjadi nusaptel.Saya juga tidak tahu kenapa namanya berubah, atau apa arti akhiran ptel itu. Satu hal yang jelas: bahasa ini katanya mulai diajarkan di training/tutorial di berbagai universitas (kalau tidak salah di antaranya adalah ITS, UKSW, dan Amikom). Training diberikan ke dosen, dan bukan ke mahasiswa. Saya pun tidak tahu versi compiler mana yang diberikan di training tersebut, karena menurut rekan yang ikut milis nusa, belum ada compiler baru yang dirilis.

Kegiatan ini rupanya didukung oleh Depkominfo. Bahkan ternyata ada lelang pengadaan library untuk nusaptel senilai 280 juta rupiah. Kalau dilihat dari jadwal di situs Sistem e-Pengadaan Pemerintah, proyek ini seharusnya sudah berjalan.

Saya sendiri masih agak heran dengan dukungan Depkominfo ini. Apakah boleh seseorang membuat produk (dalam hal ini compiler Nusaptel), lalu minta bantuan pemerintah untuk mempromosikan dan bahkan mendanai untuk membuat librarynya? perlu dicatat Nusaptel ini tidak open source, bahkan tidak tersedia gratis secara umum, perancang bahasanya pun terang-terangan menyatakan bahwa bahasa ini nantinya akan komersial. Untuk mendownload compiler nusa saja, kita harus mendaftar jadi anggota milis (perlu mendapat persetujuan moderator dan bisa ditendang keluar jika membuat kritik, seperti yang terjadi pada saya). Sampai saat ini pun belum ada sama sekali paper baik nasional maupun internasional yang ditulis mengenai bahasa Nusa, jadi produk ini merupakan produk proprietary.

Dalam salah satu komunikasi dinyatakan bahwa lambatnya perkembangan bahasa nusa adalah karena tidak tersedianya dana. Jika itu benar, semoga dana yang diterima untuk pengembangan nusa tersebut bisa dimanfaatkan. Seharusnya 280 juta (yg sekarang setara dengan 27 ribu USD) itu cukup, sesuai dengan kutipan dari situs ini:

“Ridho bercerita pernah mencoba menyerahkan pembuatan translator ke pihak peneliti di AS. “Tapi biayanya mahal sekali berkisar US$10.000 – US$ 30.000 tergantung tipe translator yang diinginkan, apakah mau yang sederhana atau sampai yang mendukung GUI (Graphical User Interface-red). Saya tidak punya uang sebanyak itu,” paparnya.”

Kita tunggu saja bagaimana kelanjutan bahasa ini, apakah benar bisa menjadi bahasa yang besar dengan adanya dukungan pemerintah. Atau justru hal ini akan membuktikan bahwa bahasa tersebut belum layak untuk dikembangkan.

Cinta Programming

Sebagian orang di dunia ini cukup beruntung, mereka bisa menemukan sesuatu yang dicintai dalam hidupnya, dan bisa hidup melakukan hal yang dicintainya. Umumnya mereka ini orang-orang seni, pemusik yang cinta musik, pelukis yang cinta lukisan dsb. Tapi dalam hidup ini saya juga sudah melihat orang-orang yang mencintai bidang-bidang lain. Professor matematika yang mencintai matematika, dosen yang mencintai mengajar, dsb. Saya menggunakan kata cinta, karena lebih kuat dari kata “suka” (menurut KBBI, cinta artinya “suka sekali”).

Saya beruntung dulu bisa berkenalan dalam dunia programming sejak umur 13 tahun. Sejak dulu bisa memprogram BASIC, saya senang sekali bisa membuat aneka macam program. Dan sejak 15 tahun yang lalu sampai sekarang saya senang bisa selalu memprogram sesuatu. Saya sering kasihan kalau melihat orang yang banyak komplain tentang pekerjaannya, yang menganggapnya jadi beban. Saya menyarankan orang-orang, terutama yang masih muda, untuk mencari hal-hal yang dicintainya, daripada nanti mengeluh sepanjang hidupnya.

Ada begitu banyak pengalaman programming yang ingin dituliskan, tapi sepertinya sampai sekarang belum cukup waktu. Tapi kalau tidak segera dimulai, makin banyak pengalaman yang terlupakan. Bu Inge pernah menyarankan membeli domain cintaprogramming.com dan sudah saya beli, tapi sampai sekarang belum diisi. Dulu rencananya semua orang yang cinta programming bisa meminta sub domain untuk diisi (misalnya http://yohanes.cintaprogramming.com), tapi sampai sekarang belum sempat diurus karena masih terlalu banyak memprogram yang lain 😛

Semoga tahun ini situs tersebut bisa aktif diisi.

Mari beralih ke compiler baru

Saya gemes, sampai tahun ini (2008) saya melihat masih ada dosen yang menyarankan mahasiswanya memakai Visual Basic 6, Turbo C++ 3.0, Turbo Pascal 7, atau software sejenis yang sudah sangat ketinggalan jaman. Saran ini bisa dalam bentuk praktikum di kelas, atau untuk tugas akhir.

VB 6 versi terakhir adalah tahun 1998, dan sudah tidak disupport lagi (untuk siapapun juga) oleh microsoft pada tahun 2008. Turbo C++ 3.0 dirilis tahun 1991 (17 tahun yang lalu), dan Turbo Pascal 7 dirilis tahun 1992 (16 tahun yang lalu).

Mungkin sebagian akan bertanya, mengapa harus pakai software yang baru? yang lama kan masih bisa dipakai?. Ada banyak alasan mengapa sebaiknya pindah ke compiler yang baru.

Alasan pertama adalah: pembajakan. Software-software tersebut memang sudah tua, dan tidak dijual lagi, tapi bukan berarti boleh disebarkan secara bebas. Perusahaan-perusahaan pembuat software itu masih memiliki hak cipta atas software-software tersebut. Dulu mungkin belum banyak alternatif pengganti compiler, tapi sekarang sudah ada banyak. Jika bisa memakai yang legal, kenapa harus membajak?. Turbo C++ bisa digantikan dengan GCC, atau jika perlu IDE, bisa memakai Micosoft Visual C++ versi gratis. Turbo Pascal bisa digantikan dengan FreePascal, atau jika perlu IDE bisa memakai Turbo Delphi Explorer (Turbo Delphi versi gratis) Lazarus. Visual Basic bisa digantikan dengan Gambas, atau Visual Basic .NET (versi gratis).

Lanjutkan membaca “Mari beralih ke compiler baru”

Pengalaman Dengan Open source

Saya melihat saat ini mulai banyak orang Indonesia, termasuk yang levelnya awam mulai menggunakan Linux. Tapi saya lihat juga masih banyak orang dan mahasiswa yang masih sangat berfokus ke produk Microsoft atau entitas komersial lainnya. Mungkin salah satu alasannya adalah lebih mudah mencari uang dari produk-produk komersial tersebut. Sebagai orang yang lama memakai produk open source, dan terlibat di dalamnya, saya mau cerita sedikit mengenai pengalaman saya dengan open source.

Lanjutkan membaca “Pengalaman Dengan Open source”

Kritik Bahasa Pemrograman Nusa

Setelah sekian lama tidak mendengar soal Bahasa Batak, ternyata namanya sudah berganti menjadi Bahasa Nusa. Ternyata bahasa ini masih mirip/sama dengan bahasa Batak, dan saya punya banyak kritik untuk bahasa tersebut. Kritiknya sudah saya coba sampaikan langsung ke Pak Bernaridho Hutabarat melalui email, tapi responsnya sangat negatif. Padahal dia sendiri menulis di berbagai media agar kita tidak menerima apa yang disodorkan pada kita, tapi kita harus kritis. Nah saya sudah merangkum kritik-kritik saya dalam sebuah tulisan. Ini kritik teknis, bukan sekedar menjelek-jelekkan. Saya sudah berusaha membaca semua dokumen yang dipublish mengenai Nusa dengan teliti, dan setahu saya sampai saat ini belum ada yang melakukan kritik secara teknis.

Anda bisa membaca tulisan mengenai kritik Bahasa Nusa di:

http://tinyhack.com/kritiknusa.html

Merdeka!!!