a73x
high effort, low reward[{home /} {posts /posts} {ethos /ethos}]
index.html
home
Welcome!
me
- backend cloud software engineer
- lang: go
- infra: kubernetes
tidbits
#go
- layout packages by what they do, not by their abstract type
- use channels sparingly: write synchronous methods and allow the caller to make it async
appendmodifies the underlying slice, you’ll only make this mistake once- define interfaces where you use them
make([]int, 5)has a length and capacity of 5.([]int, 0,5)has a length of 0 and capacity of 5.
append()will only do what you want with the latter- don’t use
init() - TFBO (test, fix, benchmark, optimise)
- more CPU != more performance
more CPU == more contention
#git
git reflogwill save you when you mess up- Keep your git history clean
git commit --fixup=<COMMITISH>git rebase origin/main --autosquash
resources
proc.go- Go documentation is great, this describes the scheduler- proposal: runtime/metrics: define a recommended set of metrics