Lompat ke konten utama
EP 147

Desain Aplikasi CLI

Ringkasan Episode

Bantu Koreksi

Episode ini membahas desain aplikasi CLI dan pengalaman pengguna di terminal, termasuk perbedaan CLI, TUI, dan aplikasi terminal pada umumnya. Diskusi mencakup alasan kenapa banyak developer tetap memilih terminal, serta bagaimana pengalaman di CLI bisa dibuat lebih jelas, cepat, dan menyenangkan.Pembahasan juga menyentuh prinsip desain dan panduan praktik terbaik, seperti pentingnya help, konsistensi flags, pesan error yang informatif, output yang bisa dipipe, dan mode quiet untuk kebutuhan otomatisasi. Selain itu, dibahas ekosistem tool dan library untuk membangun CLI, contoh penggunaan real (misalnya Cloudflare CLI), serta referensi guideline seperti clig.dev dan prinsip desain dari Atlassian.

Poin-poin Utama

  • •Perbedaan CLI, TUI, dan aplikasi terminal dibahas dari sisi UX dan konteks penggunaan
  • •Desain CLI perlu fokus pada kejelasan: help yang mudah, flags konsisten, dan error yang informatif
  • •Output harus ramah otomatisasi: mendukung piping, format terstruktur (mis. table/json), dan mode quiet
  • •Contoh tooling dibahas seperti Yargs, Inquirer/Enquirer, dan framework seperti oclif
  • •Kasus nyata seperti Cloudflare CLI dipakai untuk melihat struktur perintah, konfigurasi, dan output
  • •Guideline seperti clig.dev dan prinsip desain Atlassian dirujuk sebagai acuan
  • •Tren dan tools TUI/terminal UI dibahas untuk memperkaya pengalaman di terminal

[musik]

Dapatkan hanya di Dominesia

[musik]

Selamat malam

Halo, halo, halo

Akhirnya beda lagi

tampilan awalnya

Loh, kok berubah

Udah ada sponsor

Udah ada sponsor

Mana sponsornya?

Diri atas

Eh, lu kanan atas

Lu

Mau di kiri apa mau di kanan nih

Kekecilan ya, harusnya gedein lagi

Kekecilan, gedein dikit, bisa nggak?

Nggak bisa ya, udah lah besok lah

Eh, ini juga hotfix tadi

Z-index-nya

Jangan lupa, nanti...

Kalian terlalu anak web ya

Karena ini acara ubrolin web

Ubrolin web

Web

Kok kayak, kok kayak domba

Web

Oke

Kita ukur gini ya, pembukaannya

Iya

Lihat transkrip lengkap (2678 segmen lagi)

Kayak baru episode

Kedua aja

Iya, padahal udah 150 lho

Ini ya, apa kabar dulu nih

Apa kabar?

Sibuk apa sekarang?

Ini nanya ke siapa nih?

Penonton dan kalian kedua

Kalau saya

Sibuk apa ya?

Sibuk di kejar-kejar sponsor

Asyik

Asyik, keren banget

Bercanda, bercanda

Kenapa?

Karena, belum ini, belum

Belum capai target

Belum, belum si wajipan

Tiket jarinya bukan nawarin sponsor syik lagi

Cuma, kok kurang nih view-nya

Masih nombok kan

Nombok

Untuk streamnya 2 tahun ke depan

IDSW gimana ceritanya? Masih sibuk?

Atau sudah selesai?

Sudah selesai

Tugas gue sih sudah selesai

Acaranya belum?

Acaranya nanti November

Iya, sayang banget

Berpapasan

Berbandingkan dengan

Deves Medan

Tanggal 22

Ya, nggak bisa buka lagi ya

Saya aja yang berangkat ke Medan

Boleh, silahkan

Gue belum pernah ke Medan, mau juga dong

Ya udah, berdua lah

Kan, tahun lalu gue direject

Jadi tahun ini kalau ditawarin, gue yang nge-reject

Asyik

Uno reverse card ya

Sendem, nggak, nggak

Bercanda, bercanda

Eka aja ke Medan, gue ke Jogja

Jogja tanggal Desember

Jogja Desember, kita rame-rame ke Jogja

Yuk, yuk, yuk

Bisa nggak ya kita konspirasi

Kalau Eka nggak usah

Eka nggak usah ngisi

Maksudnya, datang aja

Gue datang aja

Iya

Biar apa, biar kita

Silaturahami ke sini nih

Asyik ke Domensia

Selamat malam Ricky

Kedominia Domensia

Iya

So, iya

Sebelum lupa ya, jadi

Kembali lagi

Episod

Ngobrolin web malam ini

Hasil kolaborasi kita

Dengan Domensia, akhirnya Domensia

Kembali

Bermurah hati untuk memberikan

Ini ya

Men-sponsori

Acara kita, jadi kalau temen-temen

Yang mau beli layanan hosting Domensia

Bisa pakai promo

Ngobrolin web DN

Ngobrolin web DN

Ada dua

Soalnya, jadi

Ada ngobrolin web DN, dapat

Diskon 10% untuk

Semua paket web hosting

Berlaku untuk siklus 1 atau 2 tahun

Harus

Kalau yang

Gak pakai web hosting, mau pakai VPS gimana

Ada juga

Yang mau beli Cloud VPS

Turbo Domensia, ada diskon 50%

Coba

50% loh, setengah harga

Kodanya ini

Ngobrolin VPS DN

Kalau yang mau pindahan

Mau gak pakai Versel lagi tuh

Itu bisa kan

Pake VPS

Nah, mumpung ada promo

Iya, 50%

Mumpung lagi

Ada ini kan, Versel kan

Lagi di ini kan

Lagi dicicar ya

Lagi dicicar, karena misalnya

Berfoto dengan

Sosok kontroversi ya

Jadi kalau kalian mau

Kabur aja dulu dari Versel

Mumpung promo

Tapi tetap pakai Next.JS

Bisa kan

Ya, pelan-pelan lah

Gak, at least kan, ngurangin ketergantungan

Minimal, finansial lah

Kalau misalnya pakai Next.JS

Ya, ngasih kontribusi

Matrix ke mereka

Tapi kan, gak ngasih kontribusi finansial kan

Terus ya, diluar parkara itu pun

Kalau misalnya

Usernya udah banyak

Ya, biayanya

Versel itu free tiernya lumayan lah

Tapi begitu udah mulai

Nge hit yang berbayar

Ya, mahal banget kan, maksudnya biayanya tinggi

Jadi bisa dipertimbangkan

Yes, jadi kalau

Yang mau nyoba-nyoba

Cloudflare, Netlify

Free tier

Begitu udah hit certain threshold

Mahalnya minta ampun

Itu katanya skema ini

Business strategy-nya begitu kan

Subsidi silang

Bukan, bisnis

Apa, skema-nya adalah skema

Ini, jualan narkoba

Ketagihan dulu

Pertama kasih-kasih dulu, abis itu ketagihan udah

Makanya, saya

Itu sebenarnya, kalau secara bisnis

Saya lebih suka Heroku sebenarnya

Heroku itu kan

Memang ngga, bayar ya dari awal

5 dolar, tuh paling kecil 5 dolar

Tapi kan bayar gitu

Nggak, dulu Heroku gratis

Nah, cuma udah nggak sama

Free tier-nya diakus sama sekali

Diakusisi sama

Catchpoint

Bukan

Heroku, pokoknya perusahaan besar

Diakusisi sama perusahaan besar

Salesforce

Salesforce

Jadi kalau ada yang mau nyoba-nyoba

Malah kayak approach-nya sebaliknya sih

Kan dulu, karena mereka gratis

Dan dulu gratisnya kan generous banget tuh

Iya

Udah capture banyak banget

Ya udah, justru gratisannya

Diapus

Ya, dengan konsekuensi

Mereka nggak bisa ambil developer baru

Kan, yang baru mulai

Masih kayaknya nggak ada duit, atau nggak punya

Credit card perusahaan

Nggak bakal pake Heroku, pakenya

Yaitu tadi, Percell Netlify Cloudflare

Ya, strategi bisnis

Sama kayak

Sama kayak ini, tau

Sama kayak

Google

For Business jaman-jaman dulu

Tau nggak? Yang email

Domain

Gmail kan?

@gmail.com sama ada yang

Bisa pake domain kita sendiri

Oh, Google Domains

Enggak-enggak

Google Workspace

Oh, iya

Oh, iya, sampai sekarang

Sampe sekarang saya masih grandfather license

Domain saya

Masih free sampai sekarang

Dan masih dapat yang

Jaman dulu punya 10 years

Sekali bayar

Sekali bayar, abis itu udah nggak

Sampe sekarang masih gratis

Gue punya, cuma bukan

Apa, ya

Dari dulu deh

Punya email alternatif

Pake Workspace, cuma banyak fitur yang

Fiturnya tiba-tiba nggak ada

Ada fitur yang dikunci

Ya, namanya juga gratis

Mau ngarepin apa

Anyway

Ini saya nggak selesai nih bacainnya nih

Jadi diskon-nya

Berlaku untuk

Tadi ya

50%

Berlaku untuk semua paket dan semua siklus

Jadi, kode promo-nya bisa dipakai

Lebih dari satu kali, coba

Enak banget kan

Akun yang sama, pake berkali-kali

Langsung aja cek domain.com

Kalo saya bikin akun cloningan ya

Email baru, iya

Nggak usah bikin akun cloningan, bisa dipakai

Akun yang lama juga bisa dipakai

Promo code-nya

Ngobrolinvpsdn

Ok? Terima kasih Domensia

Ok

Malam ini

Topiknya agak-agak out ya

Out of topic

