Category Archives: Teknologi Informasi

Aplikasi Jaga: Pencegahan Korupsi

jaga-logoKemarin kami berdiskusi tentang aplikasi yang namanya Jaga. Pada dasarnya aplikasi ini bertujuan untuk mencegak korupsi melalui keterbukaan informasi. Keberadaan informasi yang tersedia di aplikasi Jaga ini dapat membuat masyarakat ikut berpartisipasi dalam membantu menjaga penyalahgunaan-penyalahgunaan.  Ada informasi tentang anggaran dan ketersediaan fasilitas di sekolah, rumah sakit, puskesmas, perijinan, dan tidak menutup adanya informasi-informasi lainnya.

jaga-screen

Berikut ini adalah salah satu contoh tampilan dari aplikasi Jaga yang tersedia untuk Android dan iPhone. Kita bisa melakukan drill-down untuk mencari data yang lebih rinci.

Secara teknologi, di belakangnya menggunakan konsep ESB (Enterprise Service Bus) yang diimplementasikan menggunakan WSO2. Nampaknya saya bakalan mengajak developer-developer untuk menggunakan standar ini agar dapat saling berkomunikasi. Dia bisa menjadi platform, bukan sekedar aplikasi saja.

Secara umum aplikasi ini bagus, namun ada beberapa permasalahan yang kemarin kami diskusikan. Masalah yang utama adalah bagaimana mengajak komunitas untuk menggunakan platform ini sebagai media untuk edukasi dan pencegahan korupsi? Komunitas mana saja yang perlu diajak untuk menggunakannya secara intensif?

Ada pertanyaan tentang penggunaan artis atau buzzer untuk mempromosikan sebuah produk atau layanan. Sebetulnya ini hal yang biasa, tetapi gara-gara ada banyak demo dengan pendemo bayaran maka dikhawatirkan image penggunaan artis / buzzer ini sama saja dengan pendemo bayaran. hi hi hi. Apa pendapat Anda?

Hal lain yang menurut saya penting adalah bagaimana membuat warna (brand) yang positif, good news. Kalau orang mendengar kata korupsi atau anti-korupsi, biasanya konotasinya adalah negatif. Misal ada yang berita tentang tertangkapnya seseorang karena korupsi dan seterusnya. Bad news. Pendekatan good news menurut saya lebih menarik. (Sama seperti tulisan-tulisan saya di blog ini yang condong untuk good news. Berita-berita di luar sana kebanyakan menggoreng bad news. Males! Nyebelin. Boleh jadi memang bad news lebih menjual, tetapi good news lebih menghasilkan kultur positif di kemudian hari.)

Ayo kita coba aplikasi Jaga ini dan beri komentar Anda di sini.


Mengajarkan Debugging?

Bagaimana ya cara mengajarkan “debugging” (mencari sumber masalah dalam koding, sistem)?

Seringkali kita memberikan tutorial atau tugas tentang satu hal (kode pemrograman misalnya). Kemudian siswa mengikuti tutorial tersebut. Ketika ada masalah, tidak jalan, maka siswa kesulitan mencari sumber masalahnya. Ketika melapor, yang dilaporkan juga tugas tidak jalan. Nah ini membingungkan karena ada banyak hal yang membuat sebuah kode / sistem tidak jalan.

Hal yang sama juga terjadi dalam pengembangan sebuah sistem. Ketika ada masalah maka kita harus mencari sumber masalahnya dan memperbaikinya. Debugging.

Kemampuan debugging ini ternyata tidak dimiliki oleh semua orang. Namun semestinya bisa diajarkan. Bagaimana ya cara mengajarkannya yang baik?

Salah satu ide adalah dengan membuat soal yang memiliki kesalahan, kemudian siswa diminta untuk mencari kesalahan tersebut dan memperbaikinya. Semakin sering melakukan hal ini (mencari kesalahan dan memperbaikinya), mudah-mudahan meningkatkan kemampuan untuk debuggingnya.

