Category Archives

412 Articles
Gotong Royong dan Data Terbuka Contoh Kasus Pemilu 2014

Gotong Royong dan Data Terbuka Contoh Kasus Pemilu 2014

Saya tertarik menulis tulisan ini setelah melihat geliat demokrasi negara ini yang tiba-tiba berlangkah-langkah lebih maju. KPU membuka data hasil pindaian formulir C1 secara daring. Ada yang panik dan ada yang memuji. Tetapi, saya tak tertarik dengan politik. Saya tertarik dengan ranah keilmuan saya, data terbuka (open data).

Omong-omong, saya mulai saat ini akan menggunakan istilah crowdsourcing dengan istilah gotong royong. Saya lihat cara kerja keduanya yang sama. Gotong royong dan crowdsourcing pada dasarnya menghimpun banyak pihak untuk mengerjakan sesuatu. Mereka juga sama-sama membentuk sebuah komunitas.

Dasar Hukum Keterbukaan Informasi Publik

Setelah saya cari mengenai tulisan saya tentang gotong royong, saya hanya melihat beberapa artikel lama tentang gotong royong. Kalau saya ingat, dulu saya mengira kita jauh tertinggal dari negeri lain. Southampton University sudah lama membuat sebuah laman terdedikasi untuk itu. Distrik Washington membuat sayembara untuk pemanfaatan data. Bahkan, ada inisiatif di Afrika untuk pemerintahan yang terbuka.

Ternyata, Indonesia sudah masuk ke fase ke-2 dari Open Government Partnership. Pemerintah Indonesia tercatat masuk pada bulan September 2011. Pantas tidak masuk radar saya. Waktu itu saya sudah menyerah dan pindah topik.

Setelah mencari tahu, ternyata UU Keterbukaan Informasi Publik (UU KIP) yang saya cintai itu merupakan payung hukum untuk Keterbukaan Informasi. Bukan hanya itu saja! Ternyata menurut ("Tentang OGI", 2012), ada beberapa landasan hukum tentang Pemerintahan yang terbuka:

  • UU No 14/2008 tentang Keterbukaan Informasi Publik
  • UU No 37/2008 tentang Ombudsman Republik Indonesia
  • UU No 25/2009 tentang Pelayanan Publik
  • Permendagri 35/2010 tentang Pedoman Pengelolaan Informasi di Kemendagri dan Pemda
  • PP 61/2010 tentang Pelaksanaan UU 14/2008
  • Perpres 26/2010 tentang Transparansi Pendapatan di Industri Ekstraktif

Dengan adanya akomodasi payung hukum demikian, maka tak heran apabila ada lembaga negara yang memilih untuk membuka diri kepada masyarakat luas. Melihat konsistensi tahun penerbitan, saya bisa bilang bahwa keterbukaan informasi publik dirancangkan dengan matang di Indonesia; bukan tiba-tiba ada seperti dikira beberapa kelompok.

Mengenai payung hukum, saya bukan seorang ahli hukum. Saya serahkan semuanya kepada kawan-kawan ahli hukum tentang pembahasan lebih lanjut aspek hukum keterbukaan informasi. Saya hanya tertarik kepada ranah ilmu saya, yakni apa yang disediakan oleh KPU untuk menunjang Keterbukaan Informasi Publik. Oleh sebab itu, tulisan ini akan lebih ke arah teknis TIK.

Sistem Informasi Penunjang KIP KPU

Salah satu yang memilih untuk terbuka adalah KPU. Dalam situsnya, KPU memberikan akses kepada umum untuk melihat salinan daring dari pindaian seluruh dokumen C1 yang ada. Menurut situs Pemilu 2014 KPU, KPU menyediakan sarana untuk mengunggah. Bahkan lebih dari itu, KPU menyatakan komitmennya dengan mengulang prosedur ini untuk Pemilu 2019.

Sidalih

Sistem besar pertama yang diterbitkan oleh KPU adalah Sistem Informasi Daftar Pemilih Tetap (Sidalih). Menurut Komisioner KPU, Ferry Rizkia Febriansyah, dalam wawancara (Berita Satu News Channel, 2013), sistem informasi ini merupakan sistem informasi pertama di Indonesia yang berfungsi untuk pelacakan perekaman data. Sistem pemilihan umum terbesar di dunia ini berfungsi untuk menyediakan akses informasi publik.

Dalam wawancara tersebut, dijelaskan cara kerjanya adalah sebagai berikut:

  1. KPU mengumpulkan data secara manual.
  2. Data dimasukkan ke dalam Sidalih.
  3. Data yang sudah masuk direkap dan diumumkan di KPU.
  4. KPU menerima perbaikan data dari masyarakat dan proses ini diulang kembali.

Artinya, sistem ini dibuat untuk merekam pekerjaan KPU/KPUD di Indonesia secara daring dan digital, bukan menjadi sistem utama. KPU masih menggunakan sistem manual dalam mengumpulkan data. Sistem ini untuk merekam kegiatan tersebut agar mudah diaudit.

Yang menarik dari kegiatan pengembangan Sidalih ini adalah tim KPU menyediakan sebuah akun khusus di Facebook sebagai perekam kegiatan mereka.[1] Dalam akun tersebut, tersedia sebagai berikut:

  1. Cuplikan antarmuka Sidalih.
    Screenshot User Interface Sidalih

    Screenshot User Interface Sidalih

  2. Daftar kegiatan-kegiatan yang dilakukan.
  3. Visi-misi KPU dalam membuka sistem.
  4. Informasi-informasi kegiatan yang dapat memberi gambaran tentang bagaimana peluncuran Sidalih.

Informasi terkadang memuat sinopsis informal. Lalu, karena menggunakan landasan media sosial, ada interaksi antar anggota tim KPU sekaligus yang cair. Gambar-gambar dan status yang digunakan secara kronologis membuat tampilan situs ini menyediakan informasi mengenai aktivitas KPU dalam menjadikan Sidalih.

Menurut (Pak et al., 2012, 1059-1072), penggunaan antar muka yang lebih nyaman dan intuitif meningkatkan kepercayaan pengguna. Penggunaan media sosial sebagai tampilan KPU dalam mengembangkan Sidalih setidaknya dapat dimanfaatkan untuk meningkatkan kepercayaan publik. Saya katakan setidaknya karena keberadaan laman ini tidak dipublikasikan. Saya tetap apresiasi karena ini langkah pertama KPU.

Mungkin dari satu akun inilah KPU selanjutnya meluncurkan layanan Helpdesk KPU yang akan dibahas selanjutnya dalam artikel ini. Satu hal yang menarik adalah kendati keterbukaan ini, media mencatat bahwa uji coba publik Sidalih ini terlambat.[2] Walau pun demikian sistem ini bisa jadi menjadi acuan berikutnya untuk sistem-sistem terbuka lainnya.

Sistem Informasi Penunjang Pemilu Presiden

Dari dokumentasi yang disediakan oleh KPU, mereka menyediakan Open API untuk memanggil hasil pindaian dokumen C1 per daerah.[3] Open API adalah sebuah terminologi untuk layanan web (web service) yang terbuka untuk siapa saja. Open API yang disediakan menggunakan teknologi RESTful dengan data yang dienkapsulasi dengan JSON.

Proses Layanan Permintaan borang C1 secara daring

Proses Layanan Permintaan borang C1 secara daring

Dari kode sumber, saya menemukan bahwa sistem ini menggunakan platform Indonesia Government 2.0 Platform  versi 0.3 sebagai penyedia teknologi Open API. Aplikasi ini yang menjalankan alamat pemilu2014.kpu.go.id. Pada penyediaan sumber daya gambar, KPU memisahkan ruang penyimpan pada peladen lain dengan alamat scanc1.kpu.go.id. Selanjutnya, mari kita bahas kedua peladen yang menyediakan data terbuka bagi Pemilu Presiden Indonesia.

Peladen Pemilu2014

Peladen Pemilu2014 merupakan sebuah peladen yang menyediakan repositori layanan. Salah satu layanan yang disediakan adalah permintaan pindaian C1. Saya pun penasaran dengan peladen yang digunakan oleh Pemilu2014. Saya melakukan pelacakan sederhana ke peladen ini untuk mendapatkan informasi. Caranya dengan membaca informasi kepala yang dikirimkan peladen tersebut.

$ curl -I -H 'Accept-Encoding: gzip,deflate' -L  pemilu2014.kpu.go.id/css_local/style.css
HTTP/1.1 200 OK
Server: Apache
Last-Modified: Sun, 13 Apr 2014 03:07:21 GMT
ETag: "d2d0563-1262-4f6e3dd847e46"
Cache-Control: max-age=86400
Expires: Thu, 17 Jul 2014 09:50:55 GMT
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Type: text/css
Content-Length: 1221
Accept-Ranges: bytes
Date: Wed, 16 Jul 2014 19:52:53 GMT
Age: 36118
Connection: keep-alive
X-KPU-Web-Accelerator: HIT

Nampaknya peladen OpenAPI ini menggunakan sebuah manajer tembolok. Dari beberapa rekan yang sempat melihat tampilan pesan kesalahan, nampaknya peladen ini menggunakan Varnish. Di belakang Varnish, digunakan Apache. Dari beberapa kesalahan sewaktu akses, muncul pesan kesalahan tidak dapat menghubungi MySQL. Jadi, sistem ini menggunakan MySQL sebagai basisdatanya.[4]

Peladen ScanC1

Dari contoh data yang dikembalikan oleh OpenAPI dari peladen Pemilu2014, nampaknya KPU mengunggah pindaian dokumen C1 dalam format gambar JPEG. Karena itu, satu dokumen C1 terdiri atas beberapa gambar JPEG.

Data yang terdiri atas banyak dokumen JPEG dapat dioptimasi dengan melakukan penyebaran data. Satu pertimbangan yang menurut saya perlu adalah pentingnya melakukan penyebaran data melalui CDN. Bila memang perlu, situs ScanC1 dapat dijadikan sebuah CDN yakni dengan membuat alamat tersebut ke beberapa IP. Atau, dapat juga terjadi pemartisian penyediaan gambar ke beberapa peladen dalam satu kluster ScanC1. Dua solusi ini dapat menjawab skalabilitas ScanC1 apabila nantinya akan dikembangkan lebih jauh.

$ curl -I -L scanc1.kpu.go.id/view.php?f=131006200100101.jpg
HTTP/1.1 200 OK
Date: Wed, 16 Jul 2014 19:30:54 GMT
Server: Apache
X-Powered-By: PHP/5.4.4-14+deb7u9
Content-Type: image/jpeg

Situs ScanC1 nampaknya dijalankan oleh Apache yang telah mendukung protokol HTTP/1.1. Sistem operasi yang digunakan adalah GNU/Linux Debian 7. Paket PHP yang dipakainya adalah PHP 5.4.4 yang agak tertinggal.

Ada baiknya versi PHP diperbaharui ke versi yang terbaru. Saat penulisan, versi terbaru adalah 5.4.4-14+deb7u12, sedangkan situs ini masih 5.4.4-14+deb7u9. Versi terbaru ini merupakan versi dengan tambalan keamanan terbaru sehingga tidak akan mempengaruhi apa-apa.

Rekomendasi Peningkatan

Berdasarkan analisis kedua peladen yang telah saya lakukan, ada beberapa rekomendasi yang dapat diberikan:

  1. Menggunakan NGINX lebih baik daripada menggunakan Apache2 HTTPd. Apalagi, konten-konten yang disediakan kebanyakan statik.
  2. Menghapus/memodifikasi/menyembunyikan informasi tentang sistem. Informasi ini bisa dipakai untuk mencari CVE spesifik yang dapat dipakai untuk mendobrak situs.
  3. Menggunakan DNS round robin untuk membagi-bagi beban peladen. Penggunaan CDN sangat berpengaruh pada optimasi.
  4. Untuk pemrograman, saya menyarankan menggunakan penyimpan data non-RDBMS seperti LDAP, Memcached, Redis, CouchDB atau MongoDB. Hal ini mengingat kebanyakan data yang disimpan hanya tuple, tidak perlu relasi.