Ya, bisa lah disambung-sambungin

Cepikit

Out of web, tapi bisa disambung-sambungin

Selama web development

Iya, kalo sekarang kan

Kalo kita mau generate project baru

Pasti bukannya di terminal dong

Kalo temen-temen pake AI

Banyak kan pake di terminal

Ada juga kan

Kayak cloud code, domini CLI

Semua kayaknya udah ada ya

Popilot

Kalo Git

Coba jawab dulu deh

Pada pake UI atau pake

CLI?

Oh iya temen-temen ya

CLI

Belum pernah liat orang yang

Pake Git

Aplikasi atau apa ya? Git UI

Ada GitHub

Ada, GitHub desktop

Ada juga di VS Code

Yang di VS Code

Iya, dan

Banyak lah yang bagus yang

Git UI itu

Banyak

Saya pake yang di VS Code

Semenjak bisa generate

Ini, generate commit

Message

Membantu sekali

Jadi, memanfaatkan itu aja

GUI-nya, tapi

Kalo secara normal, secara natural

Pakainya di CLI sih

Iya

Masal memori aja

Kayak cuman

Git phone, Git add atau

A, G, C, Git com-nya

Iya, udah ada ininya

Alias-aliasnya

Alias-aliasnya

Jadi malam ini kita akan

Berbicara atau

Mendiskusikan tentang

Command line interface atau

CLI

CLI atau

Terminal user interface

Terminal user interface

Oh ada itunya ya

Ada nama barunya

Ada nama barunya

Sublime Merge

Sublime Merge itu apa sih

Ga terlibat sama Sublime Code Editor

Beda, beda

Tapi yang bikin sama

Nah barusan ngeliat ini

Dia meluarin ini juga ya

Di client ya

Oke menarik, terima kasih

Infonya

Ini tuh kayak bagus

Cuma kayak ga pernah

Nemu use case-nya

Kan maksudnya

Kegiatan aktivitas utama waktu kita loading

Bukan

Bukan Git clone atau Git add

Atau Git commit kan, kayak cuman udah pengen buru-buru

Akhirnya ga pernah kesampaian

Nyoba-nyoba yang

Komplikasi yang kayak ini

Mungkin buat manager kali ya

Buat yang manage Git

Branch gitu-gitu ya

Full request yang apa

Ngemerge gitu

Mungkin penting ya

Nah kalo gue full request

Merge yang komen-komenan gitu

Di GitHub langsung

Langsung di GitHubnya langsung ya

Jadi ga pernah punya

Use case buat GitHub desktop sih

Tapi Sublime itu kan yang menarik

Apa ya, kayak estetik

Sense of estetiknya kan

Kayak khas banget aja

Iya, betul

Size itu suka pakai kalo

Untuk

Di VSCode

Atau kursor ya sama sih

Suka liat untuk yang

Merge div tool-nya kan bagus

Oh iya

Kedua, pakai Git Blame

Shotcutnya command shift G

Command shift G

Ga pernah pake sih, tapi

Kontrol shift G

Sama itu

Blame-nya cuma liat di line-blame biasanya

Iya, jadi sudah

Line-nya tuh sudah tau, oh ini si ini yang

Comment line ini, terakhir si ini

Suka, saya suka pakai itu

Jadi suka, karena saya kan

Suka nyalain orang

Ngeblame ya

Udah ngomel-ngomel, ini kode apaan

Ga jelas, terus giliran command shift G

Kau nya diri sendiri? Nyalain line-blame

Eka, 2 years ago

Sering terjadi di antara kita

Cuma itu helpful banget lo

Nge-check blame, walaupun

Ini ga dari CLA ya

Ini udah OOT

OOT lagi, OOT kali 2

Karena kalau di tempat kerja

Convention-nya adalah

Commit-nya itu selalu diawali

Pakai

Jira ticket code-nya

Jadi itu berguna banget

Ya kayak gitu tuh, kalau

Karena kita ga ada dokumentasi yang

Dokumentasi kode

Yang lengkap banget gitu

Ga ada, tapi kalau misalnya bingung

Ini maksudnya apa, tinggal di-blame

Aja kan muncul tuh ticketnya, ya udah

Tinggal dibuka ticketnya, selama ini sih

Gak pernah sampe

Maksudnya pas udah dibuka ticketnya, langsung

Ingat sih

Langsung tau ini maksudnya apa dan kenapa

Gitu, dan kalau ada masalah nyangkut

Maksudnya, tinggalin masalah

Dulu pernah tinggalin masalah, masalahnya

Kau apa, jadi langsung tau

I see

Sekarang

CLI ini menarik-menarik ya

Apatau istilahnya, kalau istilah kerennya

TUI ya, Terminal User Interface

Baru nama gue TUI, TUI

Kalau temen-temen

Perhatikan misalkan

Yang akhir-akhirnya kayak Cloud Code

Keren kan

Ada asli-asi

Artnya gitu

Terus kalau misalkan liat Copilot

GitHub CLI juga

Gemini CLI juga sama

Banyak

Ada animasinya juga

Kalau liat Astro ya, terutama ya

Ada animasinya

Nah, Astro itu salah satu clopornya sih

Yang pake, maksudnya lucu-lucuan gitu

Nah, itu makanya di

Defter Topic Discusi

Gue masukin itu tuh

Perlu

Pertama, pas masih

Pertama kali, baru sekali, dua kali

Mungkin lucu ya, wah satu screen ada gambar

Ada animasi, ada ASG ART

Nah, terus

Lama-lama tuh sebenarnya

Itu tuh keputusan yang bagus atau

Kurang bagus sih, yang

Wimsicle, yang lucu-lucuan gitu

Apa, apakah

Itu helpful

Atau mending se straight forward mungkin aja

Nggak usah kebanyakan gambar, nge-scrollingnya

Jadi jauh

Ini, yang pertama

Menghibur ya, daripada kita nungguin

NPM install kan mendingan liat beginian kan

Yang kedua, feedback loop

Jadi kita tahu

Status terakhir itu di mana

Apa, dia lagi

Ngerjain apa gitu

Apakah lagi install dependency kah, atau lagi

Bikin file kah, atau

Apa gitu, jadi

Oh iya, kalau ini sih tetap

Itu yang kayak status terakhir

Progressnya, kayak

Installing atau

Dependencies installed itu sih

Maksudnya itu jelas ya, itu ada kegunaan

Practical, tapi kalau kayak

Itu ASCII art animasi

Naik turun, atau kayak

Jemna CLI sama co-pilot

Ada logo segede gaben gitu

Itu tuh

Distracting atau fun

Ya ini kan subjektif ya

Ya

Itu tuh best practice nggak sih

Atau mungkin kayak, sebetulnya itu

Trend-trendan, karena satu

Misalnya dulu Astro bikin gitu

Terus semua pada nge-tweet tentang itu

Pada seneng, yang lain jadi ngikut semua

Cuma lama-lama nanti

Kan lama-lama orang bosen

Terus jadi nggak

Special lagi, terus mungkin nanti

Apakah bakal ada yang ngomel-ngomel

Banyak ngomel di twitter, terus lama-lama trendnya

Jadi ya udah nggak usah pakai

Gak usah pakai gamar-gamar lucu-lucuan

Yang berlebihan gitu ya, cuma status

Aja, misalnya kalau error ya, tunjukin

Errornya, progressnya, sampai

Mana, nah kalau menurut

Ini gimana

Saya

Nggak suka yang terlalu banyak icon

Berlebih

Nah itu lama-lama distracting nggak sih

Tapi pertama sih seneng

Oh lucu, pas udah ke-2, ke-3

Ke-4, ke-5, ha

Bisa dimatiin sih, kalau Astro bisa

Cuma maksudnya trendnya

Distracting

Jaman dulu yang kalau kita

Testing pakai mocha kan ada

Chai, eh mocha

Ada, apa namanya, ada

Pluginnya tuh, yang apa

Ngan cat, ngan cat

Jadi reportnya itu ada kucing

Dulu awal-awal sering pakai

Lama-lama, kucing yang panjang

Iya, kucing

Kucing pelangi gitu

Reportingnya pakai

Kucing pelangi

Tapi sekarang istilah

Pelangi udah berubah ini ya

Berubah arah ya

Berubah makna

Kalau dulu pelangi kayaknya

Keren gitu ya

Temen-temen

Ya maksudnya intinya

Ini apa namanya CLI

Menariknya apa ya

Boleh tau ya temen-temen

CLI yang favoritnya apa

Yang biasa dipakai sehari-hari

Sama tadi pertanyaan Eka

Komennya atau gimana nih

Komen lainnya, aplikasi terminal

Yang paling

Disuka gitu

Berarti sebenernya ini skopnya bukan

Ya gak harus aplikasi khusus

CLI kan cuma

Aplikasi atau library apapun

Yang CLI

Atau CLI

Experience nya bagus ya

Misalnya tadi kalau contoh

Astro atau Cloudflare atau

Copilot itu kan sebenernya bukan

Ya bukan terminal base

Itu aplikasi aja cuman di installnya lewat

Terminal ya kan

CLI experience

Coba kalian sekarang

Terminal bukan, sorry

Maksudnya aplikasi yang jalan di terminal

Calah ya

Coba history ke terminal kalian

Masing-masing, apa sih yang terakhir kalian pakai

Pasti git

History

Youtube.dl

Git merge

Oh kalau youtube.dl sekarang dari

History

Git

Terus kemudian patch

Composer AWS

npm

Turle

Portman

Vim

Vim ya

Ini juga termasuk aplikasi terminal kan ya

Iya

Docker, Docker Compose

DCUPD

SSA

DCUPD

Touch

Open

Turle

PG

Postgre

