Teknologi & Politik

Baru-baru ini beredar berita tentang Google yang membatasi akses Huawei terhadap kode Android dan layanan Google lainnya (Google Play, Gmail App). [Link berita akan saya kumpulkan dan letakkan di bagian akhir dari tulisan ini.] Ini berita yang cukup menggemparkan meskipun merupakan sesuatu yang sudah lama diduga oleh negara-negara yang bergantung kepada layanan sebuah perusahaan di sebuah negara tertentu. Mereka tidak mengira bahwa hal ini akan dieksekusi.

Sebagai sebuah perusahaan yang berdomisili di Amerika, Google harus taat kepada peraturan dari pemerintah Amerika Serikat. Maka ketika pemerintah Amerika Serikat memutuskan bahwa perusahaan Huawei melanggar berbagai keputusannya [dibutuhkan referensi di sini] maka pemerintah melarang perusahaan lain untuk melakukan bisnis dengan Huawei. Mau tidak mau Google (dan perusahaan Amerika lainnya) harus nurut.

source: https://www.theasset.com/belt-road-online/35604/us-warns-europe-against-using-huawei-

Ini merupakan contoh politik yang mempengaruhi bisnis. Sebetulnya kalau mau ditelaah lebih lanjut lagi, ini mempengaruhi teknologi. Sedemikian pentingnya teknologi sehingga menjadi salah satu penentu keputusan. Kali ini teknologi 5G yang menjadi perebutan. Setelah ini kemungkinan teknologi Kecerdasan Buatan (Artificial Intelligence / AI) yang akan mendapat perhatian yang sama, karena AI ini sama pentingnya (bahkan dapat dikatakan lebih penting) dari teknologi 5G.

Berulangkali saya katakan kepada mahasiswa saya agar tidak buta politik, tetapi jangan terjun ke politik praktis. Pahamilah politik sehingga kita tidak tersesat atau bahkan ditunggangi oleh kepentingan politik (praktis).

Lantas bagaimana dengan kita di Indonesia?

Kasus ini membuka mata kita seberapa tergantungnya kita dengan teknologi asing. Begitu pihak asing menutup teknologi tersebut, matilah kita. Maka kemandirian teknologi bukanlah isapan jempol. Dia merupakan sebuah hal yang riil. Kedaulatan Teknologi.

Contoh yang riil. Beberapa waktu yang lalu (tahunan?), kami pernah mengusulkan adanya “app store” sendiri. Handphone yang beredar di Indonesia dapat menggunakan “app store” kita sendiri. Namun nampaknya ide ini belum mendapat dukungan dan bahkan tidak dimengerti. Sekarang semoga kita mengerti mengapa perlu ada “local app store“. (Rincian mengenai hal ini masih harus dibahas. The devils are in the details.)

Demikian pula kemampuan untuk membuat kernel dari sistem operasi (terutama untuk handphone) juga merupakan hal yang utama. Tidak banyak orang Indonesia yang ngoprek tentang hal ini. Saya hanya tahu beberapa orang saja. Apakah Anda pernah ngoprek kernel sebuah sistem operasi?

Kebutuhan SDM (sumber daya manusia) yang menguasai teknologi-teknologi ini secara mendalam dapat dikatakan sangat kritis. Darurat SDM teknologi. Apakah kita akan menunggu sampai kita diblokir dulu baru kemudian bergerak?

Tautan terkait berita Huawei

Iklan

Data Entry

Mari kita bahas (lagi) tentag dota entry, eh data entry. Supaya lebih jelas, saya akan ambilkan sebuah contoh kasus pemilihan umum di sebuah negara antah berantah.

Seorang operator data entry menemukan form (borang) dengan data seperti berikut:

calon #1 = 20
calon #2 = 20
calon #3 = 20
total suara = 80

Jika kita perhatikan, maka jumlah total suara tidak sama dengan jumlah yang seharunya. Jumlah seharusnya adalah 20+20+20 = 60. Jika Anda operator data entry tersebut, apa yang Anda lakukan?
(a) perbaiki data;
(b) masukkan (entry) data persis seperti itu.

Misalnya Anda berniat untuk memperbaiki data tersebut. Apa yang akan Anda perbaiki? Misal Anda ambil inisiatif mengubah jumlah total suara. Oleh Anda total suara diganti menjadi 60. Jreng! Anda masukkan data dan ternyata keputusan Anda itu salah! Maka Anda (dan institusi tempat Anda bekerja) langsung mendapat tuduhan menghilangkan suara! Ribut.

