Saya menghabiskan waktu berbulan-bulan membangun tabel perbandingan sebelum akhirnya saya menyadari bahwa database saya membohongi saya.
Antarmukanya tampak baik-baik saja. Baris yang bersih, tanda centang yang rapi, tanda X merah di mana sebuah alat memiliki kekurangan. Pengunjung menggulir tabel tersebut dan sesekali mengekliknya. Namun di balik permukaan, skemanya secara diam-diam merusak setiap kesimpulan. Saya telah membangun UI yang indah di atas data yang buruk.
Jebakan Boolean
Halaman perbandingan biasanya dimulai dengan pola yang jelas. Anda membuat kisi di mana baris adalah fitur, kolom adalah produk, dan setiap sel berisi nilai boolean. True berarti alat tersebut memilikinya. False berarti tidak. Untuk sementara, ini terasa teratur. Namun kemudian Anda mencoba membandingkan dua alat manajemen proyek, atau tiga database cloud, atau empat API gateway, dan kisi tersebut mulai memberontak.
Sel boolean tidak dapat membawa nuansa. Ketika sebuah sel terbaca false, itu bisa berarti lima hal yang sepenuhnya berbeda. Mungkin alat tersebut memang benar-benar tidak memiliki kemampuan tersebut. Mungkin ia menyelesaikan masalah yang sama melalui mekanisme yang berbeda. Mungkin fiturnya ada tetapi berada di balik paywall tingkat perusahaan (enterprise paywall). Mungkin ia memerlukan plugin yang tidak Anda sadari. Atau mungkin Anda sekadar lupa memverifikasinya, dan tanda X merah itu hanyalah penanda bagi ketidakpastian Anda sendiri.
Hal ini penting karena pengguna mempercayai kisi perbandingan untuk membuat keputusan yang mahal. Saat Anda menandai alat berbasis CLI sebagai tidak memiliki kolaborasi waktu nyata (real-time collaboration), Anda mungkin bermaksud bahwa alat tersebut tidak memiliki berbagi kursor langsung (live cursor sharing). Namun alat yang sama tersebut mungkin menggunakan alur kerja berbasis cabang (branch-based workflows) dan antrean peninjauan (review queues) untuk mencapai hasil yang persis sama. Menandainya sebagai false mengubah pilihan desain menjadi sebuah cacat. Lakukan itu pada dua puluh fitur dan Anda tidak sedang membandingkan dua alat. Anda telah menyatakan salah satunya rusak.
Skema boolean juga melatih Anda untuk berpikir menggunakan kosakata vendor alih-alih kebutuhan pengguna. Jika baris Anda meminjam nama dari pemimpin kategori, Anda akhirnya bertanya apakah setiap kompetitor memiliki Workspaces karena Notion menyebutnya Workspaces. Alat lain menyebutnya Projects. Alat ketiga bahkan tidak memiliki wadah khusus, tetapi memungkinkan Anda mengatur izin pada file individual hingga Anda mencapai isolasi yang sama. Nama baris Anda memaksa setiap produk masuk ke dalam model mental sang pemimpin, yang mana sangat menguntungkan bagi raksasa pasar tetapi tidak adil bagi yang lainnya.
Kosakata yang Lebih Baik untuk Status
Solusinya dimulai dari tipe data itu sendiri. Berhentilah menyimpan boolean. Simpanlah kolom status dengan kosakata yang eksplisit.
Pertimbangkan enam status berikut.
Full berarti alat tersebut menangani pekerjaan tanpa solusi alternatif (workarounds) atau pembelian tambahan.
Partial berarti alat tersebut menangani sebagian, atau hanya menanganinya setelah Anda mengonfigurasi sesuatu yang rumit. Di sinilah sebagian besar perbandingan menyembunyikan ketidakakuratan. Alat yang menawarkan enkripsi tetapi hanya saat data diam (at rest) layak mendapatkan status Partial, bukan Full.
Different Model berarti masalah tersebut terselesaikan, hanya saja tidak dengan cara yang dilakukan oleh pemimpin kategori. Alat CLI dengan branches dan reviews termasuk dalam kategori ini. Begitu juga dengan database yang menggunakan read replicas alih-alih satu single pooled connection. Status ini menjaga kecerdasan desain produk daripada menghukumnya karena tidak meniru kompetitor.
Not Applicable berarti konsep itu sendiri tidak dapat diterapkan pada jenis alat ini. Platform fungsi serverless tidak memerlukan penyimpanan lokal persisten seperti halnya mesin virtual (virtual machine). Memaksakan nilai false di sana adalah bentuk kekeliruan kategori.
Absent berarti Anda telah mencarinya, dan kemampuan tersebut memang benar-benar tidak ada. Tidak ada solusi alternatif, tidak ada plugin, tidak ada alur kerja alternatif. Kesenjangannya nyata.
Unknown berarti Anda belum memverifikasinya