Oh yang apa

Yang saya terakhir coba

Dan lumayan seru

Ya ini ada hubungan sama git tadi ya

Biasanya kan saya coba di terminal kan

Apa maksudnya bukan di terminal

Iya memang pakai git CLI

Tapi

Ya tapi

Baru beberapa

Minggu ini lah ketemu namanya

LazyGit

Itu

Aplikasi terminal juga

Bisa dilihat ya

LazyGit

Tapi

Ada user interface nya

Kita mau ke

1, 2, 3

Untuk liat

Local Brand, sempat untuk liat commit

5 untuk stage

0 untuk yang di sebelah kanan

Jadi misalkan

Saya mau commit ya

Ini tinggal di spasi terus commit

Terus commit nya

Ucu ya

Puyeng

Puyeng

Lagi coba-coba aja

Bloombug Terminal

Iya Vis

Bloombug Terminal apa ini

Biasanya buat liat saham

Oh saham, oh iya bener ya

Tapi di terminal gitu

Serius

Iya, ya maksudnya

Bloombug itu API nya

Bagus banget dan bisa streaming

Jadi sebenarnya masuk akal

Pada Bloombug Terminal

Belum pernah pakai sih

Pasukan Git, Maulana

Git Grab

Alias buatan sendiri

Kostong pakai Windows

Windows jarang buka CMD ya

Oh kalau Windows saya punya

PCIe favorite, ping

Ping, ngecek internet

Lebih bagus pakai cal

Kalau misalnya pengen tau ini

Wah saya belum tau tuh gimana caranya tuh

Kalau mau

Oh mau liat ini kan ya

Ping itu cuma pengen tau internet

Mau ngecek komik si internet

Ping github.com

Ping google.com

Pasti kan

Tegantung

Tegantungnya masalahnya juga sih

Karena bisa ngecek apa

Kalau koneksinya intermittent gitu loh

Putus nyambung, jadi kita tau

Kayak berapa pesen

Paketnya keterima atau enggak

Oh ini maksudnya

Bloombug Terminal ini

Oh keren banget

Ini bisa di download

Dan bisa digunakan untuk umum ya

Berarti ya

Udah tau

Ya harus punya akun Bloombugnya

Bloombugnya itu punya license

Soalnya ada license

Iya ngerti

Cuma maksudnya berarti

Pertanyaannya tadi

Ya bisa login website gitu kan

Iya maksudnya

Ngecek internet pakai speedtest

Kalau internetnya mati kan nggak bisa ngecek

Nah itu masalahnya

Di mana kita perlu ngecek

Itu kan umumnya pas lagi bermasalah ya

Kalau harus speedtest

Dan download semua

Harus downloadnya

Gak muncuk-muncuk

Kadang koneksi itu

Bukan berarti cuma speed doang

Kadang DNS-nya juga bisa bermasalah

Bisa iya

Kalian ping ke

Google.com misalnya kan

Tapi kalau DNS-nya bermasalah ya

Nggak bisa akses gitu kan

Coba aja ping google.com dari China

Nggak bisa

Jadi saya tuh biasanya

Kalau pengen tahu

Checking

DNS

Pakai DIG

Oh DIG ya

DIG sa

Blah-blah-blah

Mau cek IP-nya

Bisa dapet respos dari DNS yang mana

Biasanya sih pakai itu

Karena saya punya

Di home network saya di rumah

Punya piehole

Piehole itu yang buat DNS provider

Di lokalnya saya untuk nge-blocking

Ads

Kadang bingung

Ini yang masalah internet

Kalau misalnya nggak bisa konek nih ke Google Analytics misalnya

Ini yang masalah adalah

Internet saya

Atau DNS saya

Jadi saya harus pakai comment DIG

Oh ternyata piehole saya nge-block

Berarti

Domain itu ada

Teridentifikasi

Tracking atau semacamnya

Contohnya di rumah saya itu nggak bisa buka Google Analytics

Nggak bisa buka

New Relic

Nggak bisa buka Facebook.com

Jadi macam-macam

Jadi

Banyak yang di-block dan tiap malam

Kan update ini ya

Databasenya

Iya

Mas

Eh mas apa mbak nih

Wandana

CLA

Biasa buat bisa adopsi aplikasi-applikasi

Lain

Kalau mau dibuat interface

Desainnya bisa diseluruhkan dengan CLA Riser

Iya ini menarik juga karena

CLA itu kan terbatas ya

Kalau kita bikin user interface-nya tidak sekaya di web kan

Kita mau bikin form

Mungkin nggak bisa

Pakai mouse, mungkin ya mungkin

Tapi kayaknya sekarang bisa

Harus pakai tab gitu misalkan

Harus keyboard friendly lah ya

Intinya ya kalau

Aplikasi terminal

Terus juga mungkin

Element-elementnya tidak sebanyak yang

Bisa dibuat di desktop atau di web

Jadi itu juga salah satu yang

Tricky dan juga mungkin itu

Menjadi batasan yang menarik kalau kita

Bikin aplikasi dengan batasan tersebut ya

Berarti kita bikin sesuatu

Yang benar-benar dibutuhkan aja gitu

Minimalis lah ya

Bikin UI-nya minimalis

Kalian pernah bikin

CLA sendiri

Saya pernah

Mendesign

Bukan alias

Alias ya

Membuat komen CLI sendiri

Enggak pernah harus

Enggak pernah ada kebutuhan

Nyoba-nyoba pernah

Tapi kalau untuk desain pernah

Ada apa? Kerjaan

Bantuin temen

Dia butuh aplikasi CLI

Kayak GitHub CLI gitu modelnya

Kayak Docker lah kayak Docker

contohnya waktu itu salah satunya

GitHub CLI sama Docker

Untuk produknya dia

Bikin desain, saya ngedesign

Desain ini kayak

Bikin dokumentasinya

Komen ini untuk apa

Komen ini untuk apa, terus flagnya

Ya ngedesign, bukan desain

CLI sih

Bukan desain user interface

Tapi lebih ke desain komen-komennya

Saya pernah buat

Mau lihat?

Jadi kita main-main

Saya pernah buat CLI

Pakai Node.js kok bikinnya

Node.js ya

Mana ya?

Mana dia?

Sebentar, baru sadar

Jarang banget ada CLI yang dibuka

Dalam waktu lama kayak GUI

Salah satunya ini

Yang sering dibuka

Enggak keluar-keluar dari ini

Dari aplikasinya, salah satunya

Tadi lejigit ya

Sama FIM juga

Enggak bisa keluar malah

Itu jebakan

Itu jebakan

Ya, lejigit docker ada ya

Saya baru tau nih, Mas Yuda

Lejigit, saya juga baru

Pakai

Lejigit itu buat apa sih tadi?

Buat git manajemen

GUI

Tapi di terminal

Jadi kalau misalkan

Lagi kerja di sini

Kalau misalkan mau commit

Balik ke sini

Lihat ada perubahan

Kalau nggak jadi commit ya udah

Kira-kira gitulah ya

Pernah bikin CLI pakai Pascal

Waa jaman dulu pasti CLI

Pasti CLI

Tidak ada pilihan lain

Karena setelah di-compile

Langsung bisa jalan

Dijalankannya pakai

Bentar, compile itu bisa jadi

DLL, bisa jadi

Bisa jadi

Executable ya

Kalau jaman kuliah

Pasti ya

Ayo tunjukkan, tunjukkan

Demo, demo, demo

Saya nggak install sih, jadi nggak usah demo

Langsung lah ya

Lihat GitHubnya aja

Dulu saya bikin

Cloudflare CLI

Denote

Ini cuma interface-nya aja untuk

Connect ke Cloudflare API

Jadi tinggal pakai

Comment line

Bisa connect ke

Bisa melakukan

Perubahan

Di Cloudflare

Installnya cukup gampang

NPM install, global

Cloudflare CLI node, nanti kalian bisa

Langsung CF config setup dan

Lihat komen-komennya di CF help

Nah kita lihat

Dulu saya rajin

Loh kok

Oh versel sih

Tapi udah pindah aja

Oh bukan

Ini si Cloudflare-nya

Ini link ke Cloudflare-nya

Generated Cloudflare

Caranya disini

Yang ininya si Cloudflare

Ganti

Next.js

Kira-kira hosting

Aneh juga kalau Cloudflare hosting-nya

Di versel

Maksudnya cara nge-generate

API token tuh disini

Cuman kayaknya si Cloudflare udah ganti

Ganti apa namanya

Ganti link

Dan saya nggak api

Iya betul

Requirementnya ini

Installnya begini

Nah ini komen-komennya bisa

Accounts

Bisa ambil DNS record

Di zone

Itu apa?

Oh itu dokumentasinya ya?

Wiki

Saya rajin dulu

JSON object-nya begini

Hasilnya

Terus

Mudah-mudahan masih

Ada nih

Ya sudah

Salah semua ini

Ya udah

Terubah

Intinya

Kalau CF DNS list

Zone-nya apa

Bisa kelihatan tuh nanti

example.com

Contentnya gini-gini

Terus bisa lihat

Kalau mau list

DNS list

Atau mau create DNS create

Bisa contohnya begini

DNS create example type A

Nanti bisa sub

1.example.com

IP nya ke 1.234

Kalau mau tambahin MX

Tambahin TXT

Terus

Get recordnya

Update DNS recordnya

Tanpa harus ke

Cloudflare

Jadi tinggal

Comen line update-update ini

Ya mau tambahin filter

Mau tambahin firewall

Misalnya

Disini

Bisa juga

Ya

Ada setting-setting si zones-nya

Sebenarnya API nya ada

Banyak banget si Cloudflare