Kenapa keputusan Anda salah? Karena ternyata ada beberapa kemungkinan kesalahan. Kemungkinan pertama, yang salah adalah data untuk calon #3. Seharusnya data yang benar adalah “calon #3 = 40“. Maka jumlah total suara sudah benar, 80. Nah lho.

Kemungkinan tersebut bukan satu-satunya kemungkinan. Bisa jadi yang salah adalah data di calon #1 atau calon #2 atau keduanya atau ketiganya. Misalnya, bisa jadi datanya harusnya “calon #2 = 30” dan “calon #3 = 30“. Dan seterusnya. Paham maksud saya kan?

Ok. Cara yang paling aman adalah data dimasukkan APA ADANYA. As is. Pilihan (b). Sebagai seorang operator, Anda memasukkan data apa adanya. Seperti mesin scanner saja. Namun form ini diberi tanda (flag, warning) bahwa ada masalah di dalamnya. Tolong seseorang (manusia) melakukan verifikasi ulang.

Nah, inilah yang terjadi pada sistem perhitungan suara di Pilpres 2019. Itulah sebabnya terlihat bahwa sistem seperti tidak melakukan perhitungan, padahal dia melakukan perhitungan tetapi untuk jumlah yang salah ini maka aplikasi akan meminta perhatian seorang pemeriksa.

Ada yang berkomentar juga, kalau begitu seharusnya aplikasi tidak mau menerima data yang salah tersebut. Data yang jumlahnya totalnya salah, misalnya, jangan dimasukkan. Lah, jika demikian maka data itu mau diapakan dibuang? Ini malah bermasalah. Seolah-olah operator melakukan kecurangan dengan membuang data. Malah akan lebih bermasalah lagi. Tuduhannya malah lebih berat lagi. Jadi sudah benar bahwa data tetap dimasukkan tetapi diberi tanda (flag, warning).

Sudah kepanjangan ah.

Desain Sistem Informasi

Mumpung sedang ramai dibahas tentang web KPU, ini adalah sedikit corat-coret dari saya. Disclaimer dulu. Saya tidak terkait / terlibat dengan KPU saat ini, sehingga apa yang saya tuliskan saat ini tidak terkait dengan KPU.

Jika saya diminta untuk mendesain sebuah sistem informasi yang dapat diakses dari internet, maka desain saya kemungkinan seperti gambar di bawah ini. Namun, sebelumnya harus ada asumsi-asumsi dahulu. Sistem yang saya maksudkan bukan sistem yang real-time, dalam artian kita memasukkan sesuatu langsung tampil responnya. Sistem internet banking itu saya masukkan ke kategori “real-time”. Soalnya ketika kita melakukan transaksi, kita kan ingin melihat hasilnya segera bukan 10 menit lagi. Sementara itu sistem tabulasi hasil pemilu, misalnya, tidak harus demikian. Data dimasukkan dan hasil tabulasi boleh 5 menit lagi dikeluarkan (secara berkala).

Kita mulai dari agak kanan bawah, ke bagian aplikasi data entry. Aplikasi ini terhubung dengan sebuah database (db). Aplikasi ini diletakkan di belakang sebuah firewall dan tidak dapat diakses langsung oleh operator (user / pengguna).

Operator mengakses aplikasi melalui internet dengan menggunakan VPN. Operator terhubung ke sebuah “application gateway” yang merupakan proxy untuk aplikasi sesungguhnya. Data yang dimasukkan (entry) oleh operator akan diterima oleh aplikasi proxy dan diteruskan ke aplikasi sesungguhnya. Pada proxy ini dapat dilakukan proses perlindungan, verifikasi (terhadap kemungkinan serangan pada tingkat aplikas), sanitasi input, dan seterusnya. Data yang sudah disanitasi ini kemudian diteruskan ke aplikasi data entry sesungguhnya yang kemudian memasukkan data tersebut ke dalam database (db).

