Mengapa lo harus peduli dengan browser

Cerita tentang Web, Platform, Stakeholders, dan apa yang bisa kamu lakukan.

Mengapa lo harus peduli dengan browser

Lebih spesifiknya, adalah ke platform.

Akhir-akhir ini sering membahas tentang "Browser Diversity" dan senangnya saya tidak sendirian, bli Kresna pun membahas hal yang sama.

Mungkin pembahasan seputar topik ini kurang menarik, selain karena tidak tau arah & untungnya kemana, juga ehm gak ada duitnya.

But for the sake of my ex-employment title as a Frontend Engineer, let me tell you on this rainy Saturday.

The Platform

Kita mulai dari yang paling dasar, yakni platform.

Kita semua—"Web Developer"—adalah 3rd-party developer yang bergantung dengan dunia web. Beruntungnya, platform ini terbuka dan tidak ada yang ehm mengendalikkan.

Beda dengan platform sosial media seperti Twitter misalnya, yang meskipun memberikan developers keluasaan untuk "membuat sesuatu" diatas platform mereka—dengan menawarkan public API—namun kebijakan yang ada kembali lagi ke kebijakan Twitter sebagai pemilik platform.

Yang dampaknya?

3rd-party Twitter client seperti Tweetbot, Twitterific, dsb yang terkena dampkanya. Aplikasi tersebut dikembangkan oleh indie developers yang sangat bergantung dengan "platform".

Mereka memiliki potensi yang besar akan kehilangan "customer" nya karena beberapa fitur inti di Twitter—yang ada public API nya—sudah deprecated.

Cerita selengkapnya, bisa dibaca disini.

Kembali ke pembahasan, sebagai seorang developer, kita bergantung dengan platform-platform berikut (berikut yang mengaturnya):

  • iOS, Apple
  • MacOS, Apple
  • Windows, Microsoft
  • Android, Google

Beruntungnya, di platform web, tidak ada satu entitas pun yang mengatur.

3 "pengatur" diatas memiliki guidelines (dan ToS) nya masing-masing, yang artinya, ya, ada peraturan.

Kita tidak bisa sembarangan "membuat sesuatu" diatas platform diatas, ikuti guidelines dan ToS, or shut the business off.

The Web

Meskipun platform web tidak ada yang mengatur, namun kita bergantung dengan browser vendor: Sesuatu yang paling berperan dalam bagaimana kita mengakses "sesuatu di internet".

Browser vendor yang ada antara lain adalah:

  • Firefox, Mozilla
  • Chrome, Google
  • Safari, Apple

Dan browser engine yang ada—"mesin" yang men-tenagai browser tersebut—antara lain:

  • Gecko (Servo?), Mozilla
  • Chromium, Google
  • Webkit, Apple

Yang artinya, bila ada browser-browser baru yang dibuat menggunakan engine diatas, pada dasarnya browser tersebut adalah Firefox; Atau Chrome, atau Safari. Hanya branding & fungsionalitas uniknya saja yang berbeda.

Kembali lagi ke topik, tidak ada yang mengatur dunia web.

Tidak ada "guideline" untuk "membuat sesuatu" di platform web.

Kecuali ISP mu, ya fuck to ISP.

Apakah benar "tidak ada guideline" di platform web?

Hahaha, mari kita bahas :)

GoooooOooOoOoOogle

Google adalah pemilik Google Chrome, sebuah peramban yang dibuat diatas Chromium.

Google berperan besar dalam dunia web, mengingat pengguna Chrome sangat mendominasi daripada browser lainnya.

Google telah berbagi beberapa "best practices" untuk sebuah web app yang memang sebenarnya sangat penting, make sense, dsb untuk pengguna akhir.

Seperti, Lighthouse. Lighthouse membantu developers untuk membuat aplikasi web yang memiliki performa & UX yang bagus dengan "melakukan pengukuran" berdasarkan rekomendasi yang diberikan oleh Google.

Lalu, ada PWA. PWA membantu developers untuk membuat aplikasi yang Reliable; Fast, dan Engaging berdasarkan rekomendasi yang diberikan oleh Google.

Dan terakhir—biar singkat—ada AMP. AMP membantu developers untuk memberikan aplikasi—khususnya untuk aplikasi yang memiliki lebih banyak informasi daripada interaksi—agar aplikasi tersebut memiliki pengalaman pengguna yang bagus, sangat cepat diakses, dsb.

...Berdasarkan rekomendasi yang diberikan oleh Google juga.

Kita sudah melihat (dan merasakan) bagaimana bagusnya aplikasi yang dibuat diatas PWA & AMP, plus yang diukur menggunakan Lighthouse juga.

Google tidak mengatur, hanya memberikan rekomendasi.

Sampai mereka mengaturnya :)

Hate-Love with AMP

Kita ambil satu contoh yang sudah terjadi: AMP.

AMP hanyalah rekomendasi dari Google, dan selagi bisa membuat website dimuat secara cepat dan terasa sangat instant, kenapa tidak?

Sadar tidak sadar, keuntungan inti dari AMP adalah ketika kita menggunakan Google sebagai search engine & mengaksesnya via mobile.

Selebihnya, hanyalah "sebuah framework" yang memberikan minimal footprint.

Peran penting AMP adalah di Cache, spesifiknya, Google AMP Cache.

Banyak kontra yang terjadi terhadap AMP, pro nya adalah karena situs dimuat lebih cepat dan terasa instant.

...bila kita mengaksesnya via Google Search.