Cuma saya sanggupnya

Saat itu bikin

Yang saya pakai

Yang saya pakai sehari-hari

Dan saya bikin jadi

Mostly saya pakai

Record, filter, sama firewall

Aja sih sebenarnya

Oh sama ini

-Pakai library apa?

-Pakai library apa nih bikinnya?

-Saya akan lanjut kesana

-Ok

-Inquire, put on

-Nggak, saya pakai

YARGS

-Oh ya, YARGS

-Pakai YARGS

Pakainya gini

Jadi supaya dia bisa jadi

Apa namanya?

Jadi execution

Gitu

Kalian kan download

BIN, CF

Executionnya CF

File kan

Jadi node nya itu cuma ini doang nih

Ya kan

Nanti kan dia compile, hasil compile-nya disini

Kalau sudah di compile

-Itu binary?

-Iya, nanti dia compile

JS file, jadi

Kalau misalnya npm install global

Nanti lib nya itu sudah ada

Cuma kan disini source nya

Lib nya nggak ada kan

Jadi dia sebenarnya

Memanggil ini sih

Function ini

Nah ini YARGS-nya

Comment-nya

Terus

Ini

Dia akan mengambil

Baca dari comment directory

Dan satu-satu

Sedang saya kumpulin

Misalnya

Account, config, segala macem

Ada disini

Tinggal bikin

Comment nya per masing-masing

Kalau misalnya tadi list

Argumen yang bisa diterima apa

Terus

Connect ke

Cloudfair-nya

Ambil datanya

Terus output

Dan di output can-nya dalam bentuk format

Format nya itu bisa

Formater nya itu bisa

Berapa ya saya lupa

Bisa ada

Table, string, json, sama list

Jadi kalau ke table

Dirapiin

Kalau ke list

Di list kayak key value

Itu dari YARGS-nya

Yang bikin

Layout-in table nya

Nggak, ini dari

Table itu apa ya

Saya lupa

Table itu dari CLI table 3

Terus kalau yang

Utamanya kan ada di ini

Ada di cara

Connect-nya misalnya

Mau connect ke Cloudfair

Saya

Abstract sedikit jadi kelas-kelas-kelas

Masing-masing kelasnya

DNS-kelas, filter-kelas, firewall-kelas

Dan

Connect ke

Cloudfair

API

API url ini

Nanti sudah ada api.cloudfair

Versi 3 kalau nggak salah

/zone/zoneid/dnsrecord

Kayak gitu

Tinggal dia

Di abstract disini

Kalau

Barang-barang dalamnya itu

Saya pakai

YARGS

Ini aplikasi

Tahun berapa?

Tepak

Tahun berapa nih? Lupa

Soalnya ada yang nanya

Ada alasan tersendiri ke kenapa nggak pakai

TS?

Udah 5 tahun yang lalu

5 tahun yang lalu TS belum populer ya

Iya

Dan saya bikin kan cepet aja

Iya, iya, iya

Kalau yang kayak gini-gini sih, nggak terlalu perlu

Pakai live script juga ya

Karena bentuknya

Type nya teks

Selalu teks ya

Iya

Nggak terlalu butuh

Dan saya nggak pakai yang

Saya bahkan kodenya

Nggak pakai yang

Kayaknya vanilla banget deh

Ya mungkin IS

6 tahun kali ya, tapi

Nggak terlalu

Apa namanya?

Nggak terlalu modern

Modern lah

Hanya menggunakan

Sedekat mungkin dengan apa yang Node.js

Bahkan ini kan support Node.js 10 kan

Oh iya

Node 10

Sekarang aja udah Node 22

24

22 apa 24 ya

22 kalau misalnya

Sekarang

24

Ya kan setahun

Ganjil genak tuh 2-5

Tahun lalu ya bener

Iya jadi

Sedekat mungkin dengan

Node.js nya

Apa yang di support sama Node.js ya jaman itu

Terminal shop, oh iya yang itu ya

Si apa?

Terminal shop ya

Yang jualan kopi lewat SSI ya

Cuma bentar

Mumpung bahas ini nih

Kalau bikin kayak gini, yang harus

Kayak kuncian banget, Inquirer sih

Coba buka Inquirer deh

Ya Inquirer juga

Pernah mau pakai

Eh salah

Apapun itu sih

Nggak harus beneran bikin CLI app ya

Ini kan topiknya

Bikin design aplikasi CLI

Oh kirain CLI design

Di Google Docs nih

Telusannya topiknya CLI design

Kalau kita mendesain CLI experience

Untuk nggak usah

Bikin app CLI tapi bikin

Framework atau library kan bisa ada

Experience CLI nya kan

Nah ini juga bisa kita pakai

Karena enak sih ini, enak banget

Apa ya itu

Kita tinggal, kalau kita perlu input

Dari user misalnya

Mau install versi

Vanilla JS atau TypeScript

Atau mau pakai pilih

Dependensi apapun

Nah itu tuh

Enak tuh pakai Inquirer

Inquirer oke

Tadi Charm udah dibahas belum? Charm itu apa?

Belum

Charm apa nih?

Charm JS

Oh Terminal

Terminal Apps ya

Oh yang AI juga ya

Tapi girly banget ya

Terus girly nya kayak anak kecil gitu loh

Kayak anak kecil umur 8 tahun

Ini aplikasi apa?

AI bukan?

New Coding

Oh AI, sekarang lagi mungkin sih ya

Cuma mungkin ini mungkin

Seperti work

Work sell

Work bikin, rate cast juga bikin

Ya jenay dan lain-lain juga

Ya open

Open code, cloud code

Gitu-gitu ya model nya ya

Oh tapi ini ada interface lainnya ya

Wah ini full di terminal gitu

Keren banget ya

Mantap, mantap, mantap

Charm

Oke ya

Itu contoh-contoh dari

Aplikasi Terminal

Sekarang kita masuk

Ke pembahasan tentang bagaimana

Mendesain CLI

Jadi disini ada

CLIG.DEV

CLI Guidelines

Ini salah satu

Referensi yang

Saya pakai juga waktu itu

Kalau

Teman-teman mau pakai

Disini ada guideline nya

Misalkan contohnya disini

Ini guideline nya juga seperti CLI ya

Iya

Menyesuaikan ya

Misalkan

Bingung mau pakai library apa

Disini ada dikasih pilihan

Misalkan gue pakai Cobra

Node pakai Ocliffe

Kita gak ada yang pakai ya Ocliffe ya

Coba lihat

Open CLI Framework

NPX Ocliffe Generate

My New CLI

Wah ini udah dibikinin ini ya

Iya

Ini kayak framework full

Full framework ya

Bukan library ya

Kalau tadi kan kita pakai library ya

Kalau beneran mau

Buat aplikasi CLI ya

Kayak tadi misalnya mau bikin LazyGit

Atau semacamnya

Kalau yang simple-simple kayak generator

Ya itu tadi pakai Enquirer juga

Sebetulnya udah cukup sih

Ini ada

Project Generator nya

Terus udah

Disiapkan end point-end point nya

Setara

RGS gitu ya

Atau RGS itu justru

Hanya library aja sebenarnya ya

RGS

Itu library sih

Kayaknya

Ya itu kayak Enquirer sih

Terima input

Helper aja sebenarnya

Ada list atau checkbox

Jadi ya kalau cuma mau

Generate yang simple-simple cukup

Kalau mau beneran bikin

CLI App ya keliatannya

Kayaknya di sini ya

Namun misalnya

Bisa merekomendasikan

Ke temen-temen kalau misalnya

Masa nya sering pakai

Tools-tools tertentu

Atau sering pakai API tertentu

Mungkin bisa liat postman-post

Atau postman atau post

Yang lain

Apa yang API yang sering di hit

Ya bikin aja CLI nya

Jadi

Lebih mempermudah hidup

Sebenarnya

Sekarang udah pakai Raycast

Oh Raycast

Ya ini lengkap sih

Jadi ada CLI Generator

Ada testing nya

Ada plugin nya juga

Jadi ada banyak ya

Dan ada TypeScript atau tidak

Enggak perlu

Kalau bikin TypeScript

Dan ada autocomplete

Menarik ya

Sekarang terminal

Bisa ada autocomplete

Oke kita balik lagi ya itu node

Ada dev-x nya

Ya itu kayak work sih

Kalau kayak di mainstream

Memlopori

Ya mungkin bukan yang pertama

Tapi yang kayak

Sekarang semua jadi code gitu itu work kan

Work CLI

Nah

Gaitan pertama adalah

Kalau mau bikin CLI

Bikin yang help

Meses nya dulu

Sekalian mendesign kan

Sekalian mendesign

Kita mau manggilnya kayak gimana

Itu yang paling

Ngomong tuh kayak contohnya JQ

JQ ini adalah json processor

Kayak jquery tapi

Bukan jquery ya

Bukan json untuk

Json query

Memparsi json

Ya bisa ngambil apapun

Di json

Ya buat query kan

Query json kan

Pencarian di dalam json gitu

Ini kalau kita ketik

GQ yang muncul adalah helper nya

Bentuknya kayak gini

Terus bisa

Pake -h atau double double

Double minus minus

Double minus minus double minus

Help

Terus ada

Comment sub comment gitu ya

Jadi

Dedesign nya seperti itu dulu

Nah yang ini gue bingung nih kadang

Kalau ada yang suka

Ada yang suka pake

Help tu sub comment nya apa

Kalau saya sukanya

Sub comment nya

Terus help

Langsung help

Misalnya lagi pake ini

Wp post list

Tapi pakenya gimana ya

Terus minus minus help ditambahin

Jadi bisa langsung lihat comment nya

Untuk masing-masing comment ya