Database (db) ini kemudian dipindahkan ke database satunya lagi yang berada di bagian paling kanan bawah (ah, seharusnya pada gambar tersebut saya beri nomor ya). Dimungkinkan proses koreksi, verifikasi, dan proses-proses lainnya terhadap data. Data dalam database inilah yang kemudian dipakai untuk perhitungan atau ditambilkan. Data dalam bentuk report dapat dihasilkan oleh proses perhitungan. (Biasanya hasilnya dibuat dalam bentuk static agar nanti mudah disajikan dan menghindari penyerangan di tingkat aplikasi).

Hasil tabulasi ini (halaman web statik) dilemparkan ke application gateway (sebelah kiri, harusnya pakai nomor juga). Application gateway inilah yang mendistribusikan hasil ke web (server) publik, ke SMS gateway, ke fax, ke TV, dan seterusnya. Update distribusi ini dapat dilakukan berkala. Misal untuk web dapat dilakukan setiap 5 menit sekali.

Publik mengakses hasil di web (server) publik yang berisi data statik yang diupdate setiap 5 menit sekali. Jika web ini diretas (hacked) – amit-amit – maka dalam waktu 5 menit, hasilnya akan diperbaiki lagi. Otomatis. ha ha ha.

Demikianlah corat-coret singkat saya.

[Catatan: diagram saya sederhanakan. Ada banyak hal yang tidak saya tampilkan, misalnya IDS, NTP, log server, SIEM, monitoring, redundansi, dll.]

Untuk aplikasi. Nanti ya. Saya mau ngajar dulu.

Update: versi video dari tulisan ini sudah tersedia di YouTube.

Sistem informasi (berbasis) Internet


Pemilu Yang Dapat Diverifikasi

Mari kita bahas tentang electronic voting (e-voting). Perkembangan teknologi informasi memungkinkan kita untuk melakukan berbagai aktivitas secara elektronik. Demikian pula, pemilihan umum akan dapat dilakukan dengan menggunakan aplikasi teknologi informasi. Tinggal tunggu waktu saja.

Salah satu masalah yang mengganjal mengapa orang-orang belum mau menggunakan e-voting adalah masalah keamanannya (security). Ternyata ini masih menjadi ketakutan utama. Sudah banyak penelitian yang dilakukan untuk meningkatkan keamanan dari berbagai e-voting. Namun fokus utama dari kebanyakan penelitian ini adalah pada aspek kerahasiaannya saja. Anonimity. Memang ini adalah salah satu faktor utama dari pemilu. Di Indonesia, ini menjadi bagian dari LUBER; Langsung, Umum, Bebas, dan Rahasia.

Salah satu aspek lagi yang mengganjal adalah bagaimana kita dapat memastikan bahwa suara kita sampai ke pusat dan tidak berubah. Verifiability. Masalahnya adalah kita juga tidak ingin orang lain tahu. Ini ternyata susah. Mau keduanya: anonimity & verifiability.

Ini adalah fokus utama dari penelitian mahasiswa S3 saya, pak Teguh. Penelitian masih berlangsung. Nanti jika penelitian sudah selesai, disertasinya dapat diunduh.

Harapan kami adalah para pemilih dapat menguji apakah suaranya yang dihitung di pusat perhitungan (kalau di Indonesia, KPU) sudah benar. Hal ini mudah-mudahan dapat membuat masyarakat dapat menerima e-voting.

Data Entry Pemilu 1999

Mumpung sedang ramai dibahas tentang “lambatnya” data masuk dari hasil Pemilu 2019 ini, saya ingin cerita pengalaman 20 tahun yang lalu. Iya, 20 tahun yang lalu ketika Pemilu 1999. Mungkin banyak yang belum lahir ya tahun segitu?

Pada tahun 1999, komputer dan internet akan digunakan sebagai bagian dari penyampaian informasi data pemilu. Perlu diingat – sekali lagi, perlu diingat – bahwa hasil pemilu yang sah adalah hasil perhitungan manual. Sampai sekarang masih demikian. Tetapi kami ingin penampilan yang cepat ini untuk menjadi kendali (control) agar penyelenggara (KPU) tetap netral dan kesalahan-kesalahan dapat dihindari / dikurangi. Pada waktu itu ada banyak partai politik dan tingkat kepercayaan satu sama lainnya juga tidak terlalu tinggi. Jadi harus ada sebuah cara agar mereka dapat memantau. Maka penggunaan teknologi informasi dalam pemilu sebagai alat bantu sangat disetujui oleh semuanya.