Hal lain juga yang perlu diajarkan adalah bagaimana membagi-bagi sistem. Divide and conqueror. Ini bisa jadi topik terpisah.


Ketika Koding Menguasai

Semalam, pukul 1 malam (atau tepatnya pukul 1 pagi) saya terbangun. Teringat sebuah ide koding (pemrograman) LED yang saya buat beberapa waktu yang lalu. [Lihat tulisan saya tentang ini.] Saya ingin membuat sebuah kode lagi. Langsung saja saya tidak bisa tidur lagi.

Ada dua pilihan. Tetap memaksakan diri untuk tidur kembali (dengan risiko kehilangan ide dan juga tidur mungkin tidak nyenyak) atau bangun dan membuat kode, koding. Saya ambil pilihan yang terakhir. Langsung ambil laptop.

Sambil koding saya nyalakan TV. Eh, film yang sedang main adalah film horor. ha ha ha. Hmm … sudah malas saya mengubah channelnya untuk memilih film yang lain. Pikiran sedang fokus ke kode. Maka saya biarkan saja film horor itu tetap on. hiii. Koding berlanjut. Ternyata semangat koding mengalahkan seramnya film horor. Baru kali ini saya tahu. ha ha ha.

Setelah sekitar setengah jaman koding, beres. Ide terimplementasi. Untungnya tidak terlalu banyak masalah di kodenya. Saya upload kode ke akun sementara saya untuk kemudian besok saya upload ke github. Baru bisa tidur kembali. Nyenyak.


Ngoprek IoT

Kata IoT – Internet of Things – sedang ngetop sekarang. Dimana-mana saya melihat kata ini sebagai bagian dari seminar, kompetisi, startup, dan seterusnya. Pokoknya seru saja. Nah, sayapun tidak mau ketinggalan.

Saya mencoba menggunakan Arduino UNO dan board buatan DycodeX untuk kode IoT ini. (Sebetulnya saya punya banyak board lainnya, tapi itu untuk cerita terpisah.) Selain board ini saya juga menggunakan LED board buatan ProcodeCG. Berikut ini adalah beberapa video yang saya buat untuk menunjukkan demo / contoh kode dengan board-board di atas.

Dalam dunia hardware, IoT, salah satu cara memulai atau mencoba adalah membuat demo “blinking LED”. Kalau di dunia software, ini adalah “Hello World” versi hardware. Biasanya sih blinking LED-nya hanya satu LED. Kali ini saya mencoba menggunakan beberapa LED biar lebih seru.

Video di bawah ini menunjukkan demo Knight Rider, yaitu LED yang bergerak dari kiri ke kanan dan sebaliknya. Nama ini diambil dari film seri Knight Rider (jaman dahulu dan versi barunya). Dalam film tersebut ada mobil cerdas yang bernama KITT. Kalau dia aktif, maka ada LED yang bergerak-gerak seperti ini.

Dalam video di bawah ini, saya membuat Knight Rider LED juga tetapi dengan menggunakan board Arduino UNO.

Video di bawah adalah demo untuk membuat LED seperti meter yang ada di radio (equalizer). Board yang digunakan adalah DycodeX ESpectro.

Oh ya, kode-kode untuk demo di atas dapat dilihat dan diunduh dari koleksi saya di github.com yaitu di: https://github.com/rahard/BRiot-stuff. Selamat ngoprek.


Indonesia Update 2016

Perjalanan saya ke Australia ini sebetulnya dalam rangka acara “Indonesia Update 2016” yang diselenggarakan oleh Australian National University (ANU) Indonesia Project. Topik dari acara tahun ini adalah Digital Indonesia. Itulah sebabnya saya diundang menjadi salah satu pembicara. Saya akan berbicara tentang “cyber security”.

Acaranya dilangsungkan di kampus ANU, di kota Canberra, selama dua hari. Presentasi saya adalah presentasi terakhir di hari terakhir. (Ini ada keuntungan tersendiri, yaitu saya bisa suka-suka saya. Meskipun tidak bisa sebebas yang saya pikirkan. hi hi hi.) Pembicara yang lain keren-keren juga.