Iya per sub comment

Per sub comment

Di IRGS atau tempat saya

Sudah bisa tuh per sub comment

Nah bukan, maksudnya di sini

Strukturnya ada aplikasi

Yang

Minus minus help tuh gak bisa

Tapi dia pakenya

Ya itu kayak my app

Help sub comment

Jadi apapun yang setelah help itu

Khusus untuk help

Kebalik ya

Sub comment itu

Dan kan sub comment itu bisa sampai 3 level

Iya suka-suka kita sih sebenernya

Iya

Bebas saja sebenernya

Tergantung desain nya, tapi kan

Best practice nya kan kalau bisa jangan banyak-banyak

Comment itu

Terus misalkan

Tapi kan emang comment nya sebenernya cuma satu kan

Help, tapi

Cuma perkara dipisah atau

Dijadiin satu index gitu aja kan

Ini contohnya git

Di kompleks lagi ya

Ada banyak nih

Terus comment nya juga

Ada banyak

Jadi sebetulnya kalau apa

Ngedesain arsitektur

Atau apa, ya desain-desain

CLI app ini kan

Ibaratnya kalau kita ngoding

JavaScript atau semacamnya kita mikir

Suatu class

Atau mungkin suatu function, metode-metode nya

Sebenernya kalau di mikir itu kayak metode kan ya

Comment itu kayak metode kan

Kita harus mikir

As a user

Kita harus bisa melakukan

Harus bisa melakukan ini, ini, ini

Nah kalau git kan berarti harus

Git add, git commit

Git merge, dll

Behaviour nya gimana

Parameter nya, apa argumen-argumennya

Apa aja, mana yang

Harus ada, mana yang opsional

Sama ada satu lagi

Yang penting juga

Silent atau

Mau dikasih output

Kayak

Verbose atau

Verbosity level

Itu satu, kedua ada yang

Quiet, quiet, quiet

Quiet aja gitu cuman, jadi kita bisa

Chaining ke

Bukan, bisa chaining ke

Aplikasi lain

Itu yang tadi pakai pipeline

Yang pakai

Apalah namanya itu

Yang dari satu namanya pipeline

Kalau kita mau ngepipe ke tempat

Lain, kalau output nya ada banyak, ok

Message successful gitu kan

Atau

Comment executed successfully

Kalau kita kasih

Apa namanya

Success message

Tentu waktu di pipeline

Ke tempat lain

Kan rusak pipeline nya

Jadi

Bisa

Kasih opsi kayak quiet

Atau silent

Atau no verbose

Jadi bisa

Output nya aja yang di

Kayak git push

Enumerating objects, blablabla

Kan banyak banget ini isinya

Sandanya ini, kita hanya pengen

Let's say

Ini hanya pengen ngambil

Total delta nya aja

Kalau kita pipeline kan bisa

Contohnya

Jadi waktu kita

Ngedesign

CLI comment nya kita

Kita pikirin gitu juga

Kalau seandainya kita mau pipeline

Ke tempat lain bisa gak

Contohnya ya jq

Grab

Eh grabnya gak

Tapi jq biasanya bisa

Atau

Yang

Apa namanya hal-hal yang lain

Apa ya

Rates CSV

Dan ini disini saya baru

Baru nyadar kalau ternyata

Beberapa CLI itu ada

Ngirimin data analytics ya

Kayak angular

Itu umum sih

Gue taunya kalau install framework

Itu hampir pasti ada

Itu sesuai yang ditulis di situ

Keliatannya best practice nya emang

By default gak, karena kalau by default

Collected statistic kayaknya

Banyak yang marah

Iya

Next.js ya

Enabled by default

Consider alternative to collecting analytics

Instrument your web docs

Instrument your download

Talk to user

Ok

Nextnya

Ini ada design principle

Untuk CLI dari Atlassian

Atlassian punya

CLI app gak

Dia punya gak

Banyak kali ya

Banyak ya

Apa lah Atlassian kan Jira

Jira di bucket

Jira bukan GitLab, Bitbucket

Bitbucket oh ya

Jira emang ada CLI nya

Gak ada kan

Mungkin suatu saat nanti teman yang di sini

Bikin Jira CLI

Mungkin ada yang unofficial

Capek banget di tiket Jira tuh

Nah Heroku juga

Bagus nih, tapi kita bahas ini dulu ya

Align with established convention

CLI have pretty much been around since

Down of the computer themself

Ya itu tadi kayak Pascal

Bikin nih Pascal

Yang pasti ya

Tetep ya, harus ada helpnya

Yang kedua, show progress

Visually, yang tadi kita bahas nih

Progress nya harus ada

Karena kita gak tahu

Kecuali kalau kita memang request

Quiet tadi ya, -Q misalkan

Kita gak mau nih ada progress-progress

Kayak gini, jadi ada pilihan

Antara mau ngeliat

Progress atau enggak

Terus create a reaction for every action

Ini prinsip kayak UI

UI yang bukan terminal

UI biasa kayak web UI atau UI lainnya

Juga gitu kan, kalau di quit

Submit, berubah jadi

Login spinner atau apa

Berarti ini berlaku juga buat CLI

Craft human readable

Error message, ini juga sama

Di web juga begitu ya

Jangan 404

Error

Errornya adalah error

Support your

Scheme reader

Scheme reader itu apa?

Jadi gak baca semua ya

Gak baca cepet-cepet

Scheming

Benar juga sih, ya itu tadi karena

Sebagian besar

Sebagian besar, kalau kita sehari-hari

Kita ada aktivitas AIN

CLI

Interaksi dengan CLI itu kan kayak cuma

Buat ngerjain sesuatu yang

Practical kan, ya itu kayak tadi

Initiate new project lah

Install suatu

Library itu kan

Kita buru-buru

Atau get push atau apa

Jadi kita gak beneran fokus di CLI

General rule of thumb

We follow was

To keep any instructions

Accompanying the CLI comment

To no more than 3

Sentence, 3 kalimat ya

Atau 50-75

Setiap para crowd, jadi jangan banyak-banyak

Dipecah-pecah kan

Berarti

Di potong jadi beberapa step

Kalau segitu konteksnya, butuh 1 paragraf

Eh, tunggu-tunggu

Dulu ada web browser

Yang dari CLI kan

Ada, links

Masih pada pake gak?

Enggak lah

Kecuali terpaksa

Kayak kemarin yang masalah

SSL, masalah

HTTPS sama HTTPS

Modern browser gak bisa

Harus HTTPS

Itu pake akhirnya

Cuma mau coba doang

Suggest the next best step

Jadi setelah login, harus ngapain lagi

No, try force create

Intinya jangan ngebingungin customer

Nah, karena keterbatasan CLI kan

Kalau UI yang

Web atau native app

Kan misalnya bisa ada

Table of contents di kanan

Bisa ada navigation menu

Atau hamburger menu

Ada banyak opsi

Buat next step

User mikir sendiri next stepnya apa

Nah, kalau ini kan gak bisa kan gak ada

Jadi kayak harus di-suggest

Verbally pake text

Consider your option

When user run comment in your CLI

They likely need to

Also pass in some option

To execute the comment

Tambahkan flag ya

Kecil banget nih

Intinya argument-argumentnya

Argument-argumentnya atau pilihan

Pilihannya juga

Ada yang bisa milih satu doang

Kayak gini itu

Ada yang bisa multiple choice

Kalo pake inquirer

Itu udah disediain tuh

Kalo checkbox bentuknya

Kayak checkbox gitu

Jadi kalau user ngeklik spasi

Itu jadi ke feel

Kayak warna-warnanya

Juga udah beda

Jadi secara visual

Ngebantu

Tapi sebaiknya juga ditambahkan helper

Kayak kasih tau user

Bahwa ini adalah pilihan berganda

Bisa pilih lebih dari satu

Tapi kita nggak ngek

Karena asumsi nya kalau aplikasi terminal

Pilihannya satu

Padahal sebenernya bisa pake spasi

Untuk milihnya pake spasi

Kalau pake ya

Mungkin yards atau

Okliffe juga sama

Itu nya lain

Jadi kayak kalau cuma biskip satu

Kandang lebih besar

Kalo bisa banyak

Itu bulet

Saya baru baca ada short ctrl+c

Ingat di terminal itu

Kita harus

Bisa juga

Memfasilitasi

Kalau misalnya user pencet ctrl+c

Itu kan sigin ya

Terminate

Terminate

Gitu ya bisa sigin

Tadi kan ada tuh di guideline

Yang dibuka sama mas Risa

Ada perintahnya

Handling itu nya

Terminate nya gimana

Gimana tuh

Di sini ya basic ya

Ada tadi

Karena sigterm itu

Sudah kayak the godfather

Comment

Kontrolnya pasti

Pasti akan

Dikirim sinyal terminate

Ini adalah

Option yang tidak

Diikuti oleh film ya

Easy way out

Enggak dikasih ya

Gampang sinyalnya

Pada yang bingung pake film ya

Kalau mau keluar dari film itu gue bingung

Apa sih ctrl+x bukan

Atau titik 2wq

Wq

Gak pake w

W itu kan write

Menulis di save

Kalau mau q false ya

Q pentung

Kalau engga pencet ini aja

Zz

Kalau engga command way aja tutup tabnya

Gak bisa lah

Atau pencet power off aja

Semua komputernya

Tapi ada swp biasanya

Begitu kita buka lagi ada sup file

Swap

Nah tuh tadi

Kalau user ngeklik ctrl+c

Itu ada contoh best practice nya

Docker tadi

Exit as soon as possible

Terus say something immediately

Before you start clean up

Add a timeout

Jadi biar gak nyangkut

Kalau quitting docker compose

