Belajar Bahasa Pemrograman Baru dalam 30 Hari
Tahun lalu saya tantang diri belajar Go dari nol dalam 30 hari. Bukan untuk jadi expert, tapi cukup untuk membangun project nyata. Berikut metode yang work — bisa diadaptasi ke bahasa apa pun.
Minggu 1: Fondasi
Hari 1-7 dihabiskan untuk basic syntax. Saya gunakan kombinasi:
- Buku resmi — "The Go Programming Language" (Donovan & Kernighan)
- Interactive tutorial — Go by Example untuk practice
- Video — A Tour of Go di youtube (1-2 jam)
Target: bisa baca code Go orang lain dan paham yang terjadi.
Minggu 2: Tools & Ekosistem
Setelah syntax solid, fokus ke:
go moduntuk dependency managementgo testuntuk testing — Go punya testing terintegrasi sejak day 1- Standard library tour:
net/http,encoding/json,database/sql
Minggu 3: Build Something
Tidak ada yang lebih efektif dari membangun project nyata. Saya pilih: REST API untuk URL shortener.
Stack:
net/httpsaja (tanpa framework dulu)- PostgreSQL via
database/sql+pgx - Test dengan
httptest
Setiap masalah yang muncul saat coding = peluang belajar.
Minggu 4: Refactor & Patterns
Setelah project jalan, refactor dengan idiom Go:
- Interface untuk abstraksi (dependency injection)
- Error handling yang explicit (no exceptions)
- Goroutine + channel untuk concurrency
Hasil
Setelah 30 hari, saya bisa:
- Menulis Go code yang idiomatic (bukan terjemahan dari bahasa lama)
- Membaca code Go open source dengan nyaman
- Build dan deploy aplikasi backend nyata
Kunci Suksesnya
- Konsisten — 1-2 jam per hari LEBIH PENTING dari 12 jam di akhir pekan
- Build, jangan cuma baca — tutorial saja tidak cukup
- Embrace the discomfort — bahasa baru pasti terasa aneh awalnya, itu normal
Selamat mencoba! 🚀