Random Thought di Hari Minggu

Dari minggu kemarin, gue tertarik banget mempelajari bahasa pemrogram bernama Swift. Entah kenapa gue merasa masa depan dunia aplikasi di lingkungan Apple ini kaya nya lumayan cerah.

Entah di Mobile ataupun di Desktop.

Tentang Electron

Untuk desktop development, gue tertantang mempelajari Swift karena gue benci sama Electron. Untuk sekarang, enggak tau kalau nanti-nanti. Hampir beberapa 'produk' yang gue tau, mereka menyebut Download our native application. Yang padahal dibuat menggunakan Electron. Gue masih mending sama aplikasi kek Todoist (di mac cuma 27.4 MB) yang keliatan nya cuma sebuah "wrapper untuk membuka situs todoist.com/app yang memiliki listener shortcut", but I love it. Seperti WebView, tapi pengalaman menggunakan seperti Native App nya dapet.

Daripada yang bikin "sok-native desktop app yang dibuat berdasarkan DOM". Dan tetap DOM, plus bisa berinteraksi dengan sedikit API yang dimiliki oleh sistem operasi. Yaiyalah kan diatas layer chrome. Mungkin pengalaman menggunakan seperti native app nya dapet, tapi pas liat di Finder. Astagfirullah, 300MB?

Tentang JavaScript

Gue selalu bertaruh dengan JavaScript. Ya, dimulai ketika full mendedikasikan diri menjadi seorang Frontend Engineer (yang dulu nya fucking fullstackoverflow engineer). Gue pelajari tentang bagaimana browser bekerja, tentang DOM, performa, membangun tampilan antarmuka dari DOM, dan lain-lain. Sampai menggunakan framework yang memiliki konsep virtual dom; Declarative rendering, component-based.

Gue pun mulai dari menggunakan React, aplikasi web berbasis React yang pernah gue buat dan sampai sekarang masih di production dan masih menggunakan React adalah Kelas Bekraf, sebuah kelas online yang menggunakan platform KelasKita. Gue bertanggung jawab di Business & View Layer di frontend nya.

Tertarik menggunakan React karena React Native nya. Beda sama electron, React Native mengubah component yang ada di React Native menjadi Native element ke target sistem operasi yang kita inginkan (No webview!). Sedangkan sampai hari ini gue enggak tertarik membuat mobile app menggunakan React Native.

Enggak dapet pengalaman pengembangan mobile app nya.

Dan sampai hari ini gue jenuh dengan JavaScript. Bukan karena hampir tiap bulan ada JavaScript library baru. Ekosistem di JavaScript berjalan sangat cepat, kalau diikutin capek (Hello JavaScript fatigue!) dan kalau enggak diikutin ketinggalan.

Tentang gue sebagai Frontend Web Engineer

Gue udah capek sebenernya jadi Frontend Web Engineer. Gue mulai pelajari tentang Swift–untuk Desktop & Mobile–dan ingin menseriusi yang gue pelajari ini. Kalau gue udah-hampir-selevel-sama-skill-frontend-web gue sekarang, gue bakal memberanikan diri untuk full keluar dari dunia Frontend Web ini.

Tapi riz, web app is the future. Kita bisa membuat aplikasi cross-platform rasa 'hampir-native' menggunakan teknologi web (hello React Native!), kita bisa membuat aplikasi untuk mobile tanpa harus user meng-install nya (hello Progressive Web Apps!) dan lain-lain. Lu gila ya, riz?

Ya, gue gila. Dan sampai hari ini gue percaya sama masa depan dunia desktop application. Always bet in JS, but from today I will bet too in native desktop app. Don't put eggs in one bucket. Doain gue.

TLDR:

  • Electron sucks
  • JavaScript eat the world
  • Always bet in native app (either desktop or mobile).
  • Web app is the future, but can't replace native desktop/mobile app.
Show Comments

Get the latest posts delivered right to your inbox.