Apa itu yak shaving?
Yak shaving adalah istilah dalam dunia pemrograman yang merujuk pada rangkaian tugas kecil yang tampaknya tidak ada habisnya, dan semuanya harus diselesaikan sebelum langkah berikutnya dalam suatu proyek bisa dilanjutkan. Istilah ini merupakan contoh bagus bagaimana slang internet masuk ke dalam kesadaran kolektif dan digunakan untuk menggambarkan hambatan dalam proses coding.
Istilah ini pertama kali diperkenalkan oleh Carlin J. Vieri, seorang mahasiswa Ph.D. di Massachusetts Institute of Technology pada tahun 1990-an. Inspirasi istilah tersebut datang dari sebuah episode kartun The Ren & Stimpy Show di saluran Nickelodeon. Dalam episode tersebut, Ren menceritakan tentang hari libur bernama Yak Shaving Day, di mana seseorang harus meninggalkan krim cukur dan pisau cukur di wastafel kamar mandi agar Yak yang dicukur bisa datang di malam hari dan meninggalkan hadiah.
Tentu saja, Vieri menyampaikannya dengan nada sarkastik, namun istilah yak shaving kemudian populer. Yak shaving merujuk pada keterlibatan dalam sebuah tugas yang tampak tidak ada hubungannya dengan pekerjaan utama, namun bisa jadi memang diperlukan untuk menyelesaikan masalah yang lebih besar. Proses membuat tugas sederhana menjadi terlalu rumit juga dapat dikategorikan sebagai yak shaving.
Yak sendiri adalah hewan mamalia bertanduk, mirip sapi, yang berasal dari Tibet. Bentuknya mirip dengan sapi Texas Longhorn — meskipun tanduknya lebih pendek — tetapi memiliki bulu tebal dan lebat untuk bertahan di iklim dingin Tibet.
Contoh yak shaving
Contoh yak shaving umumnya terbagi ke dalam dua kategori: penundaan (procrastination) dan gangguan yang memang tidak bisa dihindari (necessary annoyance). Dalam kasus pertama, hal ini mudah terjadi ketika bekerja dari rumah, di mana godaan dan distraksi ada di mana-mana.
Sebagai contoh, penundaan bisa terjadi saat ada laporan yang harus diselesaikan hari ini, namun laporan tersebut terasa membosankan dan sia-sia karena dianggap tidak akan ada yang membacanya. Akhirnya, laporan tersebut jatuh ke urutan paling bawah prioritas, kalah dengan pekerjaan rumah lainnya — apapun alasannya, asalkan tidak mengerjakan laporan tersebut.
Gangguan yang diperlukan terjadi ketika tujuan awal adalah menyelesaikan tugas A, namun rangkaian kondisi yang tidak terduga justru mengalihkan fokus. Hal ini sangat familiar bagi para developer. Misalnya, sebuah nama field harus diubah di dalam source code karena ada perubahan di database. Namun ketika engineer mengecek kode, justru muncul error lain yang juga harus diperbaiki. Perubahan tersebut memengaruhi aplikasi lain, dan aplikasi tersebut kemudian memengaruhi sistem lain lagi. Hal ini bisa menyeret developer masuk ke dalam lingkaran dependency hell yang harus diselesaikan sebelum kembali ke perubahan awal.
Cara menghindari yak shaving
Menghindari kedua jenis yak shaving membutuhkan disiplin diri dan kesadaran diri. Dalam kasus penundaan, solusinya adalah menyadari, berhenti membuang waktu dengan aktivitas tidak produktif, lalu mulai mengerjakan tugas utama meskipun terasa tidak menyenangkan.

Sedangkan dalam kasus gangguan, berhenti bukanlah pilihan karena langkah tersebut memang perlu dilakukan. Meskipun ada banyak update lain yang muncul sebelum perubahan awal bisa diterapkan, semuanya tetap harus diselesaikan.
Namun, dampak distraksi dari yak shaving bisa dikurangi dengan mengubah cara pandang terhadap situasi. Berikut beberapa langkah yang bisa dipertimbangkan:
- Sadar bahwa Anda sudah keluar jalur. Begitu menyadari bahwa Anda sedang menuju ke arah yak shaving, segera berhenti.
- Pahami tugas utama. Anda tidak bisa kembali ke jalur yang benar sebelum menyadari apa jalurnya. Fokus ulang agar sadar terhadap potensi distraksi.
- Punya rencana aksi. Setelah sadar telah melenceng, buatlah rencana proyek untuk kembali ke jalur.
- Tetapkan target kecil. Serangkaian tugas kecil akan lebih mudah diselesaikan dibanding satu tugas besar sekaligus.
- Buat checkpoint berkala. Lakukan pengecekan secara rutin untuk memastikan Anda masih berada di jalur yang direncanakan.
- Ciptakan lingkungan kerja yang lebih baik. Ini tips utama untuk menghindari penundaan: kurangi distraksi dan godaan sebanyak mungkin.
Salah satu metode untuk membuat checkpoint berkala adalah Teknik Pomodoro, yang membagi pekerjaan menjadi interval 25 menit disertai jeda istirahat selama lima menit.
Menjaga kesehatan mental dan fisik sangat penting untuk produktivitas. 10 tips digital wellness ini dapat membantu pekerja tetap fokus dan meningkatkan pengalaman kerja.