p_20160917_063951-01-jadwal

Peserta dari acara ini ternyata sangat banyak. Ruangan yang digunakan, sebuah teater, berukuran hampir 500 orang. Dan peserta yang datang banyak sekali. Hampir memenuhi ruangan. Berarti mendekati 500 orang.

Di hari pertama saya hanya mendengarkan. Bayu pembicara kedua mengidekan situasi politik di Indonesia seperti trilogi start wars. Dias (lupa di sesi berapa) juga menyinggung soal star wars. Akhirnya saya putuskan untuk menutup acara tema star wars; the return of the Jedi. ha ha ha.

cshi2hhumaa-wjv-jedi

the return of the (code) jedi

Tadinya saya mencari apa yang bisa dipakai untuk baju (dan lightsaber) untuk manggung. Gak nemu. Akhirnya saya putuskan untuk menggunakan hoodie saja. Jadilah seperti foto di atas. Lumayanlah. Tema Star Wars terjadi juga. hi hi hi.

p_20160917_130953_bf-folks-0001

Foto para pembicara sesi terakhir. Potret sebelum bubar

Di kampus ini saya menginap di University House, semacam hotel / dorm untuk tamu-tamu dari universitas. Tempatnya sangat dekat dengan ruang acara. Jadi tidak perlu transportasi. Tinggal jalan 2 menit dari kamar ke tempat presentasi. Tempatnya asyik juga. [foto-foto menyusul]

Canberra ini ternyata masih dingin juga. Harusnya sih temperaturnya sudah naik tetapi masih dingin. Setelah acara selesai, hari Minggu di kampus ini kosong banget. Sepiii. [foto2 menyusul, lagi] Canberra, meskipun ibu kota, ternyata kecil dan sepi. hi hi hi.


Judul / Topik Thesis / Penelitian

Minggu ini mulai banyak mahasiswa berdatangan untuk mencari topik penelitian & thesis S2 mereka. Berikut ini adalah beberapa topik yang saya tawarkan. Deskripsi dari masing-masing topik mungkin belum terlalu rinci, tetapi mudah-mudahan penjelasan ini masih dapat memberikan bayangan. Topik besarnya adalah security & big data.

  1. Anonimity + eVoting + Visual Cryptography ID. Topik ini melanjutkan disertasi dari I Made Ardhana (softcopy disertasi sedang saya telusuri dan akan diupload di web site). Fokus kepada implementasi ide-ide yang ada di dalam disertasi tersebut. Ada beberapa design decissions yang harus diambil dalam implementasinya beserta pembaharuan teorinya. Titik beratnya kepada programming. (Ada beberapa snippet code yang sudah saya buat sebagai proof of concept.) [Sudah ada rencana 1 mahasiswa yang memilih ini. Masih dapat ditambah khususnya untuk sisi attack-nya.] Untuk aspek teorinya, pengukuran tingkat anonimitas, juga sedang mencari mahasiswa. Namun yang ini lebih banyak aspek matematisnya. Jika menyukai matematika (atau memang mahasiswa matematika), bisa memikirkan topik ini.
  2. Stegokripto. Meneruskan thesis dari Almaarif (lihat budi.rahardjo.id bagian students). Pencarian kode yang berbeda antara data dan noise. (Coding theory. Mencari kode yang orthogonal terhadap noise. Ide on-curve dan off-curve pada Elliptic Curve juga dapat dipakai.) Pada thesis terdahulu proses pembedaan kode dan noise dilakukan dengan menggunakan marker tertentu. (Proses pendeteksian dapat dilakukan dengan sliding window, atau bahkan matriks. Belum dilihat aspek kinerjanya.) Kode terdahulu juga dapat lebih disempurnakan sehingga aplikasi menjadi lebih integrated. (Sebelumnya pecah-pecah menjadi beberap aplikasi.)
  3. Mekanisme pengamanan program chat (Signals / dahulu TextSecure, WA, dll.) dengan menggunakan Curve 25519. Thesis memahami protokol yang digunakan dan melakukan re-implementasi di program Open Whisper Systems. (Ini juga dapat menjadi topik thesis di Matematika.)
  4. Cryptocurrency. Block chain. Ini adalah konsep di belakang Bitcoin. Memahami dan membuat protototipe sebuah digital money. Mengembangkan teori uang digital.
  5. Secure phone. Beberapa komponen dari konsep secure phone, yaitu authentication module (menggunakan SAM). [Sudah ada 1 mahasiswa yang mengerjakan ini.] Ini bagian besar dari disertasi Virtual Trusted Machine (mahasiswa S3: Raidun). Beberapa kemungkinan implementasi dari ide secure phone dengan menggunakan DSP board.
  6. Proteksi DNS terhadap DoS attack. [Sudah ada 1 mahasiswa yang mengambil ini.] Fokus kepada teknis. (Sementara untuk aspek teori adanya di level S3.)
  7. Automated software security testing. Exploring several framework. [Sudah ada 1 mahasiswa yang memilih menggunakan Sully]
  8. Beberapa sub-topik dari disertasi mahasiswa saya. (Mahasiswa S3 akan memberikan beberap sub-topik dari penelitian [kesulitan] mereka saat ini yang dapat menjadi topik thesis.) Topik terkait dengan Graph-based Social Network Analysis (SNA), graph compression, big-data in SNA,  Distributed IDS (ant-colony), eLearning berbasis Jigsaw, …

