Home Blog Jatuh Cinta dengan Terminal (CLI)
Jatuh Cinta dengan Terminal (CLI)

Jatuh Cinta dengan Terminal (CLI)

Debi Kurnia Debi Kurnia 61 views 6 min read
6 Min Read • New Post

Jatuh Cinta dengan Terminal (CLI)

Awalnya cuma karena IDE crash di saat yang paling nggak tepat. Tapi dari situ saya malah masuk ke dunia terminal, mulai membangun tool sendiri, dan perlahan sadar kalau yang saya butuhkan bukan antarmuka yang cantik, melainkan workflow yang benar-benar saya pahami.

Foto Debi Kurnia
Debi Kurnia
debikurnia.id

Bermula dari Kiro IDE yang crash di tengah kerjaan.

Crash yang benar2 bikin saya mengumpat wt* di depan laptop, bengong, sambil mikir, “Oke... sekarang gimana?”

Pilihan paling gampang mungkin waktu itu adalah download IDE lain. VS Code, Cursor, dan IDE.. IDE lainnya yang bertebaran diluar sana. Tapi saya nggak pilih salah satu diantara banyaknya pilihan IDE tersebut. Bukan karena malas install, tapi rasanya itu cuma solusi cepat untuk masalah yang belum tentu selesai. Kalau sumber bottlenecknya memang ada di antarmuka visual dan beban grafis, pindah IDE artinya sama aja ganti kemasan doang, bukan ganti nasib.

Akhirnya keputusan jatuh pada opsi yang agak nekat.. pakai CLI.

Karena saya memang udah bestie banget rasanya sama Kiro.dev, kebetulan juga mereka punya versi CLI. Saya pikir, ya sudah, coba saja. Walaupun sejujurnya, saya belum pernah benar-benar serius kerja lewat command line untuk urusan coding.

Hari pertama? Pusing.

Saya bolak-balik buka dokumentasi, baca command yang masih terasa asing, salah ketik, kena error, lalu ulang lagi. Sempat ada kejadian saya mikir “Kayaknya ini keputusan yang salah deh. Mungkin saya memang bukan orang terminal.”

Tapi entah kenapa saya tetap terusin tuh pakai terminal.

Daaaan... dari satu hari yang menghadehkan itu, terjadi perubahan. Saya nggak bisa bilang persis di menit ke berapa, tapi di satu titik saya merasakan kalau ini enak juga ya (CLI).

Cepat, iya. Tapi bukan cuma cepat karena ringan dan nggak banyak elemen visual. Yang paling terasa justru fokusnya. Nggak ada sidebar yang ramai. Nggak ada panel-panel kecil yang bikin mata ke mana-mana. Nggak ada tombol-tombol yang seolah minta diklik. Yang ada cuma saya, teks, dan pekerjaan yang harus diselesaikan.

Terlihat sederhana, tapi justru itu yang ternyata bikin saya betah.

Dari situ saya mulai mikir, apakah saya benar-benar butuh tampilan yang serba visual untuk bisa kerja dengan baik?

Ternyata, nggak juga.

Ternyata yang saya butuhkan itu bukan UI yang cantik, tapi workflow yang lancar dan proses yang saya pahami. Kalau tujuan utamanya menyelesaikan pekerjaan dengan efisien, kadang tampilan yang terlalu “niat” malah jadi distraksi. Bukannya ngebantu, malah bikin perhatian pecah.

Tapi.. tapi.. ini bukan berarti GUI itu jelek ya. Sama sekali bukan itu maksud saya. Banyak pekerjaan yang memang jauh lebih nyaman dikerjakan lewat antarmuka visual. Tapi saya mulai sadar, selama ini saya pribadi milih GUI bukan karena itu yang paling efektif, melainkan karena itu yang paling familiar.

Begitu sadar soal itu, saya mulai kepikiran hal lain.. gimana kalau workflow saya bisa dipindah ke terminal, kenapa nggak sekalian bikin tool sendiri?

Tool pertama yang saya buat itu sederhana banget, tool buat bersihin cache dan file sampah di MacBook.

Tujuan bikinnya sangatlah membumi, saya nggak punya budget buat langganan atau beli aplikasi cleaner berbayar. haha..

mac cleaner

/ Screenshot tampilan Mac Cleaner

Jadi saya putuskan buat bongkar sendiri logikanya. Saya cari tahu file apa yang sebenarnya dibersihkan, folder mana yang aman disentuh, proses apa yang dijalankan, lalu saya implementasikan pakai Python.

Dan ternyata berhasil.

Dari situ saya lanjut ngoprek hal lain lagi. MAMP. Yap, app yang biasa saya pakai buat local server development. Saya modifikasi supaya bisa saya kontrol langsung dari terminal, tanpa harus buka aplikasinya dulu. Mungkin terdengar sepele, tapi bedanya terasa banget.. lebih cepat, lebih ringkas, dan yang paling penting, saya jadi ngerti apa yang sebenarnya sedang berjalan di belakang layar.

MAMP local server

/ Local server development (MAMP)

Lama-lama saya mulai menikmati pola ini.

