5 Oktober, 2019

Redesign UI, fixing bugs, and using new tech?

Setelah mengetahui adanya beberapa bugs pada blog ini, tentu saya tidak tinggal diam untuk membiarkannya berkeliaran. Saat tulisan ini dibuat saya masih berusaha untuk membereskannya. Pada waktu yang sama, karena saya tipikal orang yang agak cepat bosan terhadap sesuatu yang berhubungan dengan visual, saya ingin mengubah desain dari blog ini. Perubahannya tidak terlalu radikal apalagi berhiaskan “blink – blink” yang menyilaukan mata, let’s check it out.

Dual Layout

Seperti pada kebanyakan blog lain saya memutuskan untuk menggunakan konsep dual layout. Sidebar dan content. Pada desain kemarin tidak menampilkan kategori maupun tag yang ada pada setiap tulisan, ya jadilah saya memilih konsep ini. Adapun dari sisi seni nya saya masih tetap menjaga konsep awal, yakni “monolog” (hitam & putih). Oiya dan kali ini saya menggunakan bentuk kotak dengan garis tebal.

Peningkatan performa dan efisiensi

Untuk memberikan kepuasan pada pengunjung (lah?) akhirnya saya menggunakan teknik cache sederhana dan lazy load untuk media gambar. Adapun jika kalian tidak mengetahui kedua hal itu maka beruntunglah karena telah mampir ke blog saya dan membaca tulisan ini.

Cache umumnya dalam dunia IT adalah teknik penyimpanan sementara. Apa yang disimpan? Data. Bentuknya tentu bisa apa saja, entah itu gambar, tulisan, video, dan lainnya.

Apa tujuannya ya? Bukannya sudah ada harddisk / SSD untuk menyimpan data? Data tersebut di simpan karena frekuensi penggunaannya sangat tinggi, aplikasi selalu membutuhkannya jika sedang digunakan, dan cache di simpan pada media yang kecepatannya jauh lebih tinggi di banding harddisk atau SSD, yakni pada memory (RAM). Tentu dengan begitu tidak semua data dapat di simpan pada cache. Kita harus memilih dengan bijak data apa saja yang akan di simpan pada cache. Nah pada blog ini saya baru menyimpan avatar saja sih hahaha. Eits, tapi meskipun cuma satu hal efeknya sangat besar loh. Bayangin aja tiap kali kamu membaca berbagai tulisan di blog ini, avatarnya di download berkali – kali dari server.

Lazy loading. Teknik yang sangat efektif dan terkenal dalam meningkatkan user experience ini membutuhkan hingga dua hari bagiku untuk mengimplementasikannya. Yaitu teknik di mana semua media (misal gambar) tidak di unduh dalam satu waktu.

Give me a good explanation!

Oke fine, relax. Saya mengerti, mungkin kamu masih bingung. Sebenarnya ada bahasa yang lebih mudah dimengerti. Gini, kamu pasti sering mencari gambar di Google kan? Nah kamu tahu ngga, berapa biasanya hasil pencarian gambar dari Google tersebut? Ratusan ribu atau bahkan jutaan. Bayangin aja kalau gambar yang segitu banyaknya langsung di unduh dalam satu waktu, di jamin kamu ngga akan mau menggunakan fitur pencarian gambar dari Google lagi. Yang di unduh dan di tampilkan hanyalah beberapa saja kan dalam satu area layar browser kamu, let’s say they were called as first batch. Nanti jika kamu menggulirkan layar hasil pencariannya sampai ke bawah maka Google akan mengunduh sekumpulan gambar lagi, batch kedua dan begitu seterusnya. That’s lazy loading. Sebuah teknik untuk memuat data pada saat dibutuhkan.

Teknik kedua ini sangatlah berharga di mana selain meningkatkan kecepatan agar blog ini cepat dimuat, juga menyelamatkan kuota data yang mana hal itu bagi masyarakat +62 adalah sesuatu yang berharga.

Perbaikan bugs

Yup, pada tulisan sebelumnya saya telah memaparkan beberapa bugs visual pada blog ini yang menurutku cukup menjengkelkan. Alhamdulillah bugs yang tingkat ancamannya tinggi berhasil ku bereskan 😂. Transparansi yang aneh pada halaman utama jika di buka pada browser Safari dan adanya “titik aneh” pada bagian navigasi. Adapun untuk favicon yang masih menggunakan logo Vuejs masih belum bisa ku kalahkan.

What’s next?

Setelah kembali berselancar baik di dunia nyata dan maya, sepertinya saya akan serius untuk menulis pada blog ini. Bukan hanya sekedar untuk menumpahkan opini atau tulisan random. Maka yang paling pertama menjadi pertimbanganku adalah menjadi terkenal di dunia maya. Ya, Google. Tentang SEO (Search Engine Optimization). Blog ini setidaknya berhasil dikenali oleh Google dan search engine lainnya. Sayangnya teknologi yang saat ini ku pakai, VueJS dalam mode SPA (Single Page Application) sangatlah tidak bersahabat dengan crawler para mesin pencarian manapun.

Ada beberapa pilihan sebenarnya jika saya masih ingin murni tetap menggunakan teknologi frontend saja, yaitu menggunakan teknik SSR (Server-Side-Rendering) atau pre-render. Tapi yah, entah rasanya saya masih agak malas untuk mencoba menggunakan keduanya karena terkendala infrastruktur yang merepotkan jia ingin gratis.

Nice one

Piliihan alternatifnya adalah saya akan menggunakan teknologi web konvensional, dan pilihanku jatuh pada Laravel. Tentu karena Laravel adalah salah satu produk yang paling saya kuasai hahaha.

Kedua, fitur komentar / komunikasi antara pembaca dan saya sendiri. Sejak awal fitur ini memang sudah masuk ke dalam perencanaan. Sisa realisasinya aja yang saya sendiri masih belum menemukan cara yang tepat.

Ketiga, fitur pemberitahuan dan followers? Hahahha penting banget ya? Penting jikalau ingin serius menggarap blog ini.

Oke sekian dulu informasi yang tidak terlalu penting ini. Masih sangat banyak draft tulisan lainnya yang belum berhasil ku selesaikan. See ya!