Kalau mau lebih bagus lagi lebih baik pindah platform dari PHP ke platform yang lain. Yang paling masuk akal ke Rails (Ruby) atau Django (Python). Kedua ini lebih handal daripada PHP dalam menjalankan tugas.

Untuk optimasi ekstrim, kalau mau gunakan Erlang HTTP server (Erlang) atau Yaws (Erlang). Paling ekstrim, mungkin bisa menggunakan Wt (C++) atau CppCMS (C++). Atau, gunakan HipHop, kompilator buatan Facebook yang mengompilasi kode sumber PHP menjadi C++.

Sistem Lainnya

Selain Pemilu Presiden, Open API yang disediakan oleh KPU untuk diakses antara lain: ("About", 2014)

  1. Open Data Dapil:
    http://dapil.kpu.go.id
  2. Open Data Caleg:
    http://caleg.kpu.go.id
  3. Open Data TPS:
    http://tps.kpu.go.id
  4. Open Data Partai:
    http://partai.kpu.go.id
  5. Open Data C1:
    http://pemilu2014.kpu.go.id

Wow, ternyata ada banyak data yang dibuka KPU dalam semangat KIP.

Penggunaan Media Sosial Sebagai Perangkat Lunak Pihak Ketiga

Untuk sistem pelaporan, TIK KPU menyediakan dua situs media sosial sebagai HelpDesk-nya: Sebuah halaman di Facebook:

dan sebuah situs Tumblr untuk melaporkan hasil pindaian yang salah:

Memang aneh rasanya untuk menggunakan media sosial yang ditanam di luar negeri. Inilah menurut saya kejeniusan dari tim TIK KPU. Walau pun sebenarnya saya merasa untuk di masa mendatang sebaiknya menggunakan infrastruktur sendiri. Hal ini demi harga diri bangsa juga.[5]

Yang pertama adalah penggunaan Facebook sebagai tempat pengaduan. Zuckerberg, seperti yang dikutip oleh (José van Dijck, 2013, 199-215) menyediakan sebuah identitas tunggal yang transparan. Artinya, Facebook menganut paham yang tidak membedakan identitas dunia maya dan sebenarnya. Artinya, identitas Facebook adalah identitas asli yang dimiliki oleh seorang manusia.

Dengan penggunaan Facebook, KPU telah menyediakan sarana yang lepas dari anonimitas. Hal ini mengurangi vandalisme daring dan meningkatkan kolaborasi yang bertanggung jawab. Dengan jejaring teman sebagai salah satu nilai tingkat kepercayaan, admin KPU dapat saja melihat siapa yang berbicara sehingga meminimalisasi peran bot atau pun orang-orang yang tak bertanggung jawab.

Bagaimana dengan media sosial yang kedua, Tumblr?

Tumblr adalah sebuah media sosial untuk blogging. Infrastruktur dan antarmuka Tumblr didisain untuk membagikan media, terutama gambar. Biasanya, pengguna berbagi gambar di media sosial ini.

Menurut Sundwall dalam ("Why We Recommended Tumblr for the New USA.gov Blog", 2011), ada dua kriteria yang dijadikan persyaratan ketika organisasinya menganjurkan Pemerintah Amerika Serikat membuka situs di Tumblr:

  • Komunitas yang besar dan berkembang.
  • Antarmuka yang memudahkan untuk berbagi dan berinteraksi.

Tumblr menawarkan antarmuka untuk berbagi dan berinteraksi melalui fitur “liking” dan “reblogging”. Fasilitas “liking” adalah menandai sebuah artikel dalam blog Tumblr dengan sebuah tanda menyukai oleh seorang pengguna. Ketika seorang pengguna menandai dirinya menyukai artikel tersebut, maka para pengikutnya akan melihat tanda suka tersebut dalam aliran waktu sang pengguna.

Penggunaan fasilitas “reblogging” menduplikasi sebuah artikel dalam Tumblr sehingga dipos kembali sebagai artikel milik pengguna lain. Tetap saja artikel tersebut akan mencantumkan sumber asli sebagai anti plagiarisme. Hal ini membuat para pengguna dapat berbagi artikel-artikel yang disukainya.

Walau pun tidak resmi (tapi didukung oleh KPU), secara tak sengaja penggunaan Tumblr ini telah menciptakan pengalaman media sosial yang hebat. Sesuatu yang dipelajari di bangsa lain, namun secara tak sengaja terimplementasi di Indonesia.

Menurut Bertot et al., seperti dikutip oleh Christopher G. et al. dalam (Reddick, Christopher G., Aikins, Stephen K., 2013) menyebutkan ada tiga keunggulan penggunaan media sosial oleh badan pemerintahan:

  • Partisipasi demokratis yang aktif. Media sosial menjadi katalisator yang membuat partisipasi aktif masyarakat publik dengan pemerintah dalam membangun dialog dan menyediakan tempat bersuara dalam pengembangan kebijakan dan implementasinya.
  • Produksi bersama (co-production). Pemerintah dan publik bersama membangun, merancangkan, dan menghasilkan layanan-layanan pemerintahan; meningkatkan kualitas layanan, waktu keluarannya, dan sikap responsif yang lebih baik.
  • Solusi gotong royong dan inovasi. Mencari inovasi melalui pengetahuan dan kemampuan yang dimiliki publik untuk mengembangkan solusi inovatif untuk masalah-masalah yang besar di masyarakat.

Pada poin ketiga dapat dilihat bahwa KPU menyelesaikan sebuah masalah besar (penghitungan suara) dengan membuka data rekap Pemilu kepada masyarakat. Penggunaan media sosial yang banyak dikenal oleh masyarakat merupakan sarana yang tepat. Apalagi, kebanyakan media sosial dapat diakses melalui telepon seluler.

Kolaborasi dengan Pihak Ketiga

Setelah KPU mengumumkan keberadaan situs Pemilu2014, muncul pihak-pihak independen yang berusaha memanfaatkan data tersebut. Inilah keindahan dari gotong royong. Setiap orang/entitas dapat berpartisipasi dalam ekosistem ini.

Awal mula munculnya kolaborasi dengan pihak ketiga adalah tertangkapnya informasi mengenai KPU yang menerbitkan formulir C1 tentang Pemilu Presiden di media sosial.

Aplikasi yang pertama kali berjalan yang tercatat adalah sebuah aplikasi web Heroku, Real Count. Aplikasi ini dibuat dengan Rails. Popularitasnya meningkat dan akhirnya dalam beberapa jam bisa menghasilkan data sekitar 14.000+ TPS. Situs ini mencatat ada sekitar 400 akun pengguna. Namun, oleh karena merasa (potensi) masalah non-teknis, pengembangnya memutuskan untuk mematikan aplikasi ini.

Kawal Pemilu

Aplikasi yang berikutnya lebih populer adalah kawalpemilu.org (Kawal Pemilu). Saat penulisan, data TPS yang telah masuk ada sekitar 95,696% dan yang telah diproses ada sekitar 95,1793%. Hal ini dapat dicapai karena relawan yang ikut berpartisipasi sekitar 700+ relawan.

Untuk menjadi relawan yang memasukkan masukan dari formulir C1, Kawal Pemilu mewajibkan relawan untuk mendaftar satu per satu ke sebuah laman Facebook. Lalu, admin akan secara manual memasukkan mereka satu demi satu ke aplikasi Kawal Pemilu. Seperti yang sudah dibahas, penggunaan Facebook menghilangkan anonimitas dan bot.

$ curl -I -H 'Accept-Encoding: gzip,deflate' -L http://www.kawalpemilu.org/#0
HTTP/1.1 200 OK
Server: cloudflare-nginx
Date: Wed, 16 Jul 2014 20:49:40 GMT
Content-Type: text/html
Connection: keep-alive
Set-Cookie: __cfduid=dd392e2ed30ffbd6cfd61b5955a1ea6861405543779819; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.kawalpemilu.org; HttpOnly
Last-Modified: Wed, 16 Jul 2014 16:17:38 GMT
Vary: Accept-Encoding
CF-RAY: 14b1114fd65a01cf-SIN
Content-Encoding: gzip

Dari entri DNS, aplikasi Kawal Pemilu menggunakan Dreamhost sebagai penyedia web. Oh, ternyata aplikasi ini menggunakan Cloudflare sebagai CDN. Ya, untuk script kiddies wassalam-lah. Ha… ha… ha….

Menurut  (John Graham-Cumming, 2013),Cloudfare menggunakan NGINX dengan mengaktifkan fitur OWASP. Fitur ini berguna untuk melindungi serangan dari IP tertentu dan juga mendeteksi apabila terjadi pola serangan. Deteksi ini untuk menolak koneksi yang berbahaya, semisalnya koneksi yang berisi injeksi.

Dari kode sumber, saya melihat bahwa sebenarnya Kawal Pemilu sendiri adalah proksi dari aplikasi Kawal Pemilu di Google App Engine. Saya tidak tahu banyak aplikasi ini karena kodenya tertutup. Yang saya tahu, Google App Engine menyediakan layanan pemrograman web bagi penggunanya. Jadi, solusi ini bisa menekan biaya yang diperlukan oleh Kawal Pemilu.

Aplikasi Kawal Pemilu juga memanfaatkan Google Forms untuk mendapatkan masukan data dari penggunanya. Banyak orang yang menggunakan Google Forms untuk membuat angket penelitian. Angket merupakan salah satu instrumen penelitian sosial untuk menguantifikasi suatu gejala. Dalam hal ini, penggunaan Google Forms sebagai pengisian angket setidaknya sudah jamak.

Jadi, aliran data sebagai berikut:

  1. Aplikasi Google Forms mengurus masukan dari pengguna.
  2. Aplikasi Kawal Pemilu di Google App Engine mengelola masukan tersebut.
  3. Aplikasi Kawal Pemilu yang diakses khalayak ramai memanggil layanan dari Kawal Pemilu di GoogleApps dan menampilkannya ke semua orang.

Mengenai privasi saya tidak membahas karena sifat data yang diolah adalah data publik. Lain cerita bila data yang diolah adalah data tertutup atau sensitif. Saya pasti akan memberikan nilai minus untuk menggunakan teknologi komputasi awan (cloud technology). Dalam hal ini menjadi nilai positif karena membuat semua orang bisa mengaksesnya.  Apalagi, infrastruktur komputasi awan memiliki skalabilitas tinggi.

Omong-omong soal skalabilitas, bagaimana dengan kehandalan sistem ini? Mengingat seluruh kegiatan menggunakan infrastruktur Google, maka kemungkinan untuk menjatuhkan layanan ini adalah kecil. Kecuali sang peretas bisa membuat sistem Google jatuh.

Proses Layanan KawalPemilu.org (kp.o) untuk menyediakan "RealCount" kepada masyarakat.

Proses Layanan KawalPemilu.org (kp.o) untuk menyediakan “RealCount” kepada masyarakat.

Dari hasil pengamatan saya terhadap kode sumber di Kawal Pemilu, saya menemukan dua cara guna:

  1. Cara guna Pengunjung Biasa untuk melihat sajian data.
  2. Cara guna Relawan memasukkan data.

Secara garis besar, begini gambaran alur masing-masing cara guna. Mengingat saya hanya menganalisis dari kode sumber, bisa jadi urutan yang diberikan tidak seperti ini. Namun, secara garis besar inilah yang terjadi.

Cara Guna Pengunjung Biasa

  1. Pengunjung membuka situs kawalpemilu.org.
  2. KawalPemilu.org menyiapkan parameter data dari aplikasi Kawal Pemilu di Google App Engine.
  3. KawalPemilu mengirimkan dokumen HTML + JQuery yang akan memanggil layanan Kawal Pemilu di Google App Engine.
  4. Kawal Pemilu di Google App Engine mengambil data dari Google Forms dan mengolahnya, lalu mengirimkan hasil olahan ke pengguna.
  5. Pengguna melihat hasil tabelnya.