Setiap kali ada workflow yang terasa berat, repetitif, atau terlalu bergantung pada aplikasi tertentu, saya akan kepikiran “Sebenarnya proses ini bisa dipecah jadi langkah-langkah sederhana nggak?”

Kalau jawabannya iya, berarti ada kemungkinan proses itu bisa diotomatisasi.

Puncaknya terjadi di pekerjaan saya sebagai kontributor Adobe Stock.

Ini salah satu workflow yang paling banyak makan waktu. Setiap foto harus disentuh dulu sebelum di submit, koreksi warna, sharpening, resize, cek metadata, lalu ekspor akhir. Selama ini semuanya saya kerjakan lewat Photoshop. Dan hasilnya? Dalam satu hari penuh, paling mentok saya cuma bisa menyelesaikan sekitar 30 sampai 50 foto.

Tiga puluh sampai lima puluh foto.

Untuk satu hari penuh.

Di titik itu saya mulai merasa, ini nggak bisa terus begini. Saya coba lihat prosesnya dengan cara yang agak laen.. Kalau dibedah, sebenarnya yang saya lakukan itu sederhana banget.

Konversi ke sRGB, penyesuaian warna, resize, sharpen, dan ada quality export, juga ada metadata. Semua itu sebenarnya serangkaian langkah yang emang udah jelas.

Berarti, secara teori, harusnya bisa dijadikan pipeline.

Dan ternyata memang bisa..

Dari situ lahirlah Zirostock, script Python yang saya bangun untuk menjalankan pipeline editing foto stock memakai ImageMagick. Jadi saya nggak perlu lagi buka Photoshop hanya untuk pekerjaan yang sifatnya berulang. Nggak ada AI berbayar, nggak ada aplikasi berat, cukup satu command di terminal dan prosesnya jauh lebih cepat dan ngebut tentunya.

Yang biasanya makan waktu hampir seharian, sekarang bisa dipangkas jadi sekitar 3 sampai 5 menit untuk 100 file stock photo dalam satu kali proses dan sudah menyelesaikan beberapa pekerjaan seperti konversi sRGB > penyesuaian warna > resize > sharpen > quality export, ini angka maksimal yg pernah saya tes dalam satu batch.

zirostock

/ tampilan Zirostock

Buat saya, ini bukan cuma soal hemat waktu. Ini soal rasa lega. Rasanya seperti berhasil membongkar sesuatu yang tadinya kelihatan rumit, ternyata bisa dibuat jauh lebih simpel.

Semakin banyak tool yang saya buat, muncul masalah baru, semua tool itu mulai tersebar di mana-mana.

Ada script di folder ini, ada tool di folder itu, ada yang namanya saya ingat, ada yang kadang saya lupa. Dari situ saya mulai mikir, saya butuh semacam rumah untuk semuanya.

Dan lahirlah Zirocode. Nama yang keren kan paman? haha

zirocode

/ Halaman depan zirocode

Sekarang Zirocode sudah saya push ke GitHub, walaupun repositorinya masih private. Nanti rencananya akan saya buka sebagai proyek open source, gratis, dan bisa diakses siapa saja. TAPI BELUM SEKARANG. Saya masih mau ngulik dulu, nambah tool baru, rapihin strukturnya, dan memastikan semuanya cukup matang sebelum dibagikan ke publik.

Yang paling saya nikmati dari proses ini adalah ritmenya.

Saya bisa bangun pelan-pelan. Nggak ada tekanan buat buru-buru rilis. Nggak ada deadline dari orang lain. Saya tinggal jalan sesuai rasa penasaran saya sendiri. Dan jujur, justru di situ letak serunya breee.

Eh iya, balik lagi ke topik awal, So.. apakah CLI lebih baik daripada GUI?

Menurut saya, pertanyaan menariknya bukan itu..

Pertanyaan yang lebih menarik justru.. apakah kita benar-benar paham tool yang kita pakai?

GUI itu nyaman. Sangat nyaman, malah. Tapi sering kali kenyamanan itu datang bersama jarak. Kita tinggal klik tombol, lalu semuanya jalan, tanpa pernah benar-benar tahu proses apa yang sedang terjadi di baliknya. Terminal memang lebih “keras” di awal, tapi justru karena itu yang bikin kita lebih dekat dengan proses. Dari situ biasanya lahir pemahaman. Dari pemahaman, lahir kontrol.

Kalau semua berjalan sesuai rencana, Zirocode dan tool-tool lain yang saya bangun akan saya buka sebagai open source dalam waktu dekat. Jadi kalau Kalian penasaran, pantau terus. Atau kalau mau, tinggalkan komentar. Saya selalu senang ngobrol soal workflow, terminal, dan eksperimen-eksperimen kecil yang ternyata bisa mengubah cara kita kerja.


Komentar (0)

Tinggalkan Komentar

0/1000 karakter

Belum ada komentar. Jadilah yang pertama berkomentar!


Artikel Lainnya


Baca blog Debi di sini / Kontak Debi kontak@debikurnia.id, atau

WhatsApp