showmygear

ShowMyGear (Somager): The Development Engine

ShowMyGear Developer Skill Tree

[!NOTE] ShowMyGear adalah bagian dari TrackMe Ecosystem.

English

[!CAUTION] Disclaimer: Bukan untuk Pemula Absolut. Repositori ini adalah koleksi strategi tingkat lanjut (intermediate-advanced).


Start Here: Protokol Onboarding

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
  1. Langkah 1: Kompas Naratif (Prologue & Intermezzo)
    Baca ini lebih dulu untuk memahami “roh” dan keterkaitan antar modul. Tanpa ini, Anda hanya akan melihat potongan-potongan teknis tanpa jiwa.
  2. Langkah 2: Peta Perjalanan (Developer Journey)
    Tentukan di mana posisi Anda saat ini. Gunakan ini untuk mengetahui urutan modul mana yang paling relevan dengan kapasitas kognitif Anda sekarang.
  3. Langkah 3: Dokumentasi Mendalam
    Gunakan Daftar Isi di bawah ini untuk menyelam ke spesifik modul teknis yang ingin Anda kuasai.

0. The Goal: Engineer of The Architect

“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”.

Piramida Pengetahuan (Knowledge Dependency)

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

Evolusi Peran Developer

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.

Relevansi Deep Engineering

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.


🏛️ Jalur Persiapan: Membangun Fondasi

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:

1. Jaringan Komputer (The Nervous System)

Aplikasi modern adalah entitas yang saling berkomunikasi.

2. Sistem Operasi (The Soil)

Kode Anda tidak mengambang di awan; ia menapak di OS.

3. Dasar Pemrograman (The Logic)

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.


🗺️ Mulai Perjalanan (The Journey)

“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.

👉 Buka Peta Perjalanan (Developer Journey)


Kompas Naratif (Prologue & Intermezzo)

“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.

👉 Buka Kompas Naratif (Narrative Compass)


📖 Daftar Isi

Filosofi Penamaan

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

Ekosistem TrackMe

[!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

Peta Mental: Mengapa Repo Ini Ada?

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.

Alur Berpikir (The Narrative Flow)

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
  1. Dimulai dari Jiwa (Philosophy)
    • Pertanyaan: “Siapa saya dalam kode ini?”
    • Jawaban: Kita mulai dengan Filosofi. Kita mendefinisikan bahwa “Software adalah Teks”, dan karena itu, setiap baris adalah sastra yang harus dijaga.
  2. Turun ke Fisik (Engineering Foundation)
  3. Bangkit sebagai Nahkoda (AI Symbiosis)
    • Pertanyaan: “Di era AI, apakah saya masih relevan?”
    • Jawaban: Justru semakin relevan. Tapi peran berubah dari “Tukang Ketik” menjadi “Nahkoda”.
      • Kita memilih Editor AI bukan karena fitur, tapi karena kecocokan pola pikir.
      • Kita menerapkan Simbiosis AI untuk tetap memegang kendali esensi.
  4. Bukti Keabadian (The Proof)
    • Pertanyaan: “Apa peninggalan saya?”
    • Jawaban: Bukti Pemikiran (Proof of Thought). Pada akhirnya, yang tersisa bukan kode (yang akan usang), tapi jejak logika yang kita tanam.

Indeks Holografik

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.

1. Infrastructure and Interoperability

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

Strategi Hybrid: Sanitasi & Performa

Membangun lingkungan pengembangan bukan soal “mengikuti tren”, tapi soal menjaga Integritas Sistem Utama. Kami membagi host menjadi dua kategori:

Dirty Host vs Sanitized Host

| 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. |

Pengecualian: Kapan Menggunakan Windows Host?

Meskipun kami sangat mendewakan sanitasi via WSL, ada kalanya Windows Host adalah pilihan yang lebih cerdas:

Kenapa WSL? (Lebih dari Sekadar Linux)

Interoperabilitas Jaringan: Akses Localhost

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

Edukasi: SSH Local Port Forwarding

Untuk mengakses server remote seolah-olah berjalan di localhost Anda, kita menggunakan flag -L: ssh -L PORT_X:localhost:PORT_Y USER@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.


2. Terminal Cockpit

Terminal bukan sekadar tempat mengetik perintah; ia adalah Cockpit tempat Anda mengemudikan seluruh infrastruktur.

The Stack: Shell & Multiplexer

Kami memilih kombinasi alat yang meminimalkan friction antara pikiran dan eksekusi:

[!IMPORTANT] Filosofi Kecepatan: Jika Anda butuh lebih dari 3 detik untuk berpindah antar proyek atau mencari file, maka setup terminal Anda gagal.


3. Git Hygiene

Di dunia yang dibanjiri kode generatif AI, Integritas adalah mata uang baru.

Signature of Trust (GPG/SSH Signing)

Setiap commit di repositori ini (dan seharusnya di milik Anda) wajib ditanda tangani secara digital.

Atomic Commits

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.


4. Language Ecosystems

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

Python: Isolasi Ketat (Poetry)

Node.js: Efisiensi & Kecepatan (fnm + pnpm)

Java: Enterprise & GUI

PHP: Strategi Konteks Deployment

Systems (Rust & Elixir): Aplikasi Nix


5. Trade-off Analysis

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.

6. AI Navigator

Kami tidak melihat AI sebagai pengganti, melainkan sebagai Exoskeleton untuk pikiran.

The Navigator Mindset

Pemilihan Alat

[!TIP] Simbiosis 1+1=3: Developer yang paham fundamental ditambah kecanggihan AI akan memiliki ambang produktivitas yang mustahil dicapai di masa lalu.


7. OS History and the “CLI-First” Mindset

Perjalanan: Dari Source ke Stabilitas

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

Manifesto CLI: “Software is Text”

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

8. Physical Cockpit

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.



🚀 Menuju Stage Berikutnya: Hyperfocus

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.


📫 Diskusi & Koneksi

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