01 — sebuah surat

Cover untuk Warda

— untuk Warda —

import hati.dari.Engineer;
import rindu.*;

02 / 05 / 2026 · sealed with care

— sebuah surat, dikirim dari engineer kepada perempuannya —

Happy Birthday, Warda.

import hati.dari.Engineer; import rindu.*;

Saya bukan penyair. Saya cuma laki-laki yang lebih akrab dengan stack trace daripada surat cinta. Tapi malam ini, saya akan coba menulis sesuatu yang nggak akan pernah saya refactor — karena setiap barisnya tentang kamu.

atau buka suratnya dulu
scroll // untuk membuka

01

Sebuah Surat

Hai. Maaf, ucapan ini telat sedikit — saya nggak lupa. Saya cuma lagi nyiapin beberapa hal yang lain dulu, dan kamu tahu sendiri, saya bukan orang yang gampang ngerjain banyak hal sekaligus tanpa ada yang berantakan.

Hari ini umur kamu bertambah satu. Saya tulis ini bukan karena saya jago merangkai kalimat — kamu lebih tahu dari siapa pun saya bukan orang yang seperti itu. Saya tulis karena hari ini, untuk kamu, saya mau coba sebisa saya.

Saya tahu beberapa waktu terakhir saya lebih sering diam daripada ngomong. Itu bukan karena saya nggak peduli, sayang. Itu karena saya beneran nggak tahu harus ngomong apa, dan saya nggak tahu cara jadi romantis seperti yang mungkin kamu pengen. Saya diam bukan karena hilang rasa — saya diam karena bingung sendiri di dalam kepala saya.

Bulan kemarin saya sempat ngomong sesuatu yang seharusnya nggak saya ucapin. Kamu tahu maksud saya. Kamu tetap tinggal — sama orang yang cuek, yang nggak gampang ngucapin sayang, yang sering bikin kamu nebak-nebak sendiri. Saya nggak tahu harus berterima kasih lewat cara apa, selain dengan pelan-pelan jadi orang yang sedikit lebih baik dari kemarin.

saya sengaja tulis perasaan saya dalam Java — karena Java verbose, ribet, butuh banyak baris untuk ngomong satu hal sederhana. Persis kayak saya, kalau lagi coba bilang sayang.

Warda.java // build — passed ✓
 1 package cinta.untuk;
 2
 3 import java.time.LocalDate;
 4 import hati.saya.Pulang;
 5
 6 /**
 7  * @author   Saya, engineer-mu yang sok cuek
 8  * @since    hari pertama saya lihat senyum kamu
 9  * @forever  true
10  */
11 public final class Warda extends PerempuanPalingSabar {
12
13     private final LocalDate ulangTahun = LocalDate.of(2026, 5, 2);
14     private final String alasanSayaBertahan = "karena ya kamu";
15     private boolean masihMencintaiSaya = true; // hari ini, iya
16
17     public Warda() {
18         super("yang saya doakan tiap malam");
19     }
20
21     @Override
22     public int hitungSayang() {
23         return Integer.MAX_VALUE; // overflow, saya nyerah ngitung
24     }
25
26     @Override
27     public void selamatUlangTahun() throws JarakException {
28         try {
29             doaTerbaik().sampai(this);
30             pelukVirtual().erat();
31         } catch (JakartaLombokException e) {
32             // jarak bukan bug, ini cuma feature sementara
33             Pulang.akan(this);
34         }
35     }
36
37     @Override
38     public String toString() {
39         return "satu-satunya alasan saya belajar mencintai dengan benar.";
40     }
41 }
$ javac Warda.java && java Warda
> Selamat ulang tahun, sayang. Tetap jadi kamu.

Saya nggak bisa janji macam-macam. Saya nggak tahu cerita kita ke depan akan kayak apa, dan saya nggak mau ngasih harapan yang saya belum tentu bisa pegang. Tapi yang saya tahu — hari ini, di tanggal ini, kamu masih jadi orang yang saya doakan paling lama tiap malam. Itu jawaban paling jujur yang saya punya.