Sementara ini daftarnya adalah seperti itu. Akan saya tambahkan dengan link-link lain agar lebih jelas lagi dalam update berikutnya.


Kewarganegaraan 1.0

Setiap bercerita di depan kelas, atau memulai presentasi, sering saya bercerita tentang perjalanan hidup saya. Saat ini saya sedang dalam versi “3.3”. Ha ha ha. Kayak software saja. Tapi begitulah. Penomoran ini sebetulnya terinsipirasi dari buku karangan Thomas Friedman. (Dia mengarang banyak buku, seperti “The World is Flat” and “The Lexus and Olive Tree”. Tentang globalisasi.)

Friedman bercerita bahwa globalisasi memiliki versi. Pada versi 1.0, globalisasi ditandai dengan keinginan orang untuk menjadi warga negara lain, yaitu warga negera besar seperti Amerika Serikat, Inggris, dan seterusnya. Ini jaman dahulu kala. Kalau kita baca sejarah Indonesia, ada banyak orang Indonesia yang ingin bergabung menjadi bangsa penjajah (“Londo”) karena sangat menyedihkan kalau kita menjadi warga negara terjajah. Ini kewarganegaraan 1.0.

Globalisasi 2.0 terjadi dan kewarganegaraan tidak penting lagi. Yang penting adalah tempat kita bekerja, yaitu multinational companies. Maka banyak mahasiswa yang ditanya kalau lulus mau kerja dimana, jawabannya adalah perusahaan besar seperti Schlumberger, IBM, Citibank, Microsoft, General Electric, dan seterusnya. Dalam perusahaan besar tersebut kewarganegaraan tidak penting lagi. Menjadi “warga negara” perusahaan besar menjadi lebih penting.

Globalisasi 3.0 terjadi karena adanya internet dan pemanfaatan teknologi informasi. Batas fisik dunia tidak ada lagi. Maka tidak penting lagi kewarganegaraan dan perusahaan tempat bekerja, tetapi yang penting adalah diri kita sendiri. You! Maknanya adalah yang lebih penting lagi adalah apa kontribusi Anda ke dunia. What’s your contribution to society.

Maka kalau sekarang kita masih meributkan tentang kewarganegaraan maka sebetulnya kita masih berada pada globalisasi 1.0. Sudah ketinggalan jaman.