Apa itu Go? — Go

Pernah dengar Docker? Kubernetes? Terraform? Caddy? Hugo? Tools yang jadi backbone DevOps modern. Mereka punya satu kesamaan: ditulis dalam **Go**. Bahasa yang

Pernah dengar Docker? Kubernetes? Terraform? Caddy? Hugo? Tools yang jadi backbone DevOps modern. Mereka punya satu kesamaan: ditulis dalam **Go**. Bahasa yang dibikin Google 2009 untuk gantiin C++ di backend mereka — sederhana banget (cuma 25 keyword), cepet (kompile ke machine code), dan punya concurrency built-in (goroutine) yang bikin backend developer tersenyum lebar.

💡 "Boring is good". Go sengaja dibuat minimalis — gak ada generics di awal (akhirnya ditambah Go 1.18), gak ada inheritance, gak ada exception. Filosofi: bahasa yang gak banyak feature = team gede gak ribut soal style. Hasilnya: codebase Go di Google/Uber/Discord konsisten antar developer + gampang onboarding.

Kenapa Belajar Go?

Go di Web Development

Go sangat populer untuk backend dan microservices:

Hello World

package main

import "fmt"

func main() {
    fmt.Println("Hello, World!")
}

Setiap program Go dimulai dengan package main dan fungsi main(). Package fmt digunakan untuk mencetak output ke konsol.

🎭 Analogi sehari-hari

Java/C++ = mobil mewah dengan ratusan fitur (manual transmission, banyak pilihan suspension, customizable). Go = mobil pickup tahan banting. Cuma 1 transmisi, 1 jenis ban, gak banyak pilihan — tapi reliable, hemat bahan bakar, mudah maintenance, semua mekanik bisa. Pickup gak akan menang lomba balap, tapi kalau buat angkut barang dari A ke B = pilihan terbaik.

⚠️ Jebakan yang sering ditemui

TL;DR: Go = bahasa minimalis dari Google untuk backend + infrastructure. Cuma 25 keyword, kompile super cepat, goroutine bikin concurrency mudah. Backbone Docker/K8s/Terraform. Filosofi "boring is good" — gak banyak feature biar codebase konsisten. Cocok untuk microservices, CLI tools, network programming. Steeper curve dari Python/JS tapi lebih ringan dari Rust.

Yang akan kamu pelajari