Salah satu sumber utama dalam kesalahan adalah kesalahan dalam memasukkan data ke sistem. Kesalahan pada data entry. Begini, jika kita memasukkan data dalam bentuk tabel ke komputer – misal ke spreadsheet – maka pekerjaan ini terlihat mudah. Iya, jika yang kita masukkan datanya sedikit. Kalau misalnya kita diminta untuk memasukkan data *SEHARIAN*, dapat dijamin pasti ada kesalahan. Maklum, yang namanya manusia pasti ada lelahnya.

Itu baru kesalahan oleh satu orang manusia. Ketika kita berbicara ribuan orang yang melakukan data entry, maka dapat dibayangkan jumlah kesalahan yang dapat terjadi.

Scale matters!

Kami mencoba mencari solusi-solusi yang dapat membantu memudahkan data entry tersebut. Salah satunya adalah dengan menggunakan scanner. Kami sempat kontak berbagai perusahaan pembuat scanner di dunia. Ya, skala dunia. Ternyata, pada waktu itu, scanner yang memiliki kecepatan tinggi (high speed) dan tingkat akurasinya tinggi harganya mahal dan tidak bisa di-deliver dalam waktu singkat. Saya lupa lagi tingkat akurasinya berapa, tetapi sebetulnya masih belum memuaskan. Ini juga terkait dengan borang (form) yang akan di-scan. Jadi solusi scanner terpaksa lewat.

Kemudian kami sempat pula mendesain borang (form) untuk memasukkan data tersebut. Form yang dibuat ditujukan untuk mengurangi dan mendeteksi kesalahan. Pinjam ide dari pencatatan keuangan. Jumlah ke kanan dan ke bawah nantinya kalau dijumlahkan harus sama. Ternyata form-nya menjadi kompleks. Kebayang kalau ini harus dikerjakan oleh para petugas di lapangan. Padahal kami sudah berusaha untuk membuatnya lebih mudah. Maksimal hanya butuh kalkulator. Tapi tetap saja ini masih kurang masuk akal. Pendekatan ini berhenti juga.

Berikutnya lagi adalah mencari orang-orang yang terampil dalam memasukkan data. Ide yang muncul adalah bagaimana jika menggunakan operator-operator yang ada di bank? Ini ide keren. Pertama, mereka sudah terbiasa menggunakan komputer dan sudah terbiasa melakukan data entry. Kedua, bank-bank sudah terhubung dengan jaringan, bukan internet tetapi SISKOHAT (sistem informasi untuk penyelenggaraan haji). Jadi tidak perlu tarik jaringan sendiri. Ingat ini 20 tahun yang lalu ketika internet masih belum tersedia dimana-mana. Handphone belum ada. ha ha ha. Bank ada dimana-mana. Ketiga, kalau pegawai bank ini nakal maka bisa ada sanksi dipecat sehingga ada kendali. (Ditambah lagi ada SOP – standard operating procedure – bahwa panitia pemilu melihat pegawai bank ini melakukan data entry). Keempat, jaringan SIKOHAT ini adalah jaringan antar bank yang bukan internet, sehingga kalau mau menyerang harus menjadi bagian dari jaringan bank ini. Jauh lebih aman daripada internet. Maka ide ini dilaksanakan.

Hasilnya, tanpa banyak orang yang mengetahui, maka data pemilu dapat diproses lebih cepat dari sebelumnya. Demikian pula, banyak orang dapat melihat, memantau, dan mengawasi. (Soal penampilan di web, ceritanya akan menyusul ya.)

Ini hanya sedikit cerita tentang data entry. Masih ada cerita-cerita lainnya, tetapi sudah kepanjangan. Nanti kapan-kapan diceritakan lagi. Semoga ini dapat memberikan pencerahan bahwa data entry itu tidak mudah. Sampai sekarang ini masih tetap menjadi masalah. Beneran.

Pentingnya Web KPU Bagi Kita Semua

Belakangan ini ada banyak opini, ajakan, tulisan yang salah. Ajakannya adalah untuk merusak web KPU. Wah ini salah sekali. Lebih salah dari salah.

Begini …

Pertama – dan yang paling utama – adalah hasil pemilihan umum yang resmi adalah hasil perhitungan secara manual. Titik. Itu dulu yang kita pegang. Hasil lain – apapun – tidak ada dasar hukumnya. Dahulu saya ingin agar data elektronik hasil pemilu dapat dianggap sah, tetapi landasan hukumnya tidak ada. Kami meneliti e-Voting. Sudah ada banyak mahasiswa S2 dan S3 saya yang meneliti di bidang ini. Namun secara hukum, untuk pemilu, ya sah adalah perhitungan manual.

