
[!NOTE] ShowMyGear adalah bagian dari TrackMe Ecosystem.
[!CAUTION] Disclaimer: Bukan untuk Pemula Absolut. Repositori ini adalah koleksi strategi tingkat lanjut (intermediate-advanced).
- Prasyarat Wajib:
- Memahami dasar Jaringan Komputer (IP, DNS, Port).
- Terbiasa dengan Command Line Interface (CLI) Linux/Unix.
- Paham konsep dasar Pemrograman (Variabel, Fungsi, Logika).
- Saran Belajar: Jika Anda baru memulai, silakan selesaikan kurikulum di Roadmap.sh atau CS50 terlebih dahulu.
- Cara Baca: Jadikan repositori ini sebagai referensi arsitektural untuk membentuk mental model, bukan tutorial langkah-demi-langkah.
Jika Anda baru pertama kali menginjakkan kaki di repositori ini, jangan biarkan tumpukan file teknis mengaburkan pandangan Anda. Ikuti Protokol Navigasi ini untuk pemahaman yang holistik:
graph TD
Start["Entry: README.md"] --> P["Step 1: Kompas Naratif (Narasi & Konteks)"]
P --> J["Step 2: Developer Journey (Peta & Leveling)"]
J --> T["Step 3: Dokumentasi Teknis (Eksekusi)"]
style Start fill:#f5f5f5,stroke:#333
style P fill:#e1f5fe,stroke:#0288d1,stroke-width:2px
style J fill:#fff9c4,stroke:#fbc02d,stroke-width:2px
style T fill:#e8f5e9,stroke:#2e7d32
“Mengapa belajar mendalam jika AI sudah bisa melakukan semuanya?”
Jawaban singkatnya: Kita sedang berevolusi dari “Penulis Kode” menjadi “Perancang Peradaban”.
Saya meminjam istilah ini dari trilogi Prometheus. Di era Agentic AI yang mampu mereplikasi pekerjaan teknis (coding, debugging, deployment), nilai seorang manusia bergeser dari Eksekusi ke Visi.
Seorang Engineer of The Architect tidak hanya peduli pada “seberapa elegan kode ini”, melainkan “bagaimana sistem ini bertahan dalam skala ekonomi 10 tahun ke depan”.
Untuk menjadi arsitek, Anda tidak bisa melompati fundamental. Pemahaman sistem operasi adalah akar dari segalanya.
graph TD
A["Visi: Perancang Peradaban<br/>(Tokenomik, Ekonomi, Sospol)"]
B["Sistem Desentralisasi<br/>(Web3, Smart Contracts)"]
C["Keamanan & Integritas<br/>(Cryptography, Security)"]
D["Infrastruktur & Jaringan<br/>(Linux, TCP/IP, Docker)"]
E["Logika Dasar & Teks<br/>(Programming, CLI)"]
E --> D
D --> C
C --> B
B --> A
style A fill:#f9f,stroke:#333,stroke-width:2px
style E fill:#fff,stroke:#333
timeline
title The Ascension of The Developer
2015-2022 : The Coder : "Saya menulis fungsi." : Fokus: Sintaks & Algoritma. Memindahkan data dari A ke B.
2023-2025 : The Pilot : "Saya menyetir AI." : Fokus: Prompting & Review. Validasi output generatif.
2026-Future : The Architect : "Saya merancang sistem." : Fokus: Konsekuensi sistem, Model Bisnis, & Etika Komputasi.
Mengapa kita masih perlu membahas hal-hal “low-level” seperti Linux, Network, dan Security di era AI?
| Bidang | Fokus Era Lama (Coder) | Peran Era Baru (Architect) | Kenapa Wajib Paham? |
|---|---|---|---|
| OS / Linux | “Cara install package.” | Resource Management. | AI bisa install library, tapi tidak bisa mengoptimalkan kernel untuk load ribuan user. |
| Networking | “Cara panggil API.” | Security & Topology. | Interaksi antar-Agent AI membutuhkan jalur aman yang diverifikasi secara manual oleh manusia. |
| Security | “Ganti password berkala.” | Identity & Trust. | Di dunia Web3, sekali identitas Anda bocor, seluruh aset digital peradaban bisa runtuh. |
Repositori ini adalah Helicopter View—sebuah pathway jujur—untuk mempersiapkan Anda menjadi Arsitek yang memegang kendali penuh atas mesin-mesin cerdas ini. Kami tidak hanya membuat aplikasi; kita sedang membangun protokol yang tak bisa di-rollback.
Nantikan repositori lanjutan “Hyperfocus” untuk implementasi teknis tingkat lanjut.
Jika Anda merasa asing dengan istilah-istilah di atas, jangan khawatir. Setiap arsitek memulai dari pemahaman material dasar. Sebelum menyelami repositori ini, pastikan Anda melatih otot teknis Anda pada topik-topik berikut:
Aplikasi modern adalah entitas yang saling berkomunikasi.
Kode Anda tidak mengambang di awan; ia menapak di OS.
Hapus pemikiran tentang “framework” (React/Laravel) untuk sejenak.
[!TIP] Disiplin Harian: Luangkan 1 jam setiap hari untuk topik-topik di atas. Repositori ini akan menunggu Anda saat Anda siap untuk melihat gambaran besarnya di akhir pekan.
“Bedah isi kepala saya satu per satu di sini.”
Dokumen ini adalah Menu Utama, namun panduan mendalam mengenai alur pengembangan tersedia di Peta Perjalanan. Ikuti jalur ini untuk memahami pola pikir seorang engineer dari dasar hingga tingkat lanjut.
“Peta jalan batin untuk menghubungkan setiap kepingan puzzle.”
Jika Anda merasa kewalahan dengan banyaknya modul teknis yang tersedia, bacalah Prolog & Intermezo. Dokumen ini dirancang sebagai jembatan naratif untuk memberikan abstraksi dan konteks dari setiap perjalanan pemikiran di repositori ini.
ShowMyGear (Dilafalkan: /so-ma-ger/) adalah akronim kinetis yang berevolusi sesuai perspektif pengamat:
flowchart TD
Observer(["Mata Pengamat"])
Observer -->|"Saat Pamer"| Show["ShowMyGear"]
Observer -->|"Saat Retrospektif"| Saw["SawMyGear"]
Observer -->|"Saat Kolaborasi"| See["SeeMyGear"]
Observer -->|"Saat Mengelola"| Somager["Somager"]
style Observer fill:#eceff1,stroke:#333
style Somager fill:#ffee58,stroke:#fbc02d,stroke-width:2px
[!TIP] TrackMe adalah etalase minat; Somager adalah bedah anatomi pikiran di baliknya.
Jika TrackMe adalah sebuah Portfolio Tracker yang melampirkan “Apa yang saya kerjakan” (Project, Interest, Ongoing Work) di etalase GitHub Pages, maka ShowMyGear (Somager) adalah sisi internalnya.
ShowMyGear hadir untuk membedah cara berpikir (Mental Model) yang dibangun oleh developer (Sandikodev). Ini bukan sekadar daftar alat bagi mereka yang gemar mengoleksi software tanpa memahaminya, melainkan bentuk pertanggungjawaban alur pengembangan yang brutal secara:
Awalnya repositori ini mungkin terlihat hanya mendeskripsikan “tools apa yang dipakai”, namun sejatinya ini adalah otopsi isi pikiran seorang developer yang sudah muak dengan cara-cara dangkal.
flowchart LR
subgraph TM["TrackMe Ecosystem"]
Front["🏠 TrackMe (Etalase)"]
Back["🧠 ShowMyGear (Otak)"]
end
Front -->|"Lihat KARYA saya"| Public["Github Pages / Portfolio"]
Back -->|"Lihat PIKIRAN saya"| Internal["Workflow / Philosophy"]
Back -.->|"Powers"| Front
style Front fill:#e1bee7,stroke:#8e24aa
style Back fill:#b2dfdb,stroke:#00695c,stroke-width:2px
Repo ini bukan sekadar kumpulan konfigurasi. Ini adalah Eksternalisasi dari Disiplin Mental seorang developer. Setiap file di sini adalah jawaban atas pertanyaan eksistensial dalam karir engineering.
flowchart TD
Level1["1. JIWA: Filosofi"] --> Level2["2. FISIK: Fondasi"]
Level2 --> Level3["3. NAHKODA: Simbiosis AI"]
Level3 --> Level4["4. BUKTI: Warisan"]
style Level1 fill:#f8bbd0,stroke:#c2185b
style Level2 fill:#e1bee7,stroke:#7b1fa2
style Level3 fill:#d1c4e9,stroke:#512da8
style Level4 fill:#c5cae9,stroke:#303f9f
Setelah Anda melewati Protokol Onboarding (Langkah 1 & 2) untuk fondasi mental, Anda tidak perlu lagi membaca sisa modul secara berurutan. Gunakan indeks di bawah ini untuk menyelam ke aspek teknis berdasarkan Masalah yang sedang Anda rasakan:
| Jika Anda merasa… | Baca Modul Ini | Karena… |
|---|---|---|
| “Saya cuma copy-paste kode AI.” | Simbiosis AI | Anda perlu merebut kembali kemudi sebelum kapal Anda menabrak gunung es halusinasi. |
| “Repo saya berantakan & tak bernama.” | Git Hygiene | Identitas adalah fondasi reputasi, jangan biarkan commit Anda terlihat seperti sampah anonim. |
| “Setup saya beda di tiap laptop.” | Standar Engineering | Konsistensi melahirkan kecepatan; kekacauan melahirkan drama jam 3 pagi. |
| “Saya bingung pilih LLM.” | Lanskap LLM | Anda butuh strategi tempur, bukan sekadar membuang uang untuk langganan yang tidak terpakai. |
| “AI sudah bisa segalanya, buat apa belajar fundamental?” | Background & Manifesto | Anda butuh “tamparan” realitas tentang arogansi si awam dan delusi penguasaan. |
flowchart TD
subgraph PC ["Personal Computer (Host Machine)"]
Win["Windows Host"]
WSL["WSL 2 (Linux Kernel)"]
IDE["IDE / Editor Utama"]
end
subgraph Remote ["Remote Infrastructure (Heavy Lifting)"]
SSH["SSH Tunnel / VPN"]
Server["Private GPU / Cloud Server"]
end
IDE -->|"Native / .NET / VB / Java Init"| Win
IDE -->|"Sanitized Dev Env"| WSL
IDE -->|"Offload Work"| SSH
SSH --> Server
Win <-->|"Interoperability"| WSL
style PC fill:#e3f2fd,stroke:#1565c0
style Remote fill:#ffebee,stroke:#c62828
style IDE fill:#fff9c4,stroke:#fbc02d,stroke-width:2px
Membangun lingkungan pengembangan bukan soal “mengikuti tren”, tapi soal menjaga Integritas Sistem Utama. Kami membagi host menjadi dua kategori:
| Karakteristik | Dirty Host (Tradisional) | Sanitized Host (Pendekatan Somager) |
| :— | :— | :— |
| Instalasi | apt install atau .exe installer global. | WSL 2, Docker, atau Nix Shell. |
| Dampak | Registry kotor, variabel global (PATH) membengkak. | Sistem induk (Windows) tetap suci dan cepat. |
| Versi | Sulit menjalankan dua versi DB (misal Postgres 12 & 16). | Mudah. Setiap proyek punya kontainer/shell sendiri. |
| Uninstal | Selalu meninggalkan residu file di AppData atau /etc. | Cukup hapus container/folder proyek; laptop kembali baru. |
Meskipun kami sangat mendewakan sanitasi via WSL, ada kalanya Windows Host adalah pilihan yang lebih cerdas:
Bagaimana Dev Server yang berjalan di berbagai tempat bisa diakses melalui browser di Windows seolah-olah semuanya berjalan lokal?
flowchart LR
subgraph Win ["Windows Host (Browser)"]
B["Browser (http://localhost:XXXX)"]
end
subgraph WSL ["WSL 2"]
S1["Dev Server (0.0.0.0:8080)"]
end
subgraph Rem ["Remote Server"]
S2["Dev Server (localhost:3000)"]
end
B <-->|"Localhost Mirroring (Otomatis)"| S1
B <-->|"SSH Local Forwarding (Manual/IDE)"| S2
style Win fill:#e3f2fd,stroke:#1565c0
style WSL fill:#e8f5e9,stroke:#2e7d32
style Rem fill:#ffebee,stroke:#c62828
Untuk mengakses server remote seolah-olah berjalan di localhost Anda, kita menggunakan flag -L:
ssh -L PORT_X:localhost:PORT_Y USER@REMOTE
PORT_X (Local Port): Port yang Anda buka di browser Windows Anda (e.g., 8080).PORT_Y (Remote Port): Port tempat aplikasi Anda benar-benar berjalan di server remote (e.g., 3000).localhost:PORT_X di laptop Anda menuju localhost:PORT_Y di dalam server remote.Keuntungan: Anda tidak perlu membuka port firewall di server publik, karena trafik dilewatkan melalui jalur aman SSH.
[!TIP] Otomasi IDE: Kebanyakan IDE modern dengan fitur Remote SSH sudah melakukan pemetaan port (Port Forwarding) secara otomatis. Jadi, Anda tidak perlu khawatir jika terminal Anda hanya menampilkan “Running on localhost:3000” di server remote; IDE akan mencoba “memantulkannya” ke localhost laptop Anda secara transparan.
Catatan Performa: Jika koneksi internet Anda lambat, pemetaan otomatis oleh IDE terkadang terasa laggy. Dalam kondisi ini, melakukan manual tunneling via perintah SSH di atas terkadang memberikan performa yang lebih stabil dan responsif.
Terminal bukan sekadar tempat mengetik perintah; ia adalah Cockpit tempat Anda mengemudikan seluruh infrastruktur.
Kami memilih kombinasi alat yang meminimalkan friction antara pikiran dan eksekusi:
fzf). Developer tidak boleh menghabiskan waktu mengingat path file yang panjang.[!IMPORTANT] Filosofi Kecepatan: Jika Anda butuh lebih dari 3 detik untuk berpindah antar proyek atau mencari file, maka setup terminal Anda gagal.
Di dunia yang dibanjiri kode generatif AI, Integritas adalah mata uang baru.
Setiap commit di repositori ini (dan seharusnya di milik Anda) wajib ditanda tangani secara digital.
Hindari commit raksasa seperti “Fix everything”. Gunakan Atomic Commits: satu perubahan kecil, satu maksud yang jelas. Ini memudahkan rollback dan kolaborasi tanpa drama konflik kode yang berlarut-larut.
flowchart TD
subgraph Isolation ["Level 1: Isolation"]
Py["Python"] --> Poetry["Poetry .venv"]
Node["Node.js"] --> Fnm["FNM + pnpm"]
end
subgraph Enterprise ["Level 2: Enterprise"]
Java["Java"] --> SDK["SDKMan"]
PHP["PHP"] --> Docker["Docker Compose"]
end
subgraph System ["Level 3: System"]
Rust["Rust"] --> Nix["Nix Shell"]
end
style Isolation fill:#e8f5e9,stroke:#2e7d32
style Enterprise fill:#fff3e0,stroke:#ef6c00
style System fill:#f3e5f5,stroke:#7b1fa2
pip + requirements.txt adalah cara lama yang rentan terhadap Dependency Hell. Tanpa file lock yang benar, proyek Anda bisa berjalan hari ini tapi gagal besok karena library transitif yang berubah.requirements.txt atau pip install untuk proyek non-trivial.nvm) ditulis dengan bash script yang sangat lambat dan menambah jeda ~1 detik setiap kali terminal dibuka. fnm berjalan instan.npm yang menduplikasi folder node_modules di setiap proyek, pnpm menggunakan Content-addressable Store. Semua versi library yang sama hanya disimpan satu kali di disk fisik Anda dan dihubungkan via hard link.nvm. Script bash nvm dapat memperlambat Shell Startup; fnm instan.npm atau yarn (hanya untuk alat CLI sistem).pnpm: Pilihan utama untuk proyek Node (hemat disk via Content-addressable Store, Strict Hoisting mencegah Phantom Dependencies).bun: Ketika proyek berbasis Bun.deno.lock untuk Deno, bun.lockb untuk Bun).mvnw/gradlew).apt membuat workspace “kotor” dan sulit direplikasi di mesin baru.flake.nix atau shell.nix.nix develop (atau gunakan direnv).cargo build atau mix compile berjalan di mesin apa pun dengan Nix, tanpa langkah Setup manual.flowchart TD
Start(["Masalah"]) --> Q1{"Butuh Benar atau Cepat?"}
Q1 -->|"Benar (Correctness)"| Poetry["Poetry / Nix"]
Q1 -->|"Cepat (Speed)"| Fnm["fnm / Bun"]
Start --> Q2{"Butuh Isolasi?"}
Q2 -->|"Ya, Mutlak"| Docker["Docker / Nix"]
Q2 -->|"Tidak, Development"| Helper["Helper Scripts"]
style Poetry fill:#a5d6a7
style Fnm fill:#ffcc80
| Pilihan | Pro | Kontra | Mengapa kami memilihnya |
|---|---|---|---|
| Poetry | Deterministik, menangani Venvs secara otomatis, Publishing bersih. | Resolver lebih lambat dari uv/pip, non-standar untuk pemula. | Correctness > Kecepatan. Membatasi “works on my machine”. |
| fnm | Sangat cepat (Blazing Fast), dukungan Cross-shell. | Dokumentasi kurang ada di mana-mana dibanding nvm. | Kecepatan Shell Startup dan keandalan Rust. |
| Nix | Reproducibility mutlak, kebersihan sistem. | Sintaks kompleks, penggunaan disk berat (Store), kurva belajar. | Kami benci apt-get install libssl-dev merusak proyek lain. |
| Remote SSH | Offloads penggunaan sumber daya, Persistent Sessions. | Latensi, butuh internet/jaringan. | Menjaga laptop lokal tetap dingin/hemat baterai; skala ke Workloads berat. |
Kami tidak melihat AI sebagai pengganti, melainkan sebagai Exoskeleton untuk pikiran.
[!TIP] Simbiosis 1+1=3: Developer yang paham fundamental ditambah kecanggihan AI akan memiliki ambang produktivitas yang mustahil dicapai di masa lalu.
timeline
title Evolusi OS Daily Driver
2015 : Arch Linux (Belajar) : Linux From Scratch
2018 : Ubuntu / Debian : Era Produktivitas
2020 : CentOS (Server) : Pekerjaan Enterprise
2022 : Windows 10/11 : Era Stabilitas + WSL 2
flowchart TD
User(["User"])
Dev(["Developer"])
subgraph Reality["Realitas Software"]
GUI["Antarmuka (Kulit)"]
CLI["Teks / Kode (Inti)"]
end
User -->|"Melihat"| GUI
Dev -->|"Memahami"| CLI
GUI -.->|"Abstraksi"| CLI
style GUI fill:#cfd8dc,stroke:#333,stroke-dasharray: 5 5
style CLI fill:#263238,stroke:#000,color:#fff
apt, pip -g). Digunakan untuk alat inti seperti Git.Pikiran yang tajam butuh antarmuka fisik yang tidak menghambat.
[!NOTE] Hardware adalah Pelayan: Jika Anda menghabiskan banyak waktu mengurus hardware daripada bekerja, maka Anda tersesat dalam romantisasi.
Jika ShowMyGear adalah Helicopter View tentang “Apa” dan “Mengapa”, maka Hyperfocus (Segera Hadir) adalah “Bagaimana” dalam skala industri yang brutal.
Apa yang akan ada di Hyperfocus?
Ini bukan akhir, ini adalah pembukaan gerbang menuju kedaulatan digital yang sesungguhnya.
Merasa tersesat? Bingung dengan arah tulisan ini? Mari berdiskusi lebih kontekstual. Repositori ini adalah ruang terbuka.
“Saya sangat menghargai siapa saja yang ingin berdiskusi lebih lanjut.”
🏠 Home | 🗺️ Roadmap | 🤖 Protokol Agentik | 📜 Konstitusi Arsitek | 🔐 Kedaulatan Digital | 🔭 Future Spoiler | ⌨️ Hardware & Ergonomi