— dari saya. Terima kasih, ya.

02

Tujuh bab tentang kita.

Bukan urutan yang sempurna, tapi semuanya benar — persis seperti yang saya ingat.

Ch. 01
Awal mula ketemu // hari pertama, ada yang nge-compile di hati saya

Awal Mula Kita Ketemu

Saya ingat senyum kamu hari itu. Sederhana, nggak dibuat-buat, tapi entah kenapa cukup untuk bikin seorang laki-laki yang biasa ngobrol sama terminal jadi lupa cara mengetik kalimat lengkap. Tuhan kayaknya lagi iseng — dan saya berterima kasih.

Ch. 02
Kamu nangis sebelum pergi // air mata kamu — yang sampai sekarang masih saya inget

Hari Kamu Nangis di Pundak Saya

Hari itu kamu harus pergi. Mata kamu merah, suara kamu patah-patah, tangan kamu yang nggak mau lepas dari saya. Saya nggak tahu harus ngomong apa, jadi saya cuma diam dan biarin kamu nangis di bahu saya. Hari itu saya tahu — kamu sayang saya. Mungkin lebih dari yang saya kira.

Ch. 03
Camping bareng // tenda yang awalnya miring, akhirnya berdiri sambil ketawa-ketawa

Camping di Bawah Bintang

Saya beneran nggak bisa pasang tenda hari itu. Sudah percobaan ketiga masih miring, dan kamu cuma ketawa lihat saya. Akhirnya kita pasang tenda bareng — saya pegang ujungnya, kamu yang tarik talinya — sambil ketawa-ketawa terus. Malam itu langit penuh, kopi kita udah setengah dingin, dan kamu nyender di bahu saya. Saya diam-diam berdoa: kalau boleh, malam-malam kayak gini jangan pernah deprecated.

Ch. 04
Ketawa bareng // suara ketawa kamu = green build di hari paling berat

Ketawa Sampai Sakit Perut

Saya suka cara kamu ketawa. Lepas, kadang bunyinya aneh, kadang sampai keluar air mata, dan justru itu yang saya tunggu setiap hari. Hari paling berat di kerjaan pun terasa passed all tests kalau ujung-ujungnya saya denger kamu ketawa.

Ch. 05
Berjuang bareng // kuliah, dagangan kue, laptop orang lain, skripsi orang lain

Berjuang Bareng

Kita berjuang dari nol. Kuliah jalan terus, sambil jualan kue pagi-pagi, part-time benerin laptop orang, joki skripsi yang kadang revisinya bikin kepala saya sendiri pengen di-refactor ulang. Kita capek, marah, salah paham, pernah hampir hancur. Tapi setiap kali saya mau menyerah, kamu datang, pegang tangan saya, dan bilang “coba lagi yuk.” Hubungan kita bukan soal siapa yang menang — tapi soal siapa yang mau tetap tinggal. Dan kamu, selalu tinggal.

Ch. 06
Hari kamu antar saya ke bandara // kamu yang antar, saya yang berangkat

Hari Kamu Antar Saya ke Bandara

Akhirnya hari itu datang. Kamu yang antar saya ke bandara. Kita peluk lama-lama, kamu cuma senyum kecil, dan bilang “jaga diri ya.” Saya cuma ngangguk — takut kalau ngomong saya akan keceplosan banyak hal yang nggak akan kamu suka.

Ch. 07
Di pesawat // di pesawat, di antara orang asing — saya akhirnya nangis

Di Pesawat — Pas Kamu Kirim Video Itu

Pesawat baru aja take-off, dan kamu kirim video. Kamu lagi nangis sambil bawa motor, pulang dari bandara. Saya buka sekali, langsung saya tutup. Tapi air mata saya udah keluar duluan, di antara orang-orang asing yang nggak saya kenal.

// to be continued — saya akan pulang.