Lantas apa hubungannya dengan web KPU? Kalau web KPU dirusak, ya tidak ada pengaruhnya. Lah yang dihitung adalah perhitungan manual. Iya, kertas yang kita coblos itu. Itu yang sahnya. Lha mbok data di web KPU mau diubah seperti apapun ya bakalan tidak pengaruh.

Kedua, justru web KPU itu kita butuhkan untuk memastikan bahwa KPU kerjanya benar. Kita dapat menguji apakah data yang ada di KPU sama dengan data yang ada di TPS kita. Kesalahan memasukkan data dapat terjadi. Perhatikan bahwa para petugas-petugas di lapangan bekerja keras, berjibaku menunaikan tugasnya. Bahkan ada yang bertugas lebih dari 24 jam. Kelelahan. Tentu saja ada kemungkinan salah menghitung atau salah melakukan data entry. Maka keberadaan web KPU dan kejelian mata kita untuk mendeteksi kesalahan dan melaporkannya kepada mereka. Itu akan menjadi umpan balik (feedback) bagi mereka untuk melakukan check & recheck.

Kalau web KPU dirusak, maka kita tidak punya kesempatan untuk ikut mengawasi. Upaya merusak web KPU itu menurut saya merupakan kejahatan kriminal yang harus dipidana. Maka menjaga web KPU merupakan tugas kita semua. Tugas seluruh warga Indonesia. Bagi yang melakukan pengrusakan, cabut saja kewarganegaraannya! Jika Anda melihat orang yang melakukan pengrusakan web KPU, tegur dan/atau laporkan ke Polisi. Sanggupkah kita melakukan tugas ini? Bersama-sama, kita pasti bisa! Mosok tidak bisa sih? Malu-maluin. Sini …

Khusus untuk Pemilu 2019, link kepada hasil perhitungan (sementara) ada link berikut ini. (Gunakan untuk memantau hasilnya ya. Jangan dirusak.)

https://pemilu2019.kpu.go.id/#/ppwp/hitung-suara/

sumber gambar


Tercapai 1000 YouTube Subscribers

Akhir tahun lalu saya mencanangan akan memiliki 1000 YouTube subscribers (pelanggan?) di kanal YouTube saya. Pada waktu itu saya memulai dengan sekitar 100-an orang saja. Maklum, pada waktu itu saya belum tertarik kepada YouTube. Sekarang saya harus melihat kepada YouTube karena saya memberikan pekerjaan rumah kepada mahasiswa saya (terkait dengan membuat video pitching start-up). Jadi terpaksa saya sendiri juga harus mencoba.

Tentu saja target pada akhir tahun lalu tidak tercapai. Gagal. Memang saya tidak melakukan hal yang khusus untuk meningkatkan jumlah subscribers saya. Saya ingin melakukannya secara organik, tidak pakai pura-pura atau menggunakan trick-trick yang nakal.

Awal tahun saya mulai mencoba menambahkan jumlah video di kanal YouTube saya. Teori saya – seperti yang sudah-sudah – adalah kuantitas lebih penting dari kualitas. Maka saya akan memperbanyak jumlah video dahulu. Inipun bukan hal yang mudah. Membuat video yang asal-asalan pun tidak mudah. ha ha ha. Tadinya ingin membuat satu video setiap minggunya, tetapi target ini juga tidak terkejar. Jangankan membuat video – menulis di blog ini saja juga sudah mulai keteteran. (Semakin banyak kegiatan-kegiatan saya. Harusnya saya tuliskan juga di blog ini ya? Hmm…)

Akhirnya beberapa hari yang lalu jumlah subscribers kanal YouTube saya sudah melewati 1000 orang. Target tercapai.

Target berikutnya adalah membuat video yang lebih banyak (dan lebih bagus) agar semakin banyak orang yang menonton dan semakin banyak orang yang belajar. Ya, saya ingin mengajari orang melalui YouTube.

Ayo, yang belum berlangganan, daftar di sana ya. Jangan lupa ya. Ini channelnya.

https://www.youtube.com/BudiRahardjoBandung