Kategori: Pemograman

Semua artikel yang berhubungan dengan pemograman seperti Java, TypeScript, C, dan sebagainya. Pemograman bukan hanya aktifitas menulis kode program, tapi juga termasuk proses pemikiran dalam menciptakan kode program. Sebelum mulai menulis kode program melalui keyboard, programmer juga memikirkan aspek seperti kemudahan maintenance, keamanan, dan sebagainya. Oleh sebab itu, teknik pengembangan sistem informasi seperti arsitektur dan design pattern juga termasuk dalam kategori ini.

Dari MySQL Ke Algolia Melalui Python

Hari ini saya harus melakukan operasi indexing di Algolia berdasarkan data dari database MySQL yang sudah ada. Saya hanya memiliki akses ke database tersebut tanpa kode program. Saya tidak menemukan tools otomatis untuk melakukan hal ini seperti layaknya Logstash di ELK (Elasticsearch, Logstash, Kibana). Beruntungnya, tidak sulit untuk menulis kode program yang membaca dari database MySQL dan mengirimkannya ke Algolia karena Algolia telah menyediakan libray pendukung di beberapa bahasa pemograman populer. Pertanyaannya adalah saya harus menulis dalam bahasa pemograman apa? Ini pastinya adalah sebuah script CLI dan bukannya aplikasi web; oleh sebab itu saya tidak akan menggunakan bahasa favorit saya: Java. Setelah berpikir sejenak, saya menyadari bahwa satu-satunya bahasa pemograman yang saya kuasai dan tepat untuk CLI adalah Python.

Membatasi Pengguna Yang Mendaftar Melalui Firebase Authentication

Pada sebuah proyek Angular, saya menggunakan Firebase Authentication, tepatnya FirebaseUI, sebagai halaman sign-in dan sign-up. Fitur ini mirip seperti Universal Login di Auth0, hanya saja FirebaseUI di-host pada aplikasi yang sama sementara Universal Login di Auth0 membutuhkan biaya tambahan untuk custom domain. Dengan FirebaseUI, saya mendapatkan halaman berikut ini tanpa banyak menulis kode program:

Tidak Ada Cara Yang Selalu Benar Dalam Membuat Software?

Apakah benar tidak ada cara yang selalu benar dalam membuat aplikasi perangkat lunak? Menghasilkan software yang bekerja bukanlah hal yang susah. Tetapi, tidak mudah untuk mencapai hasil yang ‘benar’: pengguna puas dan ingin merekomendasikannya pada orang lain, developer bahagia dan termotivasi, saham investor terus meningkat! Mungkinkah software yang sukses terjadi karena faktor keberuntungan (selain karena permainan politik dan intimidasi pengguna yang tidak patut ditiru)?

Memakai Mailgun Untuk Custom Domain Email Pribadi

Saya sudah sering menggunakan Mailgun dan Sendgrid untuk mengirim notifikasi email melalui kode program dan menerima reply email dari pengguna untuk diproses aplikasi web yang sedang saya kerjakan. Kali ini, saya tidak akan melakukan hal ‘biasa’ tersebut dengan Mailgun. Kasus kali ini adalah masalah pribadi: saya ingin punya akun email seperti owner@jocki.me yang dibuka melalui Gmail tanpa harus membayar $5 per user per bulan (langganan G Suite).

Kategori: Pemograman Tags: Email

Pengalaman Pertama Kali Memakai Visual Studio Code

Walaupun namanya mengandung Visual Studio, Visual Studio Code (VSC) adalah sebuah produk yang berbeda dari Visual Studio. Microsoft Visual Studio adalah sebuah integrated development environment (IDE) populer buatan Microsoft sejak tahun 1997 hingga sekarang. Versi gratis dari Visual Studio adalah Visual Studio Community Edition. Sebelum Community Edition, terdapat juga versi gratis dengan kemampuan terbatas yang disebut Visual Studio Express yang kini sudah tidak dilanjutkan lagi. Lalu, apa itu Visual Studio Code (VSC)?

Kategori: Pemograman Tags: VisualStudioCode

Membuat Web App Manifest

Salah satu ciri website PWA adalah sudah dilengkapi dengan web app manifest. Setelah memiliki web app manifest, pengguna bisa men-install website di Android tanpa harus melalui Google Play Store. Web site tetap bisa bekerja bila dijalankan dari shortcut hasil instalasi karena sudah menggunakan service worker. Untuk merasakan pengalaman install website, saya akan menambahkan web app manifest pada situs blog ini.

Kategori: Pemograman Tags: JavaScript PWA

Melakukan Query DNS Lewat HTTPS

Salah satu hal menarik dari DNS Resolver Cloudflare yang diluncurkan 1 April 2018 kemarin adalah ia bisa dipanggil melalui HTTPS. Ini adalah apa yang disebut sebagai DNS over HTTPS (DoH). Selain Cloudflare, DNS Resolver dari Google juga mendukung DoH. Bukan hanya itu, juga sudah tersedia website untuk pencarian hasil query DNS di https://dns.google.com.

Kategori: Pemograman Tags: JavaScript DNS

Memakai Service Worker Agar Website Berfungsi Saat Offline

Walaupun situs ini adalah sebuah situs statis, saat mencobanya secara offline, saya menemukan sebuah masalah. Setelah cache kadaluarsa, browser berusaha menarik file dari CDN seperti Bootstrap, Highcharts dan sebagainya. Alangkah baiknya bila saya menyimpan file yang dibutuhkan secara permanen untuk dipakai secara offline. Salah satu solusinya adalah dengan menggunakan Service Worker API yang biasanya identik dengan Progressive Web Apps.

Kategori: Pemograman Tags: JavaScript PWA Jekyll

Memakai Algolia Untuk Fitur Pencarian Di Jekyll

Salah satu fitur yang tidak saya jumpai setelah beralih dari Wordpress ke Jekyll adalah pencarian. Cukup masuk akal karena Jekyll menghasilkan halaman HTML statis tanpa menggunakan fasilitas di sisi server seperti database. Oleh sebab itu, bila ingin memiliki fitur pencarian, saya perlu menggunakan search engine terpisah yang akan meng-index setiap post di blog ini. Biasanya saya akan men-install ElasticSearch yang men-ekspos fasilitas pencariannya dalam bentuk REST API ‘siap saji’ bagi klien. Sebagai latihan, kali ini saya akan menggunakan Algolia yang merupakan layanan hosted tanpa perlu instalasi. Salah satu nilai tambah Algolia adalah memiliki Search UI yang menyediakan widget siap pakai untuk ditempelkan ke website. Karena ini adalah situs pribadi yang sederhana, saya mendaftar pada plan gratis Algolia yang memiliki batas 10.000 records dan 100.000 operasi pencarian per bulan.