Cara Guna Relawan

  1. Relawan membuka situs kawalpemilu.org.
  2. KawalPemilu.org mengirim laman yang berisi borang isian dari GoogleForms dan gambar pindaian C1 dari KPU.
    Cuplikan contoh pengisian TPS. Gambar diambil dari situs MetroTV.

    Cuplikan contoh pengisian TPS. Gambar diambil dari situs MetroTV.

  3. Relawan membandingkan gambar dan mengisi borang.
  4. Relawan mengunggah borang ke Google Forms.

Seperti yang dijelaskan pada poin 2, Kawal Pemilu menyediakan sebuah laman. Laman tersebut menyematkan gambar-gambar yang diambil dari peladen Scan1 KPU dan borang sederhana yang terhubung ke Google Form.[6] Dengan mengombinasikan dua sistem, maka Kawal Pemilu menyediakan sistem yang terintegrasi dalam menyediakan kebutuhan untuk pelacakan rekam jejak Pemilu Presiden.

Keuntungan Keterbukaan Informasi Publik (KIP)

Keuntungan dari penyediaan data kepada pihak ketiga memungkinkan KPU untuk berkonsentrasi menyediakan data. Pihak ketiga ini kemudian menyediakan layanan kepada masyarakat untuk dapat melihat dan meneliti dokumen-dokumen C1 yang masuk. Masyarakat kemudian melapor langsung kepada KPU mengenai data yang janggal.

Cuplikan pelaporan dari Relawan dan tanggapan KPU. Gambar diambil dari laman Facebook Jaga Suara Pemilu 2014.

Cuplikan pelaporan dari Relawan dan tanggapan KPU. Gambar diambil dari laman Facebook Jaga Suara Pemilu 2014. https://www.facebook.com/jagasuarapemilu2014/photos/a.613923948721973.1073741827.613918222055879/621157114665323/?type=1

Hasilnya adalah kolaborasi yang baik. Banyak laporan yang masuk ke dalam HelpDesk KPU dan ditanggapi. Hasil tanggapan ini kemudian ditindaklanjuti menjadi revisi penghitungan suara. Dilihat dari jumlah laporan di laman Facebook dan Tumblr, animo masyarakat yang melek cukup besar.

Mengenai efek sosiologi masyarakat, saya tidak berani berkesimpulan. Saya tidak ada data sosial. Namun, saya rasa banyak yang merasa puas karena Pemilu kali ini benar-benar merasa ikut bukan sekedar memilih.

Kalau saya bilang, mungkin baru kali ini KPU semenjak zaman reformasi yang kemungkinan besar tidak akan diperadilkan. Mereka telah membuka diri sebesar-besarnya sesuai dengan KIP. Keterbukaan data membuat akuntabilitas mereka dapat dipertanggungjawabkan.

Selanjutnya, untuk ulasan politik, saya angkat tangan karena itu bukan ranah saya.

Kesimpulan

Indonesia memiliki komitmen kuat dalam keterbukaan data. Salah satu yang mengimplementasi sistem ini adalah KPU. Tujuan dari pembuatan sistem ini adalah sebagai perekam jejak kegiatan KPU yang dapat diakses daring.

Keterbukaan ini disambut oleh rakyat Indonesia dengan baik. Dengan menggunakan semangat gotong royong, sistem-sistem yang mengonsumsi data pendukung pun tercipta. Relawan pun ikut dalam proses gotong royong ini.

Kemungkinan besar pada tahun 2019, KPU akan menggunakan sistem TIK bukan hanya sebagai sistem perekam jejak saja, namun sudah menjadi bagian dari proses bisnis KPU. Sistem e-Voting sudah di depan mata! Nah, inilah saatnya merancangkan e-Voting yang terlegitimasi. Sebab, lain cerita bila adanya e-Voting. Perlu adanya uji stabilitas sistem untuk itu karena sistem tidak sekedar sebagai cadangan rekap suara, tetapi digunakan untuk masukan suara.

Daftar Pembaharuan

Perubahan 2014-07-25:

  • Menambah bahasan tentang Sidalih sebagai sistem informasi pionir.
  • Mengubah beberapa kalimat agar lebih masuk akal dan mengalir sehingga bisa lebih dipahami (semoga).
  • Menambah ilustrasi agar tidak tulisan tidak terlalu mengintimidasi dan lebih menjelaskan.
  • Menambah daftar bacaan lanjutan bagi yang tertarik meneliti lebih lanjut.

Bacaan Lebih Lanjut


  1. KPU membuat akun khusus Pendaftaran Pemilih KPU (Tadalih) untuk pengembangan dan pelaksanaan sistem Sidalih. https://www.facebook.com/tadalih ^
  2. Waktu itu DPT sudah mau resmi diumumkan, sehingga kemungkinan pemakaian luasnya belum optimal. http://www.beritasatu.com/nasional/134631-kpu-dinilai-terlambat-lakukan-uji-publik-sidalih.html ^
  3. Saya buat satu cuplikan salinan seandainya situs KPU sedang tidak dapat diakses di https://staff.blog.ui.ac.id/jp/document-php/ ^
  4. Semua informasi ini dapat diketahui dari kesalahan yang tidak diduga ketika mengakses situs ini. Itu sebabnya, agak sulit untuk membuat cuplikan kesalahan tersebut. ^
  5. Ya, saya akui, memang, infrastruktur kita tak sebagus mereka berkat Menteri yang masih juga bertanya guna infrastruktur dasar ^
  6. Saya memutuskan menggunakan tautan dari Metro News agar cuplikan lebih valid. http://pemilu.metrotvnews.com/read/2014/07/15/265995/ini-metode-yang-dipakai-kawalpemilu-org ^

Daftar Pustaka

About (2014, [NO MONTH] [NO DAY]). Retrieved July 17, 2014 from e-Government Lab Fakultas Ilmu Komputer Universitas Indonesia: http://kpu.gov2.cs.ui.ac.id/about.php.^
Tentang OGI (2012, August [NO DAY]). Retrieved July 16, 2014 from Open Government Indonesia : http://opengovindonesia.org/keterbukaan/.^
Why We Recommended Tumblr for the New USA.gov Blog (2011, [NO MONTH] [NO DAY]). Retrieved July 17, 2014 from Measured Voice: http://blog.measuredvoice.com/post/20865615778/why-we-recommended-tumblr-for-the-new-usa-gov-blog.^
Berita Satu News Channel (2013, August 28). Antisipasi Pemilih Ganda, KPU Uji Coba Sidalih [Video file]. Retrieved July 24, 2014 from http://www.youtube.com/watch?v=sD6QJ74qhG4.^
John Graham-Cumming (2013, August 23). CloudFlare's new WAF: compiling to Lua. CloudFlare blog. Retrieved July 17, 2014 from CloudFlare blog: http://blog.cloudflare.com/cloudflares-new-waf-compiling-to-lua.^
José van Dijck (2013, July). You have one identity: performing the self on Facebook and LinkedIn Media, Culture & Society, 35(2), 199-215. doi: 10.1177/0163443712468605.^
Pak, Richard and Fink, Nicole and Price, Margaux and Bass, Brock and Sturre, Lindsay (2012). Decision support aids with anthropomorphic characteristics influence trust and performance in younger and older adults Ergonomics, 55(9), 1059-1072. doi: doi:10.1080/00140139.2012.691554.^
Reddick, Christopher G., Aikins, Stephen K. (2013). Web 2.0 Technologies and Democratic Governance. New York, Amerika Serikat: Springer. doi: 10.1007/978-1-4614-1448-3.^
Seri Optimasi Web: Penjelasan

Seri Optimasi Web: Penjelasan

Sebuah situs yang dikatakan “berat” ketika membutuhkan waktu yang lama untuk sampai menampilkan semuanya. Saat ini semua orang menggunakan Javascript, CSS, dan bahkan cetakan HTML yang berisi lebih dari 100KB. Lebih parahnya lagi, situs-situs banyak yang menggunakan pustaka-pustaka CSS dan Javascript berbeda. Ini menimbulkan waktu tempuh yang sangat besar.

Client-server roundtrips.

Ada beberapa cara untuk mengurangi waktu yang lama untuk menampilkan situs. Baik dari sisi peladen dan pemrograman harus dioptimasi. Berikut hal-hal umum yang biasa dilakukan.

Kombinasi CSS dan Javascript

Mengombinasikan beberapa berkas CSS dan Javascript menjadi satu berkas CSS dan satu berkas Javascript. Dengan demikian, peramban hanya melakukan permintaan sekali ke peladen untuk berkas-berkas ini.

Proses Minifikasi

Melakukan minifikasi. Proses minifikasi melakukan dua hal pada berkas CSS dan Javascript:

  1. Membuang komentar.
  2. Membuang karakter kosong yang tidak perlu (spasi dan baris baru).
  3. Beberapa optimasi melakukan perubahan internal dengan mengganti variabel lokal dengan satu huruf.

Hasil minifikasi membuat kode tidak begitu mudah dibaca oleh manusia. Namun, berkasnya jadi lebih kecil.

Kompresi

Peladen diset untuk mengirimkan berkas-berkas yang diminta dengan dikompresi terlebih dahulu di peladen. Kemudian, peramban akan menerima berkas-berkas terkompresi tersebut, mengekstraksi, dan menampilkan ke pengguna.

Waktu Kadaluarsa

Menentukan waktu kadaluarsa. Dengan menentukan kadaluarsa, konten-konten yang diunduh dari peladen akan disimpan dalam tembolok peramban sampai masa tertentu.

Optimasi Pemrograman

Secara pemrograman, situs dapat dioptimasi. Hal yang lazim misalnya:

  1. Mengoptimasi dengan Javascript untuk gambar-gambar diproses belakangan (lazy load).
  2. Memindahkan beberapa skrip dari HEAD ke BODY dan diset untuk berjalan saat semuanya telah dimuat.
  3. Menggabungkan beberapa gambar kecil menjadi satu gambar besar. Nantinya gambar tersebut digunakan berulang-ulang dengan menggunakan teknik CSS sprite.
  4. Mengompresi ulang dan menentukan dimensi gambar yang ditampilkan agar sesuai dengan yang diset di HTML. Sering kali gambar yang diunggah jauh lebih besar daripada dimensi yang ditampilkan. Gambar yang lebih kecil biasanya berukuran jauh lebih kecil daripada gambar asli.

Kesimpulan

Ini beberapa teknik yang mungkin akan saya bahas. Kemungkinan, sih, kalau saya tak sibuk DoTA 2 atau kegiatan lainnya. Apakah rekan-rekan ada juga teknik lainnya?

Firefox menggunakan PepperFlash

Firefox menggunakan PepperFlash

Adobe Flash yang dipasang untuk Mozilla Firefox dan seluruh peramban yang mendukung NPAPI hanya versi 11.2. Untuk versi 14+ hanya dirilis dalam PepperFlash yang hanya didistribusikan di Google Chrome. PepperFlash menggunakan Pepper Plugins API (PPAPI), API yang dikembangkan oleh Google.

Untungnya ada Fresh Player Plugin. Fresh Player Plugin merupakan sebuah ekstensi NPAPI yang menjembatani penggunaan PepperFlash. Pengguna Mozilla jadi bisa menggunakan Adobe Flash terbaru.

Mari kita pasang!

Memasang Fresh Player Plugin

Saya menggunakan cara yang disebutkan oleh (Rinat Ibragimov, 2014). Namun ada beberapa yang saya tambahkan setelah saya melihat isi kode sumber Fresh Player Plugin.

Persiapan

Untuk Debian, Ubuntu, dan turunannya, jangan lupa memasang berkas-berkas pengembangan:

sudo apt-get install cmake pkg-config libasound2-dev liburiparser-dev \
     libglib2.0-dev libconfig-dev libpango1.0-dev libxinerama-dev \
     libegl1-mesa-dev libevent-dev libgtk+2.0-dev libgles2-mesa-dev

