Steve Francia
spf13.com · Personal blog · on HN since 2010
Steve Francia, creator of Hugo and a Go team veteran, writes about Go, programming languages, and open source maintenance.
What HN saysHN commenters link it for Hugo, gofmt refactoring and his essays on Go in the agentic era and why engineers argue about languages.
26HN people shared it
9linked it in comments
28stories submitted
1.0Kstory points
4 months agolast shared
2010people per year2026
Most-shared posts
- 1I’m joining the Go team at Google3 people · 248 points · first shared 2016 · 199 comments on HN
- 2Is Go an Object-Oriented Language?3 people · 80 points · first shared 2014 · 69 comments on HN
- 3Why engineers can't be rational about programming languages2 people · 164 points · first shared 2025 · 200 comments on HN
- 4Hugo: A Fast And Flexible Static Site Generator Built In GoLang2 people · 99 points · first shared 2013 · 50 comments on HN
- 5Refactoring with go fmt2 people · 86 points · first shared 2013 · 40 comments on HN
- 6Hugo SSG v0.17 released (2x speed and multilingual)2 people · 28 points · first shared 2016 · 3 comments on HN
- 7Why TypeScript 7.0 Was Rewritten in Go2 people · 8 points · first shared 2026 · discussion on HN
- 8The Maintainers Dilemma2 people · 7 points · first shared 2026 · discussion on HN
- 9On the shoulders of giants2 people · first shared 2021
- 10Spf13 is leaving Google1 people · 239 points · first shared 2022 · 165 comments on HN
- 11Nitro: A Quick And Simple Profiler For Golang1 people · 16 points · first shared 2013 · 6 comments on HN
- 12The 9 Cost Factors1 people · 10 points · first shared 2025 · 2 comments on HN
- 13How Benjamin Franklin Invented Machine Learning in 17201 people · 8 points · first shared 2025 · 1 comments on HN
- 14Software Developments Magic Triangle1 people · 8 points · first shared 2010 · 3 comments on HN
- 15Hybrid MongoDB / SQL Applications1 people · 6 points · first shared 2012 · discussion on HN
What HN people wrote when they linked it
retzkek · 2013-11-20
Also worth mentioning is Hugo, a static site generator: http://spf13.com/project/hugo
samuell · 2026-07-08
Steve Francia (author of Hugo and a bunch of other top Go projects) wrote up some thoughts of Go's fit in the agentic era:
https://spf13.com/p/go-the-agentic-language/
lproven · 2025-11-04
This article bears directly on my point:
Why Engineers Can't Be Rational About Programming Languages
Steve Francia 3 Nov 2025
The Leadership Blindspot: How Identity Drives Multi-Million Dollar Technical Debt
https://spf13.com/p/the-hidden-conversation/
akshayshah · 2022-03-18
socialdemocrat · 2020-01-22
Refactoring is a bit more advance than just renaming though. gofmt can transform one pattern to another. https://spf13.com/post/go-fmt/
Touche · 2017-01-22
Not as nice is a pretty big understatement. Here's the article that Mozilla links to about how to do it on OSX: http://spf13.com/post/managing-multiple-firefox-profiles-in-os-x/
/Applications/Firefox.app/Contents/MacOS/firefox-bin --profilemanager
bjornerik · 2016-10-10
Steve Francia has written a nice blog article about the recent Hugo 0.17 release: http://spf13.com/post/hugo-goes-global/
gabesullice · 2016-09-13
While I appreciate that this is a work in progress and meant for learning, i just want to caution readers and those new to Go that this is a somewhat dangerous way to approach Go.
Simply mapping familiar vocabulary from an traditional OO language into Go implies that the differences are superficial and the underlying concepts are largely the same. The truth is that a lot of the traditional vocabulary was very intentionally left out of Go.
For example, mapping embedded stucts to "multiple inheritance" masks the fact that Go is trying to guide you into understanding the power of composition over inheritance. It's not that it's impossible to understand that, but by carrying over the terminology, you burden yourself with some preconceptions.
Like I said, I know this is a work in progress, but I encourage you to perhaps map the terms but then write a paragraph or two about how they're _different_, not the same.
This was a really nice resource for me when I first came to Go: http://spf13.com/post/is-go-object-oriented/