Hijrah Frontend (5): Dua Sisi Satu Gedung



Ini episode terakhir berseri frontend. Dan sesuai tradisi penutup di seri sebelah, episode ini bukan pesta kemenangan; melainkan inventaris akhir: apa yang sudah beres, apa yang sengaja belum, dan apa yang dipelajari dari tinggal di gedung yang dua sisinya akhirnya dihuni satu orang yang sama hehe~

Inventaris Akhir yang Jujur #

Empat episode lalu kita membuka gedung frontend warisan. Saat pintu ditutup kembali, begini isinya:

Tidak ada di daftar itu yang berbunyi “semuanya rapi”. Dan justru itu kejujurannya: gedung ini tidak selesai direnovasi; gedung ini selesai dipindahkan. Dua hal yang berbeda, dan membedakan keduanya adalah pelajaran terbesar dari dua seri hehe~

Dua Sisi Satu Gedung #

Kalau kedua seri ini dibaca berdampingan, satu polanya tidak mungkin terlewat: pelajarannya sama, cuma pakainya beda.

Di backend, warisan berupa query yang tak sargable dan prepared statement yang terbunuh di tunnel. Di frontend, warisan berupa field yang berpendapat soal tipe dan dua library yang berdamai lewat garis demarkasi. Di kedua sisi, solusinya juga sama persis: ukur dulu, pindahkan dengan setia, catat yang dibatalkan, dan jangan pernah memperbaiki sambil memindahkan.

Bahkan penjaganya sama. Di kedua gedung, yang membesarkan kode bukan kebijakan arsitektur yang indah, melainkan waktu dan darurat. Karena itu pula, saya tidak pernah bisa membenci bau spaghetti yang saya cium di gedung ini: dia bau yang sama dengan gedung sebelah, bau tempat yang terus bertugas meski penjaganya berganti-ganti hehe~

Yang Dirawat, yang Menunggu #

Supaya setia pada tradisi daftar utang, ini pembagiannya:

Yang dirawat mulai sekarang: garis demarkasi library (nol file campuran), kontrak tipe di pintu masuk, dan kebiasaan mencatat warisan yang dibawa, seperti empat episode ini.

Yang menunggu gilirannya: TypeScript (keputusan besar yang belum waktunya), standardisasi penamaan lintas era (epilog, bukan koper), dan refactor struktur internal (satu keputusan satu waktu, dengan data pemakaian di tangan).

Yang dibatalkan dan tidak menyesal: migrasi state management. Dia sudah masuk daftar yang tidak jadi, dan daftar itu bagian dari arsip yang sehat hahaha.

Akhirnya, setelah ikut berjibaku merawat web app v3 ini, saya semakin merasa menjadi turis di sini. Hati menolak, tapi tuntutan terus jalan, dan production harus tetap lancar.

Di episode pertama saya bercanda soal visa turis yang dicabut dan diganti KTP penduduk. Jawaban jujurnya ternyata begini: KTP-nya terbit, tapi hati masih sering membawa paspor hehe~

Penutup Dua Seri #

Dengan episode ini, dua seri Hijrah akhirnya berdiri utuh: satu backend, satu frontend, dua sisi satu gedung yang sama, yang melayani puluhan ribu user setiap hari tanpa pernah sekali pun minta diacungi jempol.

Kalau Anda sedang berdiri di depan gedung warisan Anda sendiri, backend atau frontend atau yang lain: ukur dulu, pindahkan dengan setia, rawat diri Anda, dan izinkan beberapa warisan menunggu gilirannya dengan tenang. Gedung tidak perlu selesai direnovasi supaya layak dihuni.

Terima kasih sudah mengikuti sampai episode terakhir. Semoga gedung Anda bertugas lama, dan penjaganya berganti dengan tenang.

Sekian. Salam.


  1. Angka-angka inventaris merujuk pada episode-episode sebelumnya di seri ini, yang masing-masing mencantumkan catatan pengukurannya. ↩︎

  2. Nama library, framework, dan detail stack tetap disederhanakan, konsisten dengan seluruh seri. ↩︎