Untuk Gentoo, (B)LFS, dan yang lainnya, pastikan saja Mesa dikompilasi dengan OpenGL, EGL, dan GLES2.

Unduh Kode Sumber

Unduh berkas-berkas yang ada di GIT:

git clone https://github.com/i-rinat/freshplayerplugin.git
cd freshplayerplugin

Atau kalau tidak punya GIT bisa unduh langsung.

wget https://github.com/i-rinat/freshplayerplugin/archive/master.zip
unzip master.zip
cd freshplayerplugin-master

Saya asumsikan berikutnya Anda sudah masuk ke direktori kode sumber.

Mari Kompilasi

Konfigurasikan dan buat:

mkdir bangun && cd bangun
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
make -j3

Sesuaikan “-j3” dengan 2n+1 jumlah prosesormu atau tidak usah pakai parameter tersebut. Parameter “-DCMAKE_BUILD_TYPE=RelWithDebInfo” akan mengompilasi ekstensi ini dengan informasi debug. Saya, sih, tidak pakai. Toh, saya tidak ingin menelusuri penggunaan ekstensi ini.

Pasang

Ekstensi ini cukup dipasang seperti memasang ekstensi Firefox lainnya. Ada dua berkas yang harus dipasang. Kalau mau dipasang di sistem sehingga pengguna lain juga bisa menggunakannya,

cara Debian:

sudo cp libfreshwrapper-nacl.so libfreshwrapper-nacl.so /usr/lib/firefox/plugins

cara Gentoo

sudo cp libfreshwrapper-nacl.so libfreshwrapper-nacl.so /usr/lib/nsplugins/plugins

Atau kalau untuk dipakai kalangan sendiri:

cp libfreshwrapper-nacl.so libfreshwrapper-nacl.so ~/.mozilla/plugins

Konfigurasi

Sebelum bisa menggunakan Pepper Flash, Fresh Player Plugin harus diarahkan ke tempat Pepper Flash berada. Berikut konfigurasi yang dibuat. Gunakan penyunting teks kesukaan Anda, kalau saya langsung di terminal.

cat > freshwrapper.conf << EOF
# Configuration options for FreshPlayerPlugin

# This configuration file is optional. Wrapper will search for it first
# in ~/.config/freshwrapper.conf, then in /etc/freshwrapper.conf.
# If wrapper fails to find configuration, it will use default values

# Audio buffer is used to continuously provide sound adapter with data.
# Values too low may lead to buffer underruns and stuttering. Values
# too high will lead to noticeable latency. Usually plugin selects size
# on its own, but you may override bounds here

# lower bound for audio buffer size, in milliseconds
audio_buffer_min_ms = 20

# higher bound of audio buffer size, in milliseconds
audio_buffer_max_ms = 500

# Xinerama screen used to acquire fullscreen window geometry
xinerama_screen = 0

# Path to the Pepper Flash plugin
pepperflash_path = "/opt/google/chrome/PepperFlash/libpepflashplayer.so"

# "Command-line" arguments for Flash
flash_command_line = "enable_hw_video_decode=1,enable_stagevideo_auto=1"

# experimental: enable 3d and stage 3d
exp_enable_3d = 0
EOF

Isi berkas ada di baris 2 s.d. 29. Berkas ini dapat dipasang,

global:

sudo cp freshwrapper.conf /etc

lokal:

cp freshwrapper.conf ~/.config

Jangan lupa mengganti “pepperflash_path” bila Anda menggunakan plugin yang berbeda. Misalnya pada Gentoo, Anda memasang “chrome-binary-plugins” yang ada di direktori berikut:

pepperflash_path = /usr/lib64/chromium-browser/PepperFlash/libpepflashplayer.so

Atau kalau Anda seperti saya mengambil langsung PepperFlash secara manual, Anda dapat mengubah jadi:

pepperflash_path = /usr/local/lib/PepperFlash/libpepflashplayer.so

Terakhir

Matikan Flash Player yang disediakan untuk Mozilla (11.2). Cukup gunakan versi yang dari Fresh Player Plugin (14.0). Muat ulang Firefox dan silakan bersenang-senang! 🙂

Latar Belakang Masalah Adobe Flash

Salah satu motto saya untuk membuat sistem tidak hancur adalah dengan meniadakan Adobe Flash dari komputer. Bayangkan, masakkan memori 16GB tidaklah cukup dan sering kali sistem berhenti berespons. Namun, ada beberapa alasan untuk mengapa harus menggunakan Flash:

  1. Beberapa situs gagal berfungsi, misalnya Albino Black Sheep.
  2. Banyak video Youtube yang tidak menawarkan resolusi di atas 360p, terutama yutuber Indonesia. Mereka mengunggah tanpa mempersiapkan video HTML5 dengan resolusi tinggi. Padahal, saya menggunakan monitor 44″. Saya harus menggunakan Flash untuk melihat resolusi tinggi.
  3. Kalau saya mau, memang tidak boleh?

Hal ini diperparah dengan Adobe hanya merilis versi 11.2 untuk GNU/Linux. Adobe bilang versi ini hanya akan ditambal bila ada celah keamanan. Jadi, tidak ada tambahan performa atau fitur baru. Kalau mau, harus menggunakan Adobe Pepper Flash. Sayangnya, Pepper Plugins API (PPAPI) yang dipakai Adobe Pepper Flash hanya ada di Chromium dan turunannya.