Situs yang memiliki halaman AMP akan "di-prioritaskan" oleh Google di search resultnya, bila pengguna mengakses Google via mobile. Dan ya, Google pun akan merekomendasikan kamu untuk membuat halaman versi AMP nya jika kamu menggunakan Google Web Master Family.

Dan satu lagi, Google adalah tempat pertama orang-orang ingin mencari informasi. Alias, gerbang utama untuk menjelajahi internet.

AMP sudah menjadi "guideline" secara tidak langsung untuk kasus ini: Use it or I will de-prioritize your site.

Stakeholders

Kamu harus tau orang yang memiliki kepentingan dibalik itu. Kita ambil dari 3 pemilik browser vendor yang ada: Mozilla, Google, dan Apple.

Mozilla adalah not-for-profit company yang memang memiliki misi untuk membuat web menjadi tempat yang sehat.

Google adalah perusahaan iklan, sederhana.

Apple adalah perusahaan hardware. Namun, karena memiliki pengguna yang banyak, mereka beruntungnya ikut ber-partisipasi di dunia software khususnya web dengan privacy sebagai first-class feature nya.

Gue lagi males ngebahas panjang lebar seputar p r i v a s i, mari kita bahas bagian "platform" nya saja berikut dengan dampaknya.

Mozilla & Apple ingin membuat web tempat yang aman & pribadi, dilain sisi Google sebagai ads company™ pastinya berada di oposisi.

Mozilla & Apple akan terus bergerak dan ber-inovasi agar menjadikan web sebagai tempat yang aman & pribadi.

Google, meskipun melakukan hal yang sama, kata "pribadi" tersebut tidak bisa disandingkan karena dunia per-iklan-an di internet tidak bekerja seperti itu.

Kecuali Google memikirkan ulang cara mereka meng-operasi-kan iklan nya :)

Yang intinya, jika kamu peduli nih (karena memiliki title "Frontend Engineer", "Web Developer" atau apapun itu), kamu berpihak ke entitas yang ingin membuat web tetap menjadi tempat yang terbuka, atau sebaliknya?

Singkatnya, Open Web adalah "web" yang dibuat oleh kita dan untuk kita semua. Bukan hanya untuk beberapa orang ataupun hanya untuk beberapa "gatekeeper".

Contoh sederhananya, Sketch hanya untuk pengguna Mac; Notepad++ hanya untuk pengguna Windows (should I happy here?), dan berbagai "sesuatu" lain yang hanya tersedia untuk spesifik platform.

Dan tidak lupa: Sesuatu lain yang hanya tersedia untuk spesifik lokasi geografis.

WhY yOu sHoULd cArE?

Jika kamu seorang yang apatis, tulisan ini hanya akan diarahkan ke /dev/null mu.

Gini, apakah kamu peduli dengan:

  • Global warming
  • Climate change
  • Kiamat
  • Kesehatan dirimu sendiri

Dan sebagainya.

Sebagian orang tidak peduli dengan global warming & climate change, dan sebagian orang peduli karena mereka mengerti dan peduli dengan bumi.

Sebagian orang tidak peduli dengan kiamat, dan sebagian orang peduli karena mereka mengerti dan peduli dengan "kehidupan setelahnya".

Sebagian orang tidak peduli dengan kesehatan, dan sebagian orang peduli karena mereka mengerti dan peduli dengan jiwa & raga mereka.

Begitupula dengan kasus ini.

Namun apa yang harus dipedulikan?

The web.

The internet.

Karirmu.

Gue bukan SJW—persetan masyarakat—tapi gue peduli dengan 3 hal diatas.

Seperti, lihat, bisnis Tweebot dkk terancam hanya karena 1 platform. Sedangkan Tweetbot dkk bergantung dengan platform tersebut untuk hidup.

Java Programmer terancam hanya karena Google merekomendasikan Kotlin. Ya, itu bagus (for the sake of your learning?), tapi bukan itu poin nya.

Indie (and company-based) developer harus tunduk dengan peraturan Apple terhadap App Store nya. Ikuti, or fuck off.

Dan, kamu mau kondisi diatas terjadi juga di platform web?

Mungkin sedikit berlebihan, namun bukanlah sesuatu yang tidak mungkin terjadi.

Search Engine adalah satu-satunya gerbang untuk menjelajah internet, dan internet adalah tentang informasi. You know where the point is.

Internet dan web adalah untuk kita semua, tidak diatur oleh siapapun apalagi hanya oleh sebuah perusahaan search ad engine.

Bayangkan, ketika salah satu search engine memiliki guideline untuk "tidak membuat sesuatu yang menganggu dengan bisnis mereka" atau segoblok "dilarang bikin situs yang menampilkan kucing atau dilarang bikin situs yang dibuat pakai PHP (why you all give me an applause?)".

Mungkin bisa saja kita melanggarnya, karena internet tidak se-sempit dunia platform mobile.

Tapi situsmu, mungkin tidak akan pernah ada di search engine.

Bahkan di blokir.

Di gerbang utama orang-orang mengakses internet.

Sebagai penutup, begini, bagaimana kalau kita rusak pasar yang sudah mendominasi untuk menghindari monopoli?

Seperti, menggunakan "gerbang lain" untuk mengakses internet?

Atau, menggunakan peramban yang memiliki misi untuk membuat internet tetap sehat?

Perubahan kecil tetaplah sebuah perubahan.

Dan seandainya suatu saat apa yang gue khawatirkan ternyata terjadi, setidaknya gue sudah mencoba.

Terima kasih, enjoy your weekend.


Gambar cover diambil dari Comic Browserling, thanks!