Tulisannya

Serba jelas lah

Karena satu-satunya

Cara kita nyampein

Context apapun

Ke user ya cuma lewat text

Jadi kayak text nya harus

To the point dan jelas

Terus ini

Best practice berikutnya adalah

Flex over arts

Jadi lebih bagus menggunakan flex

Daripada menggunakan command atau arts ya

Jadi kayak gini nih misalkan

Force deploy production jira

Contohnya

Eh kok pencet

Developers write

Force deploy -- environment

Production --

Product jira

Experience developer can also

Use short

Short turn version

Force deploy -a production -p jira

Jadi lebih bagus menggunakan

Concept flagging ya

Daripada langsung begini

Menurut si

Atlasian

Betul saya lebih suka

Titik 2 wq tapi gak ngerti maksudnya

Iya

Titik 2 w itu adalah

Save, titik 2 q adalah quit

Ya write ya save write ya

Tulis file

Kalau pengen belajar film

Mulailah dari film tutor

Karena sudah dia bawa

Iya film tutor

Iya tinggal ketika aja film tutor

Pertama kali pakai film itu

Menjelankan film tutor

Dan baca film tutor nya

Biasalah baca

Dokumentasi ya

Ada lagi ini ini

Yang dulu saya gunakan sebagai

Referensi utama adalah

Video sebenarnya

Video dari

Mbak Amanda

Dia

Waktu itu kerja di github

Ini dia

Menceritakan bagaimana

Dia mendesain CLI untuk

Github CLI

GH

Ada yang pakai GH

Sempat pakai

GH repo create

Gini loh

GH repo create

Kita buat repo

Jadi gak perlu ke webnya

Coba enter

Create new repo

Iya coba enter

Udah ada repo nya

Push existing local

Github.com

Jadi kita bisa push juga

Atau kita bisa pakai GH

Kalau gak salah GH

PR ya

GHPR list

Iya

Ini dia cerita

Gimana prosesnya

Sampai dia kasih liat

Sekarang sih udah gak ada dokumennya ya

Dulu saya pakai

Dokumen apa template

Dokumennya dari dia

Ada google docs kalau gak salah

Nah ini nih dia kasih itu

Jadi desainnya cara desainnya

Gini

Biar mendekati seperti terminal

Jadi dibikin themes nya

Udah gak ada

Jadi temen-temen bisa nonton

Ini lengkap ya

Bahas film, iya bahas sedikit-dikit

Film kan juga CLI

Apps kan

Justru salah satu CLI

App yang paling banyak dipakai itu

Kadang-kadang terpaksa ya kalau

Di server

Enggak

Entara pakai nano atau theme kan pilihannya

Ya jadi saya dulu waktu

Coba mendesain karena kan

Waktu dapet tugas itu

Dapat project itu

Belum pernah sama sekali jadi harus banyak

Nonton dan membaca

Teringatnya ada

Ada course

CLI kah

Di Hektivate

Enggak ini bukan project Hektivate

Iya

Terus ada ini juga

Best practice dari Evel Marcian

Evel Marcian

Ini

Yang pertama AFOI still silent treatment

Ya sama kan

Yang tadi juga disuruhin

Comunicate progress

Karena bingung kalau misalnya

Kosong doang ini jalan atau enggak

Ya nggak ada itu

Ya nggak ada feedback ya

Jadi jangan sampai

User-nya dibiarkan diem kayak gini aja

Spinner for when you are in the dark

Sebaiknya pakai spinner ya

Pro itu

Ya tetap aja harus

Dikomunikasiin kan saving config file

Terus berikutnya

Oh dia

Dia kasih detail ya

Ada braille alphabet karakter

Untuk meniru

Spinner

Spinner-nya ya

Kalau saya tepat ada

Di JS itu sudah ada spinner

Saya pakai spinner JS kalau misalnya

Ada banyak sih

Kalau spinner

Ya ada banyak

Nextnya

The X of Y pattern

Ideal when you have data

Kalau misalkan download atau

Progress ya

Sebaiknya menggunakan angka

Terus apa lagi nih

Oh ini pakai Go ya Go library namanya

UI live

Progress bar

For multiple simultaneous

Process

Ini

Di Docker sering ya

Di Docker ada ya

Docker juga salah satu

Siala yang bagus sih

Yang bisa dicontoh

Terus apa lagi

Ini

Keren banget

Keep the lock clean

Yang warna-warni gradient gitu

Udah ada library-nya juga deh

Yang dipakai sama Astro

Astro juga gitu

Betul

Sama satu lagi

Mana yang saya mau lihatin ya

Nah terus

Tools-nya sekarang kan tadi

Udah apa namanya

Udah best practice

Ada lagi gak topik best practice

Sebelum kita beranjak

Lanjut

Lanjut ya

Oke

Tadi ada komen kayaknya

Apalagi sekarang banyak saya line-up integrate

Tadi kita udah bahas ini di awal ya

Justru AI

Kayak topik lain lagi

Kalau menurut

Ya misalnya topik diskusi yang

Terpisah dari best practice sih

Karena menurut

Menurut gue sekarang

Kayak apa ya

AI nubah banget

Cara orang pakai

Cara developer pakai

CLA app atau terminal kan

Dan ini juga kayaknya kasus

Yang sekali satu bikin

Terus hype

Semua ngikut kayak

Apa ya dari work

Terminal abis itu

Cursor juga bikin CLI

Cursor bikin

Co-pilot bikin

Gemini kan Gemini CLI

Gemini, Quen

Yang dari Amazon itu Kiro

Kiro gak ada CLI-nya

Amazon Q

Amazon Q

Ada CLI-nya

Kiro VSCode

ROO ya

ROO itu

ROO code itu

Mungkin ada terminal

Semacam itu lah

Yang di terminal semua

Dan sampai ada joke-nya nih

Bentar, link yang programmer

Memes

Sampe ada

Coba di

Intinya adalah

CLA app itu

Ini ya

hype kembali ya

Iya, tapi maksudnya cara

Cara pakenya juga jadi berubah gitu

Kalo dulu kita kan

Kita napalin command ya

ls -la

Atau ls aja

Sekarang karena

Semua pake natural language juga

Udah pake AI

Show me the contents of the folder

Iya, sometimes

Work itu kan saya pake work

Kadang dia suka ini sendiri

Saya udah type commandnya dengan bener

Trus dia suka

Agent nya jalan sendiri

Apa sih gitu

Saya harus ubah dia ke terminal mode

Paksa ke terminal mode

Gak butuh gitu kan

Gue tau apa yang di jalanin

Microsoft Edit udah coba

Udah yang jaman dulu, yang jaman sekarang

Microsoft Edit bikin lagi ya

Microsoft Edit

Jadi ceritanya itu

Jaman dulu tuh ada yang namanya

Applikasi

Di terminal namanya Edit

Kalau di Microsoft, di Windows

Dulu kan

Terus

Tujuannya adalah

Buat edit-edit file di terminal

Karena kan dulu

Terutama di jamannya DOS sebelum Windows kan

Itu kan banyak kan di

CLI juga kan

Sekarang Microsoft bikin

Lagi dari awal

Pake RAS

Bener kan? Pake RAS

Semua tergasti

Pada waktunya

Dia kan punya

Product WSL kan

Windows Subsystem Linux

Yang biasanya dioperasikan

Menggunakan terminal

Tapi editor nya kan dia gak punya

Mungkin

Ini kayak nostalgia aja sih

Sebenernya

Nggak ada, nggak lengkap

Nggak ada

Syntax

Highlighting nya nggak ada

Cuma plain text aja kayak notepad

Tapi di terminal lah

Ini semua kayak happy-happy aja dong ini

Maybe, I don't know

Kan tadi

Motivasinya adalah

Pengguna Windows yang

Developer itu kan ada

WSL yang banyak

Bekerja di terminal

Dan di terminalnya Windows

Itu belum ada editor

Yang terminal-based

Gitu aja

Keduanya itu

G-edit kan ada

Gnu edit kan ada

Itu kan

Kalau udah di Linux-nya

Kalau di Windows-nya

Kalau sebelum masuk Windows

Kan di Windows-nya

Pake apa?

Notepad.exe

Kebuka WI-nya

Pake vim bisa

Tapi kan bukan produknya Microsoft

Harus di install dulu kan

Notepad plus-plus

Notepad kan ada notepad

Ada notepad

Cuma kan GUI bukan

Terminal

Anyway

Ini tadi udah ya

Locklink juga udah

Ada lagi nggak? Masih banyak ternyata ya

Nah ini yang saya maksud

Tadi keep the locklink supaya

Bisa input via the pipe operator

Pipe operator

Iya jangan lupakan ya

Kalau Linux-based itu

Kita bisa chaining dari satu comment

Ke comment berikutnya

Jadi pastikan kalau bikin CLI

Bisa hasilnya itu

Bisa dilempar ke aplikasi yang lain

Comments selanjutnya

Oke

Terakhir

Ini ada beberapa library

Ini library sebenernya

Karena lucu aja

Karena ada nama library yang lucu

Namanya adalah Ratatouille

Oh karena Touille ya ampun

Tapi sebenernya bukan gitu

Turusan Ratatouille

Ya nggak ini kan playsetan

Playsetan

Ini pakai Bas kan

Iya

Jadi ini adalah library atau

Frameworknya ya

Terus yang kedua ada

Mana tadi? Panjang banget

Hah

Oh karena

Terima kasih ya namanya

Namanya lucu lucu ya

Ini pasti yang bikin karena

Package namenya lagi free

Ada yang pake bikin dulu

Terus ya udah random bikin

Yang ketiga bubble tea

Oh bubble tea

Gua juga ya

