Keputusan Aksesibilitas yang Enggak Ada yang Minta, Tapi Menangkan Kontrak Enterprise Pertama

Delapan bulan lalu aku menghabiskan tiga minggu penuh nambahin keyboard navigation dan label ARIA ke ekstensi Chrome yang waktu itu cuma dipakai kurang dari 200 pengguna aktif. Enggak ada yang minta. Enggak nambah satu fitur pun yang kelihatan di changelog. Hampir aku skip, karena sprint udah penuh sama request fitur yang hasilnya lebih kelihatan. Minggu lalu, tim procurement sebuah instansi pendidikan nyoret dua kompetitor langsung di tahap awal seleksi karena enggak bisa nunjukkin dokumentasi aksesibilitas yang valid — dan mereka pilih produkku, bukan karena harga atau daftar fitur, tapi karena aku satu-satunya vendor yang punya laporan audit yang bisa dibuktikan.

Kenapa Aku Repot-Repot Ngurusin Sesuatu yang Enggak Kelihatan

Awal tahun ini masuk satu email dari pengguna — sebut saja dia pakai NVDA sebagai screen reader — yang bilang dia enggak bisa buka menu utama ekstensi sama sekali pakai keyboard. Bukan bug yang bikin crash, cuma... enggak bisa dipakai kalau enggak pakai mouse. Aku balas, minta maaf, janji perbaiki minggu itu juga. Terus iseng aku cek sendiri: dari lima titik navigasi utama, cuma satu yang bisa di-Tab. Sisanya onClick nempel di <div> polos, tanpa role, tanpa tabindex, tanpa focus state yang kelihatan.

Titik itu yang bikin aku mikir dua kali. Fix satu bug spesifik itu gampang — sejam kelar. Tapi kalau satu bug ini nongol, kemungkinan besar seluruh codebase punya pola yang sama, karena aku emang enggak pernah nulis komponen interaktif sambil mikirin keyboard-only user atau screen reader dari awal. Jadi keputusannya bukan "perbaiki satu bug", tapi "audit semua". Tiga minggu dari total delapan minggu sprint waktu itu — angka yang berat buat produk solo, dan enggak ada satu pun dari perubahan itu yang bisa dipamerin di landing page.

Yang Sebenernya Dikerjain: Bukan Cuma Nambahin alt Text

Aksesibilitas yang beneran diaudit itu jauh lebih teknis dari sekadar nambah teks alternatif. Yang aku kerjain:

  • Audit manual pakai checklist WCAG 2.1 level AA — bukan cuma linter, tapi navigasi tiap flow utama pakai keyboard doang, mata ditutup, dengarin NVDA di Windows dan VoiceOver di macOS gantian.
  • Focus state yang kelihatan di semua elemen interaktif — sebelumnya banyak outline: none di CSS lama yang matiin indikator fokus browser tanpa gantinya sama sekali.
  • Kontras warna minimal 4.5:1 buat teks normal, dicek pakai kombinasi tooling otomatis dan manual, karena beberapa warna brand ternyata gagal di kombinasi teks kecil di atas latar terang.
  • aria-live region buat notifikasi dinamis, supaya perubahan status (misalnya "tersimpan" atau "gagal sinkron") ikut diumumkan ke screen reader, bukan cuma muncul visual sekilas lalu hilang.
  • axe-core masuk ke CI supaya regresi dasar ketahuan otomatis di setiap pull request, bukan nunggu ada pengguna yang komplain lagi.

Hasil dari tiga minggu itu didokumentasikan jadi satu laporan internal — bukan buat marketing, murni catatan teknis buat diri sendiri kalau nanti lupa kenapa suatu komponen ditulis dengan cara tertentu.

Layar komputer menampilkan banyak baris kode pemrograman
Layar komputer menampilkan banyak baris kode pemrograman

Momen Procurement Review: Checklist yang Enggak Pernah Kupikirkan Bakal Jadi Pembeda

Delapan bulan kemudian, ekstensi ini masuk shortlist procurement sebuah instansi pendidikan yang lagi evaluasi tiga vendor sejenis buat lisensi tahunan. Salah satu syarat administratif yang jarang aku lihat di produk sekelas ini: VPAT (Voluntary Product Accessibility Template) — dokumen yang nunjukkin sejauh mana produk memenuhi standar aksesibilitas, dipakai instansi publik dan kampus buat memenuhi kewajiban regulasi mereka sendiri.

Dua kompetitor lain enggak punya dokumen itu sama sekali, dan ketika diminta, salah satunya cuma ngirim pernyataan umum tanpa detail teknis — langsung tersingkir di tahap administrasi, sebelum sempat demo fitur. Aku? Tinggal update laporan audit lama itu jadi format VPAT standar, lampirkan hasil axe-core dari CI terbaru, kirim dalam dua hari. Bukan karena aku jenius baca arah pasar delapan bulan sebelumnya — jujur aja, waktu itu motivasinya cuma satu email dari satu pengguna. Tapi karena dokumentasinya udah ada dan terus ke-maintain lewat CI, biaya buat nunjukkin kepatuhan itu jadi nyaris nol di momen yang justru paling penting.

Kontrak yang keluar dari situ adalah kontrak lisensi tahunan pertama produk ini — bukan yang terbesar dari sisi nominal, tapi yang pertama kali bikin aku yakin produk solo ini bisa dijual ke pembeli institusional, bukan cuma individu yang bayar bulanan.

Seseorang sedang menggunakan MacBook Pro
Seseorang sedang menggunakan MacBook Pro

Takeaway

Kerjaan yang enggak nambah fitur di changelog gampang banget kalah prioritas lawan roadmap yang kelihatan hasilnya. Tapi beberapa investasi teknis — aksesibilitas termasuk salah satunya — nilainya enggak muncul di minggu itu juga, muncul berbulan-bulan kemudian, di momen yang enggak pernah kebayang sebelumnya: bukan pas user biasa makin senang, tapi pas satu baris di formulir procurement nanyain sesuatu yang cuma bisa dijawab kalau udah dikerjain jauh-jauh hari. Kalau ada kerjaan struktural yang keliatannya enggak "kelihatan hasilnya" tapi kamu tahu itu benar secara teknis, jangan cuma diukur dari dampak minggu ini — kadang baru kebayar delapan bulan kemudian, dalam bentuk yang enggak pernah kamu duga.

Sumber gambar: Ales Nesetril di Unsplash Sumber gambar: Chris Ried di Unsplash Sumber gambar: Glenn Carstens-Peters di Unsplash

The conversation 0

No comments yet. Start the conversation.

Comments are reviewed before appearing. Links are masked.