Mozilla menolak untuk menggunakan PPAPI. Menurut (Robert O'Callahan, 2010), PPAPI adalah sebuah duplikasi API yang sudah ada dalam Web API. Web API adalah standar terbuka yang seharusnya diimplementasi oleh seluruh peramban.

Terkesan seperti NIH Syndrome. Tapi ada alasan bagus mengapa Mozilla masih menolak PPAPI. Salah satunya adalah karena API yang ditawarkan masih berubah-ubah. API yang volatil ini mengakibatkan peramban alternatif harus berusaha mengejar implementasi terbaru.

Bukan Sekedar Firefox

Mungkin untuk gampangnya, saya bisa saja menggunakan Chromium dan turunannya seperti Google Chrome dan Opera Developer saja. Mereka yang didukung oleh Adobe secara resmi. Namun, ada alasan teknis selain filosofis mengapa tetap Firefox.

Kalau secara filosofis, Mozilla sebagai pemegang Firefox berkomitmen terhadap jejaring yang terbuka (open web). Kita tentunya tidak ingin di masa depan konten dan bagaimana konten dapat diakses dimonopoli oleh sekelompok korporasi. Hal ini akan menurunkan derajat kemanusiaan.

Tentu bagi Anda yang pragmatis tentu tidak begitu memperhatikan filosofi ini. Namun, salah satu keunggulan Mozilla Firefox adalah keterbukaan. Dengan keunggulan ini, ia dikompilasi untuk menggunakan pustaka sistem. Dengan demikian, pustakanya akan selalu terjaga dan bagus, tidak menggunakan versi yang lawas.

Saya menggunakan GNU/Linux Gentoo yang selalu terbaharui. Beberapa situs favorit saya menggunakan karakter huruf Asia Timur. Situs seperti Daum Naver dan Nico-nico Douga juga salah satunya. Dan percaya atau tidak, blog-blog berbahasa Mandarin menyediakan informasi jauh lebih lengkap mengenai kompilasi optimal sistem berprosesor MSM7230 misalnya.

Saya juga kebetulan anak baik, saya takkan mengunjungi situs Rusia mengenai Haxx0r. Tapi, Cyrillic sangat dibutuhkan juga untuk mengerti di mana tombol mengunduh plugin OSS4 misalnya. Ya, intinya dukungan Internasionalisasi jauh lebih bagus di Firefox daripada peramban-peramban Chromium.

Seperti yang Anda lihat pada gambar, Google Chrome saya dapat menampilkan Hangul setelah saya:

  1. Memasang fonta Baemuk.
  2. Memasang ekstensi Chrome Advanced Font Settings.
  3. Menyalakan kembali peramban.

Opera Developer belum mendukung internasionalisasi sama sekali. Di gambar ini terlihat Firefox langsung bisa mendukung karakter Hangul. Ini makanya saya lebih memilih menggunakan Firefox.

Daftar Pustaka

Rinat Ibragimov (2014, July 30). ppapi2npapi compatibility layer. GitHub. Retrieved July 08, 2014 from GitHub: https://github.com/i-rinat/freshplayerplugin.^
Robert O'Callahan (2010, April 30). Thoughts on Pepper. mailman at mozilla. Retrieved July 08, 2014 from mailman at mozilla: https://mail.mozilla.org/pipermail/plugin-futures/2010-April/000088.html.^
He Ain’t Heavy, He’s My Brother

He Ain’t Heavy, He’s My Brother

Do you know that incident in connection with the little Scottish girl? She was trudging along, carrying as best she could a boy younger, but it seemed almost as big as she herself, when one remarked to her how heavy he must be for her to carry, when instantly came the reply: ‘He’s na heavy. He’s mi brither.’ (Ralph Waldo Trine, 1918)

Satu lagu dari The Hollies yang sering kali dipakai berulang-ulang sebagai kalimat pamungkas (punchline) dalam pelbagai khotbah Pendeta di Amerika Serikat. Ia menjadi lagu tematik untuk film-film Perang Vietnam. Dulu sewaktu kecil saya sering mendengarnya diputar di radio.

Asalnya ternyata dari perumpamaan seorang gadis kecil Skotlandia yang menggendong bayi yang cukup besar. Anak ini terlihat kesulitan, tapi ia masih saja berjalan sambil menggendong bayi besar itu. Ia bisa saja meninggalkannya di jalan atau meminta orang dewasa untuk menggendong bayi ini.

Tapi tidak, ia merasa bahwa yang ia gendong ini ringan. Ia tidak terbebani dengan pamrih mau pun motivasi lainnya. Dengan tulus ia membantu sang bayi menuju tujuan.

Entah ini adalah bentuk kasih Ibu, Tuhan, atau pun seorang sahabat sejati yang singgah di hidup seseorang. Atau, ini adalah sebuah impian masing-masing manusia sebagai makhluk sosial yang haus eksistensi. Bersyukurlah atas orang sekitar yang mempedulikanmu, mungkin dia salah satu orang yang menyanyikan lagu ini untukmu.

Daftar Pustaka

Ralph Waldo Trine (1918). The Higher Powers of Mind and Spirit. e-Books: Project Gutenberg. Retrieved from Project Gutenberg: http://www.gutenberg.org/files/28163/28163-h/28163-h.htm.^
eXo Platform – Social Collaboration

eXo Platform – Social Collaboration

eXo Platform adalah sebuah Kolaborasi Grup (Group Collaboration) yang bertumpu pada aspek sosial. Aplikasi ini berdasarkan Java. Contoh kolaborasi grup lainnya adalah Horde Groupware yang berdasarkan PHP.

Yang menarik, dia mendukung JCR, OpenSocial, dan CMIS. Arti kontennya dapat diadaptasikan ke sistem-sistem lain yang terpadu. Standar-standar ini bisa dipakai untuk mengombinasikan banyak informasi dalam satu portal (information mash ups).

Lalu yang paling penting adalah kemampuan  autentikasi menggunakan SSO seperti CAS, SAML, AD. CAS, berarti bisa masuk sistem kampus lainnya. SAML berarti bisa dikombinasikan dengan Google Apps. AD, hmm… bisa dikilik-kilik dengan Windoze.

Saya belum pernah menggunakan ini. Ada yang pernah?

 

Terbitnya Opera 24 untuk GNU/Linux
Opera Developer

Terbitnya Opera 24 untuk GNU/Linux

Opera 24 for GNU/Linux

Opera 24.0.1537.0 for GNU/Linux

Setelah kurang lebih setahun, Opera tidak lagi merilis versi GNU/Linux. Setelah berpindah ke Chromium, mereka lebih berkonsentrasi di versi Windows dan MacOS. Kemarin, mereka membuat kejutan dengan menerbitkan versi pengembang (24.0.1537.0).

Yang menarik, mereka pun tak lupa bercanda-canda (self-trolling) di komentar. Memang, para pengguna GNU/Linux merasa yang paling ditinggalkan setelah hilang dari peredaran selama setahun. Saya sendiri termasuk yang memrotes namun pada akhirnya meninggalkan Opera dan menuju peramban lain. Padahal, Opera salah satu peramban tertua yang mendukung GNU/Linux. Bahkan, sempat masuk ke repositori utama Debian.

Walau pun dibilang Opera for Linux, tapi nampaknya Opera kali ini lebih ditujukan kepada Ubuntu. Kalau dilihat dari gambar, nampak tematik yang digunakan adalah tematik Ubuntu. Itu sebabnya, berkas yang diunduh pun paket Debian.

Pemasangan

Pemasangan saya tulis untuk yang Debian dan non-Debian.

Cara Debian

Untuk Debian, Ubuntu, dan variannya (termasuk BlankOn), cukup unduh dan pasang.

sudo dpkg -i opera-developer_24.0.1537.0_amd64.deb

Kadang, kalau terpasang standar tanpa diutak-atik, biasanya begitu diunduh sudah langsung ditanyakan untuk dipasang. Perintah ini cuma sekedar jaga-jaga saja kalau harus memasang manual melalui terminal.

Cara Non-Debian

Saya memberikan metodologi untuk memasang secara bersih pada sistem. Kebanyakan orang memasang dengan menggunakan standar FHS yakni pada direktori “/usr/local”. Saya asumsikan bahwa paket Debian Opera sudah diunduh pada direktori yang sama.

ar p opera-developer_24.0.1537.0_amd64.deb data.tar.xz \
   | sudo tar xvfJ - --xform='s,\(/usr/\),\1local/,' --exclude=usr/share/{lintian,menu} -C/

Itu semua satu baris perintah. Lalu, kemudian buat SETUID pada opera_sandbox agar bisa dijalankan oleh pengguna biasa.

sudo chmod 4755 /usr/local/lib/x86_64-linux-gnu/opera-developer/opera_sandbox

Selesai.

Terakhir

Saya menulis ini dari Opera Developer. Cukup stabil dan cepat. Saya suka sekali fitur preview. Fitur ini memperlihatkan isi sebuah tab saat titik tetikus melewati tab tersebut tanpa harus membuka tab itu. Lumayan membantu untuk orang yang suka bertab-tab ria.

Kemungkinan Membangun e-Gov dalam 2 Minggu

Kemungkinan Membangun e-Gov dalam 2 Minggu

Beberapa waktu yang lalu, seorang Capres membuat klaim bahwa sebuah proyek TIK dapat diselesaikan dalam tempo 2 minggu. Bahkan, mereka mengadakan Hackathon untuk membuktikan hal tersebut.

Respon inisial para penggiat TIK banyak yang mencibir hal tersebut sebagai ketidaktahuan Capres tersebut. Namun, Jim Geovedi, Wibisono, dan rekan-rekan praktisi TIK yang lain banyak yang mendukung. Saya sendiri termasuk yang mendukung pernyataan tersebut.

Sebenarnya saya mau menulis ini sejak isu tersebut. Tapi, saya sengaja mengambil jarak menulis tulisan ini dan tidak menyebut siapa Capres tersebut. Esensi saya bukan kepada dukungan kepada salah satu Capres. Saya menekankan kepada kemungkinan membangun e-Gov dengan cepat.

Berhubung saya juga bekerja di instansi pemerintahan, saya agak terikat etika kerja. Itu sebabnya, saya takkan menulis kerja saya. Tetapi, saya akan coba yang terbaik membukakan mengapa Indonesia sebenarnya bisa maju di bidang TIK.

Kemampuan Praktisi TIK

Tahukah Anda, bahwa Indonesia adalah salah satu perintis Internet dunia? Setidaknya ada dua universitas di Indonesia, UI dan ITB, yang memiliki segmen IPv4 kelas B. Betul, kelas B, bukan kelas C. Bahkan Pak Ibam, orang yang membawa Internet ke Indonesia dan pemegang domain .id pertama kali, membuatkan video ketika sepuh-sepuh Internet bertemu di Honolulu tahun 1995. Tentunya dengan hadir di sana juga.

Fun fact: Tulisan Pak Ibam The Long and Windy Road itu banyak dikutip buku-buku yang membahas IPv6.

Mungkin banyak yang tak tahu. Dahulu, ITB itu sarangnya FreeBSD dan UI itu sarangnya GNU/Linux. Artinya apa? Artinya, kedua universitas tersebut telah memiliki kemampuan *NIX sejak lama dan sumber daya manusia yang cukup kreatif.

Kemampuan heker kita pun jangan ditanya. Walau pun menimbulkan kekesalan karena negara ini sempat masuk daftar hitam semenjak era dotcom, para heker Indonesia cukup mumpuni dan diakui (positif maupun negatif) di seluruh dunia. Hal ini mengindikasikan bahwa banyak praktisi TIK Indonesia yang mampu menerapkan algoritma kompleks.

Masih belum puas tentang kemampuan TIK Indonesia? Silakan cari majalah lama Mikrodata yang secara kasual membahas algoritma dan teknik pemrograman TIK. Majalah ini jauh lebih dahulu ada sebelum majalah pengguna TIK dan jualan hape.

Mengapa Indonesia masih kekurangan orang-orang hebat seperti demikian?

Salah satu kekurangan institusi TIK di Indonesia adalah mereka tidak mempersiapkan mahasiswa mereka untuk memiliki kemampuan sosial yang memadai,  terutama dalam mempresentasikan ide. Mereka lebih suka bergerak sendiri dan independen satu sama lain, ciri untuk orang-orang yang agak anti-sosial.

Untuk itu, dibutuhkan pemimpin yang mau merangkul orang-orang yang memiliki pemikiran berbeda. Pemimpin ini bisa menjembatani praktisi-praktisi TIK yang mengagumkan dengan dunia nyata. Intinya, Indonesia butuh Pemimpin yang bisa mengerti The Hacker FAQ.

Proses Bisnis yang Sederhana

Inti dari penerapan TIK itu sendiri adalah sebuah proses pembentukan kembali proses bisnis (Business Process Reengineering). Jargon “don’t fix if it’s not broken” berbicara bahwa bahkan tanpa TIK bila itu memang efisien, silakan terus lakukan. Namun, kebanyakan dari kita menerapkan TIK untuk menambah portfolio pribadi/perusahaan.

Lalu bagaimana dengan e-Gov?

Seringkali yang dimaksudkan dengan e-Gov sendiri adalah aplikasi-aplikasi sederhana yang memerlukan sedikit pemrograman. Mungkin banyak yang berkhayal e-Gov yang dimaksud adalah aplikasi B2G (Business to Government). Atau banyak yang mungkin melihat itu sebagai sistem-sistem multi-tier dengan web service-oriented architecture (SOA) yang bisa dikombinasikan dalam BPEL.

Padahal, yang dibutuhkan oleh pemerintahan adalah kebutuhan dasar semacam data entry saja. Mereka belum sampai pada kebutuhan menambang data atau pun pelaporan kompleks. Mereka sudah cukup puas dengan menampilkan data dalam tabel.

Continous Integration

Ada orang yang menceritakan dalam perusahaannya yang hanya bisa menerapkan 2 dari 20 use cases yang dimilikinya. Dia tidak dapat membayangkan bagaimana mungkin e-Gov bisa dikembangkan dengan waktu yang singkat 2 minggu. Tapi, itu memang karena banyak faktor yang membuat sistem lama dibuat.

Sistem yang sukses dikembangkan dengan cepat itu karena mereka menerapkan semacam eXtreme Programming (XP). Nah, yang menjadi peer user-nya adalah sang Bupati/pimpinan tertinggi itu sendiri. Kalau pimpinan tertinggi sudah menjadi bagian pengembang sistem, siapakah yang mau melawan? Mau tak mau pasti bawahan akan ikut.

Lalu, bagaimana sebuah sistem dapat jadi dengan cepat?

Katakanlah dari seperangkat kebutuhan yang harus diimplementasi, semua kebutuhan wajib sudah diimplementasi. Sisanya, kebutuhan itu dikembangkan sambil jalan. Siapa pun yang pernah ikutan proyek di pemerintahan tapi niat, pasti tahu ini.

Kebanyakan proyek yang dikembangkan itu berdasarkan satu waktu tertentu saja. Untuk menyiasatinya, mereka menggunakan anggaran biasa untuk mencicil bagian-bagian yang kurang. Jadi, klaim 2 minggu jadi itu adalah sistem yang sudah memenuhi kebutuhan minimal dan siap dikembangkan berlanjutan.

Resistensi

Entah mengapa topik-topik kuliah saya selalu terkait bidang pemerintahan. Dari Indonesia Sehat 2010, Sistem TIK Puskesmas, dan SMS Gateway di suatu instansi pelat merah. Belum lagi pengalaman saya dalam pengurusan perpanjangan KTP (sebelum e-KTP).Terkait Sistem TIK Puskesmas, saya dan beberapa rekan dalam sebuah tim mengambil studi kasus di sebuah Puskesmas. Puskesmas tersebut memiliki sistem TIK yang terintegrasi sampai dapat ISO2000. Waktu itu kami masih lugu.

Terus terang, sistem yang dikembangkan di Puskesmas itu sangat maju. Dia sudah mencatat dari kebutuhan front-end sampai dengan stok di gudang. Kami pun terkagum dengan bagaimana programernya (hanya satu orang) yang menulis aplikasi tersebut.

Sayangnya, sistem tersebut ditulis dengan menggunakan FoxPro. Aplikasi ini hanya dapat dijalankan oleh beberapa pengguna saja. Hal ini karena adanya keterbatasan jumlah pengguna yang dapat mengakses sebuah shared folder. Selain itu, basisdata DBASE III yang digunakan pun tidak mendukung akses konkuren.

Kami pun membuat sistem serupa dengan pendekatan Web. Karena ini adalah tugas akhir, kami pun menambahkan fitur dan mengurangi beberapa fitur. Selain itu, kami pun melakukan wawancara dengan sang pemrogram lama. Dia pun setuju-setuju saja, mengingat dia sudah bekerja dalam instansi keuangan.

Pihak Puskesmas setuju-setuju saja dan ramah. Entah mengapa, kok, sepertinya kami memang bisa membuat sistem tersebut. Namun, sampai kami lulus, tak dapat kami memasang sistem tersebut.

Waktu itu saya sempat berpikir suudzon. Salah satu pejabat yang terkait dengan TIK adalah istri dari pemrogram sistem yang lama. Entah mengapa, dia memiliki resistensi untuk sistem ini dapat dijalankan di Puskesmas tersebut.

Tapi, yah, selagi dipikir-pikir, kami ini mahasiswa. Belum punya track record dan waktu itu pun tidak terlibat kontrak mengikat. Kami bisa saja bak kaum Gypsi yang pergi ke mana pun angin membawa kami.

Terkait pengurusan KTP di kelurahan waktu itu pun saya sangat sebal. Sudah lama sekali menunggu, saya harus bayar Rp5000,00 dan mengisi formulir tidak jelas. Padahal, proses selanjutnya adalah memasukkan data ke komputer. Waktu itu saya mendapatkan KTP yang biru.

Mengapa saya bilang itu formulir tidak jelas?

Karena KTP saya yang lama diambil, buat apa ada formulir data baru? Sudah begitu, saya sempat protes karena kolom agama salah. Lalu, buat apa saya berlelah ria mengisi formulir yang, toh, datanya tidak digunakan?

Dari kasus-kasus demikian, saya merasakan hal ini yang menjadi resistensi di lingkungan kepegawaian:

  • Kepemilikan sistem TIK berpengaruh kepada seberapa besar pengaruh dan harga yang dimiliki seseorang. Sepertinya sistem TIK menjadi pegangan seseorang di institusi pemerintahan.
  • Tingkat pendidikan yang rendah mengakibatkan analisis dangkal sehingga mencapai keputusan untuk memenuhi kebutuhan jangka pendek. Dengan kata lain, mencari untung sendiri/aji mumpung. Sistem TIK mengambil lapak preman.
  • Akses antara orang-orang yang mampu dengan instansi terkait kurang. Kalau saja saya tidak dalam proses kuliah, mungkin saya tidak tahu kebutuhan TIK Puskesmas.

Kalau kita lihat di sana, tingkat kesejahteraan pegawai pemerintahan dan niat baik pimpinan menjadi kunci resistensi dalam penerapan e-Gov.

Kisah Sukses e-Gov dan Analisis

Saya rasa, untuk menyebutkan kisah sukses e-Gov, kita wajib menyebutkan Kabupaten Sragen sebagai pionir e-Gov di Indonesia. Mereka sudah mengembangkan e-Gov semenjak 2002. Saat ini mereka mengembangkan secara berkesinambungan.

Dalam salindia yang diberikan kepada ITU sebagai bagian dari proyek SCBD Bank Pembangunan Asia, Pemerintah Sragen memberikan perhatian khusus kepada pembangunan infrastruktur jaringan. Tentu, ini berbeda dengan Pak Menteri yang satu itu.

Berikut sedikit penjelasan yang dikutip dari salindia:

  • Awal 2002, pembangunan dikonsentrasikan pada kompleks perkantoran SETDA, yang terpusat di PDE. (Kantor Bupati, Sekda, Asisten, BPKD, Bappeda, Kesbanglimas, dan BPT)
  • 2003/2004, koneksi antar Kantor Dinas/Satker diluar SETDA dan 8 titik Kecamatan
  • 2005/2006, semua Kantor Dinas/Satker dan 20 Kecamatan
  • 2007, dibangun jaringan Desa yang meliputi 208 Desa/Kelurahan se-Kabupaten Sragen.

Penggunaannya pun mengalami evolusi. Pada mulanya, mereka berpikir untuk mekanisme surel. Kemudian, mereka berkembang dengan mengembangkan pelbagai sistem informasi yang menunjang kegiatan pemerintahan di Kabupaten Sragen.

Mengapa Sragen bisa berhasil?

Menurut laporan dari ADB Project Officer, adanya rasa kepemilikan dari pimpinan hingga ke level terbawah mengakibatkan sistem TIK Sragen dipakai dan dikembangkan dengan optimal. Hal yang paling sulit dari penggunaan TIK adalah resistensi akibat efisiensi yang mengurangi jatah preman beberapa oknum di sana. Untuk melawan hal tersebut, Bupati Sragen yang terpilih menjadi 10 Kepala Daerah Terbaik versi Majalah Tempo tahun 2008 memberikan insentif kepada para pegawainya.

Karena keberhasilan pemanfaatan TIK dalam Sragen yang menghasilkan banyak penghargaan, daerah-daerah lain pun ingin ikut. Maka, sang Bupati mengirimkan tim-tim dari anak buahnya untuk mengajarkan pemanfaatan TIK di daerah potensial tersebut. Hal ini menyebabkan pemasukan bertambah bagi para pegawainya lebih banyak.

Sekali lagi, ini membutuhkan komitmen dari pemerintah itu sendiri untuk mendukung pengembangan TIK yang berkelanjutan di instansinya.

Akhir Kata

Dari pembahasan yang acak kadut karena ditulis dalam hari yang berbeda serta dengan berbagai mood, sebenarnya dapat disimpulkan bahwa Indonesia memiliki SDM yang mumpuni dalam membuat sistem informasi. Tinggal bagaimana pimpinan Indonesia mau merangkul mereka.

Mungkin rekan-rekan yang punya pengalaman lebih baik bisa menceritakan pengalaman mengenai e-Gov?

PS4 based on FreeBSD
PS4 FreeBSD

PS4 based on FreeBSD

Dari daftar lisensi kode sumber terbuka sepertinya PS4 dibuat dari FreeBSD. FreeBSD menjadi sistem operasi dasar mereka. Memang FreeBSD lebih mudah diatur karena menggunakan Lisensi BSD. Tidak seperti GNU/Linux yang menggunakan lisensi yang lebih ketat seperti GPL.

Beberapa komponen menarik bagi saya untuk menjadi catatan. Saya menambah dugaan saya untuk penggunaan komponen-komponen tersebut untuk menyediakan gambaran bagi Anda yang mungkin tertarik dengan implementasi pustaka-pustaka tersebut. Kali-kali, ada di antara Anda yang tertarik untuk mengembangkan sistem menggunakan salah satu pustaka ini.

Jerasure

Jerasure, sebuah pustaka C yang dibuat berdasarkan tulisan (J. S. Plank and S. Simmerman and C. D. Schuman, 2008, p:08:jer). Pustaka ini berfungsi untuk menghapus konten secara aman dari perangkat keras secara aman.

Sebagai gambaran, sebuah operasi menghapus berkas sebenarnya tidak benar-benar menghapus berkas dari sistem. Biasanya, ia hanya menghilangkan referensi isi berkas dari sistem berkas sedangkan isinya sendiri masih ada di ruang penyimpan. Itu sebabnya, seseorang mungkin saja merestorasi konten-konten yang telah terhapus atau tak sengaja terformat.

Sebagai penyedia konten berbayar, DLC, PS4 harus menjamin konten yang sudah dihapus benar-benar terhapus. Konten tersebut tak dapat diambil dengan cara lain sehingga dapat disalahgunakan. Pustaka ini berfungsi kemungkinan untuk menghapus konten-konten demikian. Jerasure dapat pula untuk diimplementasi untuk sistem-sistem pengarsipan rahasia.

Jerasure yang terbaru versi 2.0.

libusrsctp

Pustaka libusrsctp adalah sebuah pustaka untuk protokol SCTP dengan menggunakan eksekusi pengguna. Protokol ini dimunculkan sehingga dapat diatur oleh sebuah aplikasi yang berjalan biasa, tidak seperti penggerak umumnya yang berjalan di kernel FreeBSD. Cara ini sama seperti FUSE yang menjalankan sistem berkas pada lahan pengguna, bukan kernel.

SCTP sendiri merupakan sebuah protokol aliran data seperti TCP dan UDP. Secara naif SCTP dapat didefinisikan sebagai berikut: ia merupakan sebuah protokol yang menggabungkan cara kerja UDP dengan meminjam kepastian paket dari TCP. Ia paket aliran data yang memiliki sesi sehingga bisa menjamin paket-paket data jaringan tersebut sampai atau tidak. Bisa dibilang, SCTP merupakan tingkat lanjut dari TCP/UDP.

SCTP meminjam keunggulan SS7 seperti multi-homing dan multi-streaming. Kemampuan multi-homing memungkin sebuah peladen mengalirkan data kepada pengguna menggunakan lebih dari satu jalur jaringan. Kemampuan ini memungkinkan jaringan menjadi lebih handal. Bayangkan, seandainya ada satu jalur yang tersendat, maka paket dapat dialirkan melalui jalur lain.

Satu kemampuan lainnya yang menarik adalah multi-streaming. Sistem kerjanya mirip dengan multi-process. Sebuah jalur koneksi dapat dialiri beberapa aliran data sekaligus sehingga menjamin interaktivitas. Sebagai gambaran, sebuah jalur TCP akan mengalirkan data HTML, lalu gambar, dan seterusnya. SCTP mampu mengirim secara paralel semuanya itu dalam satu jalur pipa koneksi.

Nampaknya PS4 menggunakan implementasi SCTP untuk mengalirkan konten multimedia dan permainan kepada para penggunanya. Bahkan, jangan-jangan semua jaringan PSN dialirkan lewat SCTP?

Pantas saja beberapa pengguna mengeluhkan beberapa layanan PSN tak dapat digunakan. Hal ini karena SCTP bermasalah dengan implementasi NAT Router rumahan. Bahkan, ada yang secara skeptis mengatakan kalau D-Link dan Netgear (dua merek Router rumahan yang populer) tidak membetulkan implementasi Router rumahan mereka, maka SCTP sama saja mati. Lagipula, sekarang sudah ada SPDY yang berusaha membetulkan beberapa kelemahan TCP.

Mersenne Twister

Mersenne Twister adalah sebuah algoritma penghasil bilangan acak (pseudo/PRNG) yang dikembangkan oleh Makoto Matsumoto dan Takuji Nishimura dari Hiroshima University. Kalau menurut Wikipedia, dia jauh lebih mahal dari PRNG yang lain sehingga kurang praktis, kecuali dengan SFMT. Dan, seperti kita ketahui bersama, instruksi SIMD prosesor AMD yang menjadi inti PS4 sudah sangat maju.

Kegunaan bilangan acak ini selain untuk nilai awal (Initial Value/IV) dalam kriptografi juga mungkin dapat dipakai untuk menciptakan lingkungan permainan yang dinamis. Ya, penggunaan lainnya saya serahkan kepada para pembaca yang budiman. 🙂

Intrusive MPSC node-based queue

MPSC

Multiple Producer Single Consume (MPSC). Many Producers try to produce on a Job Pool/Queue and only one Consumer can consume their work at a time.

Intrusive MPSC node-based queue adalah sebuah pustaka paralelisasi multi-produser/satu-konsumer (Multi Producer Single Consumer). Seperti pada gambar, MPSC itu dapat digambarkan sebagai sebuah kumpulan pekerjaan dikerjakan secara bersama-sama oleh banyak produsen. Kemudian, hasilnya dikonsumsi oleh satu konsumen.

Dari cara kerja itu, dapat dikatakan bahwa pustaka ini digunakan oleh PS4 (pustaka/API PS4) untuk melakukan paralelisasi pekerjaan. Paralelisasi pekerjaan dapat digunakan misalnya untuk membuat sebuah dunia AI yang interaktif, menghitung grafik yang hendak digambar, atau pekerjaan apa pun yang dapat dipecah menjadi beberapa thread.

Ada banyak teknik-teknik MPSC. Namun, keunggulan dari Intrusive MPSC itu adalah tidak menunggu (wait-free), non-atomik, dan cepat. Sehingga, hal ini cocok untuk aplikasi waktu-nyata (realtime) atau mendekati waktu-nyata (pseudo-realtime). Terutama aplikasi-aplikasi yang membutuhkan paralelisasi dengan waktu proses singkat, misalnya permainan 3D masa kini.

Konsumer yang menunggu hanya melakukan spinlock sehingga tidak menghabiskan memori. Implementasi ini cocok untuk memori yang terbatas. Misalnya, untuk mesin yang tidak bisa ditambahi memori macam PS4. Algoritma ini membutuhkan O(1) untuk operasi pop.

Anda masih membaca sampai baris ini? Either you are a geek or you are a low level programmer, I respect you! Here, I put a link discussing Intrusive MPSC use-cases on programming.

Salah satu jenis permainan yang membutuhkan paralelisasi tinggi adalah contohnya permainan open-world/sandboxed. Menurut Ubisoft, permainan open-world merupakan tren untuk permainan masa depan.

Paralelisasi ini tentunya juga didukung oleh arsitektur PS4. Dengan banyaknya inti (core) dan teknologi paralelisasi AMD yang jauh lebih canggih dari Intel, permainan-permainan yang dibuat di PS4 (yang hanya di konsol itu misalnya) dapat membuat sebuah permainan dengan paralelisasi tinggi.

Sebelum Anda menuduh saya fanboy AMD, Intel itu jago di single process, yakni permainan-permainan sekarang. Ini karena keterbatasan engine yang dipakai oleh permainan-permainan yang beredar dan arsitektur sistem operasi populer yang belum mendukung paralelisasi secara penuh. Sudah, ah, kita lanjutkan dengan pustaka yang lain.

Protocol Buffers

Protocol Buffers adalah sebuah teknologi panggilan jarak jauh (RPC/Remote Procedure Call) yang dikembangkan oleh Google. Alasan utama dalam mengembangkan Protocol Buffers adalah kesederhanaan dalam enkapsulasi data. Tentu saja, hal ini juga karena Google adalah perusahaan riset yang senang menghasilkan sesuatu yang baru.

Bila dibandingkan dengan ASN.1, CORBA, Thrift, dan bahkan XML-RPC, Protocol Buffers menawarkan kesederhanaan dalam enkapsulasi data. Google membandingkan salah satu contoh datanya dengan bagaimana XML begitu rumit dan menghasilkan data lebih besar dari pada Protocol Buffers.

Misalnya dalam enkapsulasi XML:

<person>
  <name>Slamet</name>
  <email>slamet@dijalan.net</email>
</person>

Lalu dibandingkan dengan Protocol Buffers:

Person {
  name: "Slamet"
  email: "slamet@dijalan.net"
}

Dilihat sekilas memang implementasi pemrogramannya jauh lebih irit Protocol Buffers. Kalau saya lihat, sih, mirip dengan format JSON. Namun, bedanya Protocol Buffers mendukung skema tipe data seperti XML. Anda dapat membaca data yang dilewatkan dengan Protocol Buffers dan langsung mengkonversinya ke tipe data yang sesuai.

Protocol Buffers biasanya digunakan untuk interaksi antar proses internal dalam satu sistem. Sebagai bonus, saya juga menyertakan komparasi penggunaan enkapsulasi data JSON, Protocol Buffers, dan MsgPack. Hasilnya cukup beragam antar bahasa pemrograman.

Squish

Squish/libsquish adalah sebuah implementasi kompresi tekstur DXT yang terbuka. Kompresi tekstur DXT adalah teknik untuk mengompresi saluran-saluran warna yang digunakan pada tekstur gambar berwarna. Teknik ini untuk gambar berwarna yang terdiri atas 3 saluran warna (RGB) dan satu warna alfa. Ada DXT1 sampai DXT5 dan Microsoft biasanya membedakan varian tersebut dengan FourCC.

Implementasi kode terbuka lainnya adalah ImageLib dan MESA S3TC. Oh, iya, fakta menarik adalah implementasi MESA S3TC biasanya dimatikan karena terganjal masalah paten algoritma yang berlaku di Amerika Serikat. Paten ini kini dimiliki oleh VIA.

CELT (Opus)

CELT (Opus) adalah teknologi suara seperti MP3, AAC, dan lainnya yang ditujukan untuk menghasilkan kompresi suara yang jernih dan efisien untuk dilewatkan lewat jaringan. Intinya, Opus ingin dengan bitrate seminimal mungkin menghasilkan suara sekaya mungkin. Opus diciptakan oleh XIPH sebagai jawaban untuk teknologi suara yang bebas paten.

CELT adalah implementasi XIPH untuk Opus. Dari beberapa hasil uji terhadap beberapa kodek, Opus menghasilkan suara yang bagus. Hal ini mungkin karena Opus merupakan hasil karya IETF dalam menghasilkan format suara yang lebih baik.

Saya pribadi, sih, menganggap saat ini AAC+ sebagai format yang paling baik untuk radio Internet. Mungkin karena saya belum pernah mendengarkan radio daring berdasarkan Opus. Saya hanya tahu ada AAC+ dan MP3. Saya juga penasaran untuk mencari radio daring yang menggunakan Opus.

Kemungkinan CELT dipakai sebagai format untuk mikrofon yang membutuhkan teknologi kompresi. Alasan saya karena kompresi ini cukup cepat dan optimal sehingga dapat dilewatkan ke jaringan secara waktu-nyata.

Akhir Kata

Aduh, ini tulisan sebenarnya iseng-iseng mau santai karena entri-entri sebelumnya terlalu teknis. Tapi, kok, setelah selesai ditulis dipenuhi tautan ilmiah. Mohon maaf kalau ini jadi agak-agak akademis sedikit.

Kalau ada orang yang menertawakan penggunaan FOSS, saya sekarang yang akan menertawakan mereka. Sungguh bak katak dalam tempurung! Saya berhenti di sini dan akan memikirkan entri lain yang lebih non-teknis.

Bisnis Berdasarkan Free Software

Bisnis Berdasarkan Free Software

Pikiran Matt Wullenweg tentang 4 prinsip kebebasan Stallman. Perangkat lunak bebas dapat dijadikan bisnis dan menguntungkan kemanusiaan juga.

The Four Freedoms

To look like the deer in the headlight

To look like the deer in the headlight

“To look like a deer in the headlights” is an American expression meaning “to look stunned and at a loss for words when asked an unexpected question or made the center of attention”

Ekspresi “to look like the deer in the headlight” itu sebuah metafora bagi seseorang yang terkejut dan kehilangan kata-kata dan selanjutnya melakukan tindakan bunuh diri (secara karakter). Sering kali rusa terkejut dan terhenti ketika melintas jalan dan tersorot lampu mobil. Lalu, ia mengambil tindakan yang salah — bukannya lari ke samping jalan — ia berusaha menyeruduk mobil tersebut.

Bacaan Lebih Lanjut

Kultur Termasuk Dalam Parameter Studi Sosial

Kultur Termasuk Dalam Parameter Studi Sosial

Sebuah studi berusaha membuktikan bahwa studi sosial memerlukan kultur sebagai perbandingan.  Studi sosial selama ini hanya bersifat kognitif tanpa memperhatikan kultur. Tetapi, studi ini membuktikan nilai yang berbeda bila sebuah studi yang sama dijalankan pada lingkungan budaya yang berbeda.

Why Americans Are the Weirdest People in the World

Komparasi Pustaka-pustaka SSL yang Terkena SSL

Komparasi Pustaka-pustaka SSL yang Terkena SSL

Dari sebuah blog, diketemukan bahwa baik NSS, GnuTLS, OpenSSL memiliki potensi masalah dengan alokasi memori. Blog tersebut menganalisis potensi tersebut dari bagaimana konvensi kode mereka tertulis. Anehnya, dari semua pengimplementasi SSL/TLS, JSSE malah justru implementasi yang aman dan terpercaya. Aneh karena mengingat akhir-akhir ini Java sering kali dituduh biang lubang keamanan. Such a plot twist! 😛

Tim Starling’s blog

LibreSSL Muncul!

LibreSSL Muncul!

Theo de Raadt mengumumkan bahwa tim OpenBSD merefaktor OpenSSL menjadi LibreSSL, demikian berita dilansir oleh Arstechnica. OpenBSD adalah sebuah distro BSD yang fokus kepada keamanan.

OpenSSL code beyond repair, claims creator of “LibreSSL” fork

Satu-satunya galat (bug) OpenBSD yang pernah  terbuka adalah saat FBI sengaja menaruh kode pintu belakang di sana. Galat ini pun dihapus dan pelaku didepak. Lagipula, OpenBSD menulis OpenSSH, implementasi SSH yang terbuka dan aman yang digunakan oleh banyak pengguna dan sistem operasi. Menurut saya, hal ini menunjukkan bahwa LibreSSL berada di tangan yang bertanggung jawab.

LibreSSL merupakan bentuk frustrasi dari seseorang tentang OpenSSL memiliki implementasi malloc (memory allocator/pengalokasi memori) sendiri yang cacat dan beberapa galat-galat serius yang bertahun-tahun dibiarkan terbuka. Kendati OpenBSD, FreeBSD, dan bahkan Debian terus menambal kecacatan tersebut, namun nyatanya OpenSSL tidak pernah mengubah kode-kode tersebut.

origins of libressl

Proyek ini masih muda, namun saya rasa Debian dan yang lainnya akan segera mengikut ke LibreSSL. Entah mengapa, prefiks Libre seperti memberi tanda bahwa percabangan ini seperti kasus OpenOffice dengan LibreOffice. Waktu itu orang muak dengan Oracle yang tidak menerima masukan tambalan-tambalan dari orang lain. Apalagi, sepertinya tidak ada pihak mana pun yang berseberangan dengan OpenBSD.

Hal yang menarik adalah menurut saya bagaimana seandainya kita yang mengompilasi LibreSSL dan menggunakannya untuk NGINX, Apache2 HTTPd, dan beberapa perangkat lunak lainnya yang tergantung kepada OpenSSL. Apalagi LibreSSL kompatibel secara binari dengan OpenSSL. Saya akan lihat bagaimana perkembangannya kelak.[1]

BONUS: laman yang terdedikasi untuk OpenSSL semenjak Heartbleed.

OpenSSL Valhalla Rampage

 


  1. Bila DoTA 2 saya lagi menang dan saya tidak malas. ^
Tentang Akun PATH yang Menyela Ibu Hamil

Tentang Akun PATH yang Menyela Ibu Hamil

Sekarang sedang ramai dalam pembicaraan tentang seorang dara yang mengomel di PATH karena kehadiran ibu-ibu hamil yang seenaknya saja minta jatah kursi duduk. Beliau menuduh wanita hamil itu malas karena tidak berangkat pagi jam lima seperti ibu-ibu hamil yang lainnya. Akibat perkataan tersebut, ia dicela oleh banyak orang di Internet.

Yang pertama, saya juga mau bilang bahwa yang menyebarkan tulisan dara tersebut sama bersalahnya. Mereka tidak tahu bahwa efek menyebarkan tulisan tersebut secara daring akan berakibat fatal bagi sang dara. Apalagi, apa yang dipasang di Internet takkan pernah bisa dihapus. Aib ini akan melekat seumur hidup dara ini.

Seandainya pun memang dia bersalah, apakah dara tersebut tidak layak untuk mendapatkan pengampunan?

Yang kedua, selaku pengguna KRL, saya juga sering menjumpai tingkah ini bukan hanya sang dara. Saya menjumpai bahkan kaum lelaki pun ada yang tidak punya kemaluan dengan berbalik mengejek ibu-ibu hamil sampai menyuruh dengan kasar ibu tersebut untuk ke gerbong wanita. Jadi, perilaku sang gadis bisa jadi merupakan bentuk empati dari sekelilingnya yang juga kesal dengan kelakuan ibu hamil.

Menurut UndangUndang yang berlaku, perusahaan wajib memberikan cuti dibayar selama tiga bulan kepada ibu hamil. Sisanya tergantung negosiasi dengan perusahaan, alias bisa jadi cuti yang dibayar. Saya tidak tahu bagaimana perusahaan di Indonesia mengaturnya, namun menurut UU Pasal 154 huruf b No. 13/2003 jelas mengatur bahwa ibu hamil yang dipaksa berhenti bekerja dapat membela diri.

Yang ketiga, seberapa tahu ibu-ibu hamil dengan haknya? Jangan-jangan dia tidak tahu dengan UU ini sehingga ia terintimidasi dengan kontrak yang mengharuskan dia bekerja. Seberapa, sih, peraturan perundang-undangan mengatur gaji seseorang? Jangan-jangan dengan mengambil cuti hamil tersebut, seseorang kehilangan sejumlah besar penghasilannya.

Yang keempat, transportasi yang tidak manusiawi, jalan yang berlubang, dan rambu-rambu yang tidak efektif membuat perilaku sebagian kita, terutama yang berkendara (umum/pribadi) di DKI Jakarta, berubah menjadi lebih beringas. Ini dikarenakan fungsi kontrol pemerintah yang tidak benar. Bagaimana cara memecat anggota Dewan yang tidak bekerja? Bagaimana masyarakat memiliki kontrol terhadap anggaran dan hasil kerja? Adakah pihak media massa yang secara aktif meliput penggunaan kas negara terutama tentang transportasi umum ini?

Yang kelima, hal ini justru sebuah indikasi untuk mempertanyakan bagaimana pendidikan moral berlangsung saat ini. Apakah nilai-nilai Pancasila seperti Budi Pekerti, Tenggang Rasa, dan Hormat-menghormati sudah tak lagi diajarkan di sekolah? Ataukah jangan-jangan sudah tidak lagi relevan. Ini buat semua orang, bukan hanya sang “tertuduh”.

Yang keenam, tahukah kita bahwa dara tersebut pun berhak karena dia pincang? Tahukah kita kondisi KRL pada jam sibuk? Yap, terkadang kita suka menghakimi tanpa tahu kondisi orang tersebut. Tahukah kita beban hidupnya sehingga dia berusaha mengeluarkan kekesalan dalam pikirannya yang menumpuk? Hal tersebut menyebabkan kita marah kepada orang lain.

Saya sebenarnya mau membahas tentang cyber-bullying dan efeknya bagi orang Indonesia. Itu sebabnya, saya sedang memantau kalau-kalau terjadi sesuatu dengan dara ini. Kalau itu terjadi, saya rasa memang perlu bangsa ini dibukakan tentang bahayanya cyber-bullying.

Ada yang lebih mengerti permasalahannya? Saya juga mau tanya pengalaman teman-teman di negeri orang tentang ibu hamil dan transportasi umum. Siapa tahu ada yang lebih berpengalaman.

Itu makanya, saya minta supaya pejabat publik supaya sekali seminggu menggunakan transportasi umum. Biar dia tahu bagaimana laknatnya kondisi di sana pada jam sibuk. Jangan cuma naik mobil ditemani voorrijder.

Artikel: Heartbleed: Is Linus Torvald’s law invalid?
The Prince's Heart

Artikel: Heartbleed: Is Linus Torvald’s law invalid?

Heartbleed: Is Linus Torvald’s law invalid?

http://www.muktware.com/2014/04/heartbleed-linus-torvalds-law-invalid/25465

Karena galat serius di OpenSSL, banyak yang menyerang FOSS. Kalau mau jujur, bagaimana kita tahu kualitas kode sistem tertutup? Berapa baris kode yang jelek karena diburu-buru waktu rilis proyek? Berapa galat serius yang dibiarkan terbuka? Anda takkan tahu panu mereka yang tak terbuka.

Beberapa waktu yang lalu ada yang menyarankan SIAKNG menggunakan cloud merek tertentu. Saya hanya bisa tertawa. Sebagai pengamat distributed computing dari zaman grid, munculnya riset seorang mahasiswa Israel tentang hipervizor yang melahirkan Xen, dan akhirnya API-based infrastructure yang melahirkan Amazon EC; saya ikuti semua dari nol. Semua inovasi dari FOSS.

Mengapa itu terjadi?

Karena pengetahuan dibagi dan tak dibiarkan membusuk tak terpakai. Ada hal-hal yang lebih tinggi yang menyebabkan FOSS berharga bagi kemanusiaan. Namun, saya rasa Anda takkan tertarik saya membahas filosofi.

TL;DR

Suara Kresek-kresek pada LG G2 D802 Kit Kat 4.4.2

Suara Kresek-kresek pada LG G2 D802 Kit Kat 4.4.2

Semenjak saya memperbaharui sistem operasi dari Jellybeans (4.2.2) ke  Kit Kat (4.4.2), terjadi gangguan saat memainkan musik dengan menggunakan pendengar (headphone).

Saya pikir yang rusak konektor di telepon. Saya sudah mau berpikir untuk menggunakan garansi. Apalagi, pendengar yang saya gunakan Audio Technica ATH-M50 berjalan dengan baik di komputer dan perangkat lainnya.

Ternyata, saya tidak sendirian:

THAT Kitkat Audio Bug – Hissing/Crackling. – xda-developersTHAT Kitkat Audio Bug – Hissing/Crackling. G2 General

Banyak juga yang mengalami apa yang saya alami. Nampaknya ini terjadi kepada perangkat pendengar kelas atas. Pendengar bawaan dari LG dan pendengar-pendengar biasa tidak mendengar sama sekali gangguan tersebut.

Apa, sih, gangguan tersebut? Kalau memainkan musik, ada bunyi kresek-kresek yang menemani. Ini contoh video gangguan yang terekam:

Solusinya?

Pertama, kalau Anda tidak ingin garansi resmi hilang, lebih baik jangan pindah ke Kit Kat dulu. Atau, kalau terlanjur, kembali saja ke Jelly Beans.

Kedua, solusi parsial, akan hilang bila telepon dinyalakan ulang. Caranya adalah dengan melakukan kalibrasi loopback, mik 1, mik 2, dan mik 3. Cara ini parsial karena masalah akan datang kembali ketika telepon dinyalakan ulang.

xda-developers – View Single Post – THAT Kitkat Audio Bug – Hissing/Crackling.Senior Member Thanks Meter 234 Ok so unplug your headphones. Click reboot on your device. When your device will reboot plug the headphones. Go to dial keypad. Look about what sound keypad keys like 2,5,0,#. Delete all what you typed. Type in dial 3845#*802#, it will show Hidden Menu.

Cara ketiga, bila menggunakan pendengar yang dilengkapi dengan mik, dapat dilakukan Hook Key Test. Cara ini juga parsial karena akan hilang ketika pendengar dicopot dari telepon.

Cara terakhir, cara yang menghilangkan garansi. Anda perlu root telepon Anda, pasang Xposed 2.5+ dan modul G2 Tweaks Box 2. Ubah mixer_path.xml pada telepon Anda. Lalu, pada G2 Tweaks Box aktifkan tambalan:

Sound Tweaks—————>Fix Hissing Headset issues

Setelah itu, silakan nyalakan ulang telepon. Maka, masalah ini akan selesai.

Berhubung G2 saya masih garansi, saya tidak menggunakan cara terakhir. Saya melaporkan hal tersebut pada LG. Nasib.

 

Fanart untuk The Raid 2

Komunitas Kaskus mengumpulkan gambar-gambar buatan penggemar. Luar biasa sekali kalau melihat mereka membuat karya mereka.

The Raid 2 : Berandal (2014) — Part 2 – Kaskus – The Largest Indonesian CommunityThe Raid 2 : Berandal (2014) — Part 2 Movies Forum penggemar film, simak info terbaru seputar dunia perfilman, serial TV, sinetron hingga miniseri favorit.
via Kaskus
Lisensi Resmi Saya

Lisensi Resmi Saya

Seringkali orang salah kaprah dalam memperkenalkan Perangkat Lunak Bebas/Terbuka (PLBT atau FOSS, Free/Open Source Software). Mereka selalu memperkenalkannya sebagai produk gratis. Akibatnya, orang menganggap remeh produk-produk PLBT sebagai produk untuk kaum proletar.

Saya punya lisensi Windows XP Professional asli. Saya juga punya lisensi Microsoft Office 2007. Saya pun punya lisensi Microsoft Visio 2010. Tetapi, mengapa saya masih memilih GNU/Linux.

Iya, seperti yang Anda lihat saya bertahap memiliki perangkat-perangkat lunak tersebut seiring dengan kebutuhan. Kebutuhan membuka berkas-berkas tersebut dari orang lain. Dan, dari waktu ke waktu saya pasti mengeluhkan hal tersebut di media sosial. 🙂

Berapa, sih, fitur yang diinginkan kebanyakan kita dari sebuah pengolah kata? Saya rasa tak banyak dan fitur-fitur populer kebanyakan sudah diimplementasi dengan baik di produk-produk PLBT.

Kebanyakan dari kita hanya terperangkap oleh euforia produk. Padahal, ada pembelajaran yang diperlukan ketika sebuah versi baru diluncurkan. Namun, kita menganggap itu wajar dan menerimanya dengan lapang dada. Berbeda bila itu sesuatu dengan merek lain. Alergi ini yang menyebabkan kita masih ketergantungan dengan produk-produk asing dan vendor.

Kalau orang bertanya kepada saya, mengapa saya membela PLBT? Jawaban saya adalah karena PLBT memberikan kebebasan, kreativitas, dan integritas untuk berkembang. Saya percaya dengan PLBT kita bisa mandiri dan menciptakan lingkungan kerja yang terhubung satu sama lain.

Privasi, Data Terbuka, Pemerintahan, dan Hak Azasi Manusia

Privasi, Data Terbuka, Pemerintahan, dan Hak Azasi Manusia

We don’t have to give up our privacy to have good government. We don’t have to give up our liberty to have our security…. — Edward Snowden @TEDTalks 2014, Vancouver, Kanada

Julia benci kepada Jamilah. Roy orang yang ia cintai lebih perhatian kepada Jamilah. Maka, ia merancangkan cara supaya Roy tidak suka kepada Jamillah.

Ketika Jamilah sedang sholat, Julia merusakkan kaca mobil Roy sambil kabur. Roy pun tergopoh-gopoh mendengar suara pecah di luar. Ia marah besar melihat kaca mobil yang ia peroleh dengan susah payah pecah.

Tak lama kemudian, Julia dengan tampang cemas pun mendatangi Roy yang sedang marah besar. Ia berusaha menghibur-hibur Roy. Sesuai dengan waktu yang sudah ia kalkulasikan, Jamilah keluar dari ruang sholat seperti biasa.

Dengan mata terbelalak khas Sinetron, kemudian Julia menunduk Jamilah, “Roy, aku  lihat Jamilah tadi lewat. Lihat, dia lewat ruang Janitor, pasti dia baru membuang barang bukti.”

Jamilah pun yang baru keluar kaget. Ia pun berkata,

“T-t-tapi a…”

Udah, deh, kamu ngaku aja. Buktinya sudah jelas!” Julia memotong Jamilah sehingga ia tak dapat menyelesaikan kalimatnya. Jamilah yang masih syok pun tak dapat berkata apa-apa.

Roy yang panik dan marah kemudian menyambangi Jamilah. Ia menampar Jamilah. Matanya berair ketika ia bilang,

“Aku kira kamu orang baik. Tapi aku gak nyangka kalau ternyata kamu sebrengsek ini. Mobil ini hadiah almarhum ayahku.”

Jamilah pun menangis, ia tak bisa berkata apa-apa lagi. Julia kemudian memanggil Roy dan membawa dia. Di balik punggung Roy, ia pun tersenyum kepada Jamilah dengan senyum kemenangan.

Gantikan Jamilah dengan warga negara misalnya minoritas yang tak punya akses untuk suaranya didengar. Gantikan Julia dengan pemerintah atau elit politik korup yang punya kepentingan dan kekuasaan di media. Gantikan Roy dengan masyarakat umum. Maka, privasi dan keterbukaan informasi publik menjadi penting.

Seandainya Julia tidak melakukan pengintaian terhadap Jamilah tanpa sepengetahuan Jamilah, ia takkan tahu kebiasaan Jamilah. Seandainya ada mekanisme verifikasi maka Julia takkan bisa seenaknya menuduh Jamilah. Roy pun tidak akan kalap dan menuduh sembarangan. Semua adegan yang sebelumnya terjadi pun tidak perlu terjadi. Keadilan pun ditegakkan.

Dan itulah makanya rekan-rekan, pentingnya keterbukaan informasi publik dan privasi bagi individu.

Kemenangan untuk Rakyat

Kemenangan untuk Rakyat

Kalau misalnya Jokowi kalah dalam pengadilan ini, maka kasus ini bisa dijadikan referensi hukum untuk menuntut siapa pun yang telah memberikan janji politik. Dalam hal ini, Jokowi jadi martir di sini. 🙂

Ya, tapi, kalau pun menang. Selamat untuk Jokowi. Anda baru saja melewati tribulasi pertama. Semoga Anda sukses.

Resmi Laporkan Jokowi, Tim Advokasi JB Bawa Bukti Kontrak PolitikRODERICK ADRIAN MOZES Gubernur DKI Jakarta Joko Widodo (Jokowi) memberikan keterangan kepada wartawan seusai acara penandatanganan perjanjian kerja sama antara Ditjen Pajak Kemenkeu dan Pemprov DKI Jakarta, di Balaikota Jakarta, Senin (17/3/2014). Jokowi masih menjalani fungsinya sebagai gubernur setelah ditunjuk menjadi calon presiden oleh Ketua Umum Partai Demokrasi Indonesia Perjuangan, Megawati Soekarnoputri.
via Kompas