Gua library

Cara pakenya gimana

Oh pake switch ya

Pake switch

Berikutnya

Gum, gum ini apa?

Dari mana?

Shellscript

Shellscript

Bas berarti ya

Bas ya

Textual

Tau nggak sih kita main

Itu bacanya

Apa sih itu yang crash

Crash pentung

Tau nggak apa bacanya

Hash bang

Hah?

Hash bang

She bang

She bang oh she bang

Kok jadi she?

I don't know why

SH kali SH bang

Oh iya she bang

Hash SH

Kadang

Ada dulu yang

Temen kayak

She bang

Bukan

She bangnya itu salah

Dia bilang ngasih taunya she bangnya salah

She bang she bang

Akhirnya ceritau

Oh maksudnya headernya

Ya

Next ada textual, python

Ini sama ya kurang lebih ya

Model-modelnya mirip-mirip

Ada lagi nggak? Ink

JavaScript ya

Ini mirip seperti react, bener nggak?

Ink

Emang react

Emang react, bukan mirip

Sorry, sorry, salah

Jadi kita pakai

React untuk

Terminal

Ini

Ini agak

Agak sulit dinalar bener memproses dulu

Why?

Ya oke sih tapi

Why?

Why?

Sama aja kayak react native

Kalau mau diatur

Mau di center kah

Di kiri, di kanan, kayaknya di web itu udah paling

Optimal menurut

Tapi kan gak ada

Gak ada ininya kan

Apa yang mau dibikin reaktif?

Kalau di sialan

Kan react itu bukan artinya reaktif

Ya tetap

Namun kan dia kan proses

Ria itu kan proses untuk ininya

Untuk reaktif

Ini dia cuma pakai react UI-nya doang

Kayak use effect gitu-gitu kan

Gak ada kan

Gak ada kan

Ini ini reaktifnya doang

Life cycle nya si react

Sekarang pakai life cycle nya reaktif

Markup nya doang

JSX, sebenernya butuhnya

JSX, iya boleh sih

Tapi ya

Ini upgrade nya punya si reaktif kan

Ini tadi enquire, iya punya EKA

Enquire

Tadi udah

Punya EKA

Rekomendasi EKA

Punya CHAM, yang mana yang punya CHAM?

UI bukan?

CHAM bikinnya pakai

Bubble Tea

Oh Bubble Tea, oh iya namanya ya

Dari namanya ya

Ya kayaknya kalau namanya

Yang mirip sama brandingnya

CHAM tadi

Atau GAM, enggak ya

Coba tolong

Dikonfirmasi ulang

Seru juga ya CLI-T ya

Banyak yang bisa dikulik

Gak, dia nggak bosenin

Dia web mulu

Gimana how to center

Beef

Oh, saya ada satu

Case yang di CLI itu

Cukup memakan waktu, yaitu

Bagaimana memikirkan

Ukuran

Ininya

Layarnya

Karena harus kapan dipotong

Textnya

Itu juga perlu

Ada standardnya nggak sih?

Kalau pre-tier

Lain panjangnya

Kayak ada yang default

Berarti itu bisa disimpulin rata-rata

Rata-rata, developer

Bergantung user

Bergantung datanya juga, sebanyak apa

Kalau datanya banyak

Jadi kalau dikecilin

Besarin

Harus bikin responsif juga

Apalagi kalau kita mau nampilkan dalam bentuk table

Terus kita kan supaya

Table-nya itu bisa rapi

Kan kita harus padding-padding space-space itu

Supaya rapi garisnya

Nah itu perlu dipikirkan

Mungkin kalau ngulik

Atau kita pake framework kayak

Oclift tadi kayaknya mestinya udah ada ya

Maksudnya itu kan hal yang

Sudah ada library-nya

Yang punya use case kayak gitu

Jadi some-where pasti udah

Ada sensible default-nya yang bisa kita ikutin

Cukup?

Kalau cukup

Kita bahas

Topik minggu depan

Voting?

Voting-nya?

Kita udah jadi diktator minggu lalu

Sekarang voti-voti

Hektoberfest nih sekarang

Hektoberfest ya

Oh bentar sambil promosiin

Itu form buat cerita horror

Oh iya benar, bentar

Ada ada ada

Nanti edisi Halloween

Kita mau bikin

Edisi cerita horror

Nah kalau misalnya temen-temen

Ada cerita serem, cerita mengerikan

Cerita serem yang bisa di-share

Terkait development

Bisa posting di

GitHub discussion

Kalau

Gak mau

Rizafami.com/horror

Rizafami.com/horror

Gak cocok ya

Form kali ya

Gak apa-apa, horror aja

Google form kok, Google form

Ngeobrol.in

Web horror

Oh iya bisa-bisa

Nama, boleh diisi nama samaran

Diisi aja, ini wajib tapi

Eh ini gak wajib sih ya

Mawar, bukan nama

Bukannya dari icon itu

Bisa kan biar gak harus login

Gak harus login ya

Gak perlu login

Asci art

Ya asci art juga sering ngepakai

Cerita serem dulu

Oh jangan

Itu cerita sedih bukan serem

Cerita sedih

Tapi buat keluarga

Serem sih

Buat anak istri sih

Serem ya

Jadi cerita apa ya

Cerita horror itu

Lebih ke

Kayak gak senang aja ngapus

Nge-drop DB production

Oh iya pokoknya yang serem

Nah abis itu segualnya

Cerita sedih

Terlalu sedih, gara-gara nge-drop

DB production

Waduh

Bahaya ya

Ini agak sensitif kalo layoff itu ya

Iya jangan

Yang terkait

Weapon development

Kalo sekarang temen-temen

Dilinkin tuh banyak yang kayak

Apa namanya

Vibe coding clean up, apa cleaner

Vibe coding cleaner gitu ya

Genitor, vibe coding janitor misalnya

Ya ya ya

Ternyata sekarang udah banyak

Ternyata

Kalo Ivan dulu

Saya dulu

Sering jadi pria panggilan

Untuk

Bersihin malicious

Attack kayak

Di WordPress misalnya kena hack

Nggak, WordPressnya kena hack

Saya yang bersihin

Atau

Sysadminnya gak sengaja

Rm in Rf

Route

Waduh

Waduh

Dan itu biasanya di WHM

WHM

WHM itu apa?

Kalo si panel atasnya kan WHM

Si panel kan panel accountnya

Atasnya kan WHM

Webhost manager

Si panel kan si panel

Si panel yang untuk route-nya

Saya pria

Panggilan untuk membereskan

Hal-hal seperti itu

Dan

Ya

Jadi boleh ya kalo temen-temen punya

Cerita-cerita yang bisa di share

Tapi hati-hati juga

Kalo misalkan di kantornya saat ini

Mungkin disamarkan aja

Nama kantornya atau nama projeknya

Atau

Kalo gak boleh di share ya

Disamarkan aja

Ya syaratnya harus cerita sendiri

Biar seru

Gak boleh cerita orang ya

Ya kalo cerita orang

Nonton di youtube kan gak asik

Ya kan

Atau kerangan sendiri juga

Boleh, hayalan sendiri juga boleh

Yang penting bukan cerita orang

Misalnya kalo punya

Hayalan sendiri gak boleh

Kan jadinya

Jadi novelist gitu ceritanya

Misalnya

Ini

Saya mau ngetes

Cerita horor

Kapan

Hei seram

Halo

Selamat malam

Itu dong

Serbeneran ya

Terima kasih

Jadi seram beneran

Oke

Kita mau bahas apa minggu depan

Temen-temen boleh ini dulu

Mungkin lagi ngisi form ya

Boleh kita

Pilih-pilih

Topik buat minggu depan

Mau bahas framework-nya

Atau yang lain

Framework kita punya

Ionik yang udah lama

Disubmit tapi gak dibahas-bahas

Kita gak punya

Orang yang pake ionik sih ya

Jadi bingung ya

Dulu ada yang ngusulin ionik

Itu siapa sih

Bahayu ini pasti

Ada yang

Ya coba kita

Dia pake atau gak

Terus suruh jadi narasumber

Wah ini ada tambahan lagi nih

Nah itu semua yang jawab

Oke oke

Nanti kita coba

Contact ya

Bahas bikin add-ins di Microsoft

Office

Emang bisa

Kita baru tau

Microsoft office

Oh office yang itu ya

Yang cloud ya

Yang web ya

360

360

Oh itu 360 ya

Bukan 365 ya

360

Kayaknya bukan 365

5 harinya ribu

Itu bukan hari

Itu derajat kali

365 hari

Salah salah

365 bener bener

365

Kalau 360 derajat

Puter balik lagi dong

Ya gue yang salah

Bahas reporting

Apa lagi yang menarik ya

Developer well being

Crystal report

Kan reporting tadi kan

Iya iya iya

Kayaknya developer well being asik deh

Kalau mau bahas non-technis

Kapan-kapan kita bisa coba

Oh non-technis lah ya

Minggu depan non-technis mau gak temen-temen

Oh kita bikin

Ini iya iya

Coba yang lain dulu

Kita apa namanya

Voting ya

Apa

World being

Saran dari 333

333

Work life balance

Bagaimana jarak

Beda buku

Oh beda buku ini

Terlalu tebal mindset buku mindset

Gak cukup seminggu

Beda

CSS unit

Beda rumah

Cuma bisa lama

CSS unit ya bisa bisa

Kita selalu lama

Estimasi

Estimasi cukup boleh

CSS boleh

Copilot UI

Copilot UI

Apa ini Copilot UI

Oh tadi ya

Eh Copilot kit

Buat UI

Generated UI ya

Kayak ini

Kayak bold.new gitu

Saya baru tau Copilot kit

