Blain Smith

blainsmith.com · Personal blog · on HN since 2013

Blain Smith, a software developer, writes blunt personal posts on Go, software practices, and plain-text tools.

What HN saysHN commenters quote his line about not shipping distributed systems when a feature will do, while another says his Go post is really arguing Rust is better.
15HN people shared it
3linked it in comments
20stories submitted
288story points
3 months agolast shared
2013people per year2026

Most-shared posts

  1. 1
    Just Fucking Use Go
    3 people · 53 points · first shared 2026 · 20 comments on HN
  2. 2
    Humanities in the Machine
    2 people · 2 points · first shared 2026 · discussion on HN
  3. 3
    The Wheels We Keep Reinventing
    2 people · 2 points · first shared 2026 · discussion on HN
  4. 4
    Plain Text Protocols
    1 people · 194 points · first shared 2021 · 171 comments on HN
  5. 5
    Show HN: paleorecipes.io: For Geeks, By Geeks
    1 people · 6 points · first shared 2013 · 4 comments on HN
  6. 6
    Read the Fucking Manual
    1 people · 5 points · first shared 2025 · 1 comments on HN
  7. 7
    Fuck Your Hustle (2017)
    1 people · 5 points · first shared 2022 · discussion on HN
  8. 8
    What I Don't Care About in Software
    1 people · 4 points · first shared 2025 · 2 comments on HN
  9. 9
  10. 10
    I Write HTTP Servers
    1 people · 3 points · first shared 2025 · discussion on HN
  11. 11
    Year 5 School Bachelor's Degree (2020)
    1 people · 2 points · first shared 2021 · discussion on HN
  12. 12
    Signing JWTs with Go's crypto/ed25519
    1 people · 2 points · first shared 2020 · discussion on HN
  13. 13
    Easy Profiling Go Benchmark Tests with Bash
    1 people · 2 points · first shared 2021 · discussion on HN
  14. 14
    Tracing HTTP Requests with Go's net/HTTP/httptrace
    1 people · 1 points · first shared 2026 · discussion on HN
  15. 15
    10th Person
    1 people · 1 points · first shared 2026 · discussion on HN

What HN people wrote when they linked it

senko · 2026-05-11
I love this line: > Stop shipping distributed systems when you meant to ship a feature. But not in the contex the author meant. Many people don't realize that when you have a frontend, a backend (several instances, for failover/scaling), a (separate) database, maybe some object store -- you have a distributed system. A recent article[0] touched on that, although most HN commenters[1] latched on the "go" part. But there's something to avoiding rube goldberg machines where we don't need them. [0] https://blainsmith.com/articles/just-fucking-use-go/ [1] https://news.ycombinator.com/item?id=48062997
denysvitali · 2026-05-25
The article seems to be just a way to say "Rust is better" - and it fails to do so by spreading misinformation such as the channels part (https://corrode.dev/learn/migration-guides/go-to-rust/#channels) or making a fair comparison of pprof vs Rust's flamegraph. It also skips entirely over debugging (delve vs gdb), IDE support, ecosystem (why the hell does Rust have N async runtimes?!), statically linking and so on. A comparison between the performance of RLS / rust-analyzer (painfully slow) and gopls would be enough to kill the whole argument about developer happiness and productivity. It even passes traits as a "reason to switch" to Rust - where in fact it would probably be a reason (IMHO) not to use it (together with lifetimes). I think both languages are amazing, so a migration Go -> Rust (or Rust -> Go) makes no sense most of the time. I've written code in both for a while now, so I know the pain and advantages of both. For example, Go sucks at microcontroller stuff - in fact it's not even Go officially (see my presentation about porting "Go" to an ESP32-S3 [1]) - whereas Rust is amazing and even has a strong project behind (https://esp.rs) and amazing tooling (probe-rs & co). What's also not addressed here is the Go ecosystem. The Go packages are one `go mod add` away (pkgs.go.dev) and the module owner guarantees v1 backwards compatibility for the whole lifetime of the module. This means that, no matter what happens, your dependencies will always be up-to-date…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close