Copilot kit

Ini bukan dari

GitHub ya

Oh

Ini bikin UI

Bikin UI

Kayak framework

Bikin UI buat

Agentic

Baru tau nih

Nice info

Agentic application framework

Open source

AI state application

Oh

Itu seru tau

examplesnya

Nah itu juga

Readymade template

Readymade UI

Beda web sendiri

Disubmit dong

Beda web

Kita ada kan Beda web

Ada yang baru lagi gak ya

Belum ya

Belum ada ya

Tunggu subscription dari

Temen-temen Dominicia

Submission

Oh iya submission

CSS container

Iya Copilot kit kayaknya menarik ya

CSS container

Sama unit aja apa besok

Oke

Dua itu

Veto lagi

Ini aja

Kan tadi sudah beberapa pilihan

Bikin aja dua

Satu non-technis, satu teknis

Copic minggu depan

Oke non-technis berarti

Itu ya

Well being

Iya

Ngomong-ngomong apa ya

Kecuali ada

Kalau

Ada yang punya strong opinion

Kayak sama apa ya

Burn out

Kayak punya bayangan apa aja yang diomongin

Iya sih

Gak kebayang sih

Gak kebayang sama sekali

Kalau CSS itu udah kebayang

Oke ya udah

Jadi CSS

CSS unit

Dan container

Satu lagi

Pilihannya

Tadi apa? Estimasi apa?

Estimasi

Dan project planning gimana

Oke

Kan estimasi itu bagian dari project planning kan

Project planning

Estimasi

Gitu ya

Silahkan polling

Satu menit ke depan kita

Tunggu satu menit lagi

Biar 2130 gitu maksudnya

Oh CSS unit 100%

Sambil itu, sambil bikin

Trap baru

Di situ

Copilot kit ini seru juga sih

Apa?

Agentic

Framework

Copilot Kit

Agentic

Kan mungkin bisa aja

Agentic

Agentic application framework

Agentic application

Framework

Ini copilot kitnya

Di dalam kali ya

Contohnya

Nanti sambil mulai cari-cari

Kalau udah ada satu

Pasti ke depannya bakal ada

Yang kompetitornya kan

Yang serupa

Heatsbrown ini masuk gak ya?

Ada yang tau gak Heatsbrown?

Gak tau

Dot dev

Keyboard saya kenapa ini

Ada yang

Ada new head

Nah ini cerita horror

Cerita horror tuh

Gerak-gerak sendiri

Gak sih

Heatsbrown

Def

Ini ini

Generative UI

Tapi gak bisa diklik

Kenapa ini

Oke lah

Ini dulu ya

Start discussion

Tadi saran dari siapa tuh?

Copilot Kit

Dari mas Rahadian

Dari mas Rahadian

Saran dari mas Rahadian

Awas loh kalo kita bahas gak dateng

Ngancem

Bercanda

Bercanda

Success Container lawannya

JQuery

JQuery

Oh

4357

4357

Wah

Heatsbrown gak bisa ya

Heatsbrown itu bukannya

Bikin itu ya

Game apa

Heatsbrow pasti mau aplesetan

Monopoly

Sebelum

Sebelum kamu

Memelesetkan kita sudah menebak

Ha ha

Ha ha

Ha ha

Ha ha

Ha ha

Sudah

Sudah

Sudah 2 menit

Kita tutup, pemenangnya adalah

Udah nih, udah nih

Pemenangnya adalah

Project planning

Oh

Oke

Project planning

Project planning

Pakai suara ini dong

Suara sound effect dong

Project planning

Project planning apa

Horor

Horor

Horor

Horor

NANI

Project planning itu gimana sih maksudnya

Project planning itu gimana sih maksudnya

Masih belajar, masih bingung bedanya

Dengan media query, iya besok kita bahas

Eh gak jadi ya

Media query itu buat viewportnya

Kalau container buat parent

Ya parent container

Ya berarti minggu depannya kudu CSS

Container sama media query

Yes, minggu depannya lagi CSS

Container sama media query, oke

Dicata dulu ya

Ada apa? Project planning ya

Cerita menyenangkan mengenai container

Query karena

Pertama kali

Ngobrolin web

Cikal bakalnya

Cikal bakal ngobrolin web

Pasti container query

Gue gak ngerti

Wah kurang update nih

Kurang update ya

Akhirnya kita

Menginisiasi ngobrolin web

151

Berarti tadi apa

Project planning ya

Planning, episode 152

Minggu depannya lagi

152

Itu adalah CSS

CSS container dan unit

Sambung-sambungin aja udah

Container dan unit

Oke

Tadi pertanyaan Ivan

Tentang

Di apresiasi dulu dong

Nah, ada unit Sarah ya

Boleh

Emang

Gue gak nangkep, siapa?

Uni Sarah

Uni Sarah + Seta

Ya ampun

Kita apresiasi

Aja lah

Ya boleh-boleh

Oke

Estimasi biasanya

Kalau disuruh

Bikin fitur A

Kira-kira gimana cara estimasi

Yang mendekati

Ketepatan

Yang akurat lah ya

Yang akurat, gak mungkin

Pasti bisa 100%

Akurat gitu kan, gak mungkin kan

Pasti ada

Kecepatan atau

Berapa lama nih gitu

Toko online gak bisa

Toko online

Toko online yang itu bisa berapa

Ya, estimasi

Waktu

Estimasi budget

Terus planningnya gimana

Ya ini ya

Kalau misalkan kita mau bikin aplikasinya

Atau bikin project gitu

Terus mulainya dari mana, bikin apa dulu

Bikin PRD kah

Spesifikasi kah

Ada functional requirement, ada non functional requirement

Mungkin masuk ke situ kali ya

Kita bahas lah nanti waktu estimasi

Ya kita bahas

Ada Mas Dito

Kita apresiasi lagi

Apresiasi Mas Dito nih

Ya gak boleh, istusara

PRD

Mau ke Makassar

Project requirement

Itu, Ivan mau ke Makassar tuh

Mas Dito

Pasti mau makan

Choto, atau Kondro

Silakan, silakan

Barang aja Mas Riza

Eh emang boleh 2 web, kan

Yaa yang banyak, web mah 1 aja

Langsung diem

Ayo

Semuanya udah

Kapan besok

Gas ya

Yulah

Kita belum pernah live dari Makassar ya

Siapa tau kita bisa ngobrolin web live dari Makassar

Bisa gak ya, boleh gak ya

Negu-negu nanti sama Mas Danang kali ya

Terus kita suruh berenang ke Makassar

Pengen?

Oh iya kita juga pengen

Kita juga pengen

Di Bogor udah, Surabaya udah

Makassar dong nextnya ya

Oke, oke, deal, deal

Deal, deal, deal

Maksa

Suruh berenang sendiri ke sana

Nanti hotelnya

Berdua lah, gue sama Ipan mah

Berdua aja, satu kamar gak usah 2 kamar

Siap

Bisa lah

Iya

Pada waktu ke Beijing aja

Sekamar bertiga ya

Sama Pak Dika

Naik pesawatnya ke diri

Mas Danang nonton juga

Biasanya gitu

Biasanya sih gitu

Kalau kita nyobot Mas Danang muncul di komen

Kali ini gak

Besok kita sampaikan

Oke, kalau gitu terima kasih buat semuanya

Kita udahan dulu

Kita ketemu lagi minggu depan

Topiknya tentang

Project Planning

Sampai ketemu minggu depan

Bye-bye

Mungkin telah kesekian kali melihat untuk membandingkan

Kembali dengan lainnya

Jika Anda mencari tahu mengenai layanan web hosting

Terbaik, kami pastikan Anda

Berada di tempat yang tepat

Dengan Domainesia, dapatkan pengalaman

Memunakan layanan hosting yang lebih baik

Dengan SSD

Berperforma tinggi dalam infrastruktur cloud

Yang telah dioptimalkan untuk kebutuhan personal

Maupun bisnis

Teknologi ini memungkinkan Anda

Memperoleh layanan yang lebih stabil

Serta proteksi dari korupsi data

Hosting Domainesia juga telah mendukung

Node.js, Python, Ruby

Go, PHP, Java

Serta binary Linux

Lebih dari 200.000 pelanggan

telah mempercayakan layanan hosting di Domainesia

Kepercayaan yang kami jaga

Dengan garansi Abden 99,9%

Serta garansi uang kembali

100%

Buat website Anda lebih menunia

Segera berali web hosting Domainesia

Deskripsi asli dari YouTube

🗣️🕸️ Selasa malam waktunya #ngobrolinWEB! Topiknya agak beda nih, kita akan diskusi tentang mendesain dan mengembangkan aplikasi berbasis terminal atau CLI. Tentu saja bersama Ivan dan juga Eka. Ngobrolin WEB malam ini berkolaborasi dengan DomaiNesia! 🏷Gunakan kode NGOBROLINWEBDN dan dapatkan DISKON 10% Untuk Pembelian Web Hosting DomaiNesia: Beli Web Hosting DomaiNesia disini: https://my.domainesia.com/ref.php?u=25754 🎁DISKON 50% Cloud VPS Turbo dengan Kode Promo: NGOBROLINVPSDN Beli W Kunjungi https://ngobrol.in untuk catatan, tautan dan informasi topik lainnya.

Episode Terkait

Bagikan:

Suka episode ini?

Episode baru setiap Selasa malam. Dengarkan lewat YouTube, Spotify, atau feed podcast favoritmu.

Pilih Cara Langganan

Memuat komentar dari GitHub Discussions...

Jika komentar tidak muncul karena ekstensi privasi / adblocker, kamu bisa berdiskusi langsung di GitHub Discussions .