S
Steve Klabnik
words.steveklabnik.com · Personal blog · on HN since 2010
Steve Klabnik, a Rust community figure, writes about Rust, open source maintenance, WebAssembly and language design.
What HN saysHN commenters link it for Rust explanations like borrow checking and garbage collection, community commentary, and his post on whether npm is worth $2.6MM.
284HN people shared it
159linked it in comments
233stories submitted
12Kstory points
3 months agolast shared
2010people per year2026
Most-shared posts
- 1Node, Twitter, and Apologies13 people · 64 points · first shared 2013 · 75 comments on HN
- 2Rust and the Language Strangeness Budget11 people · 6 points · first shared 2020 · discussion on HN
- 3Is Npm worth $2.6MM?9 people · 140 points · first shared 2014 · 51 comments on HN
- 4How to be an open source gardener8 people · 447 points · first shared 2014 · 59 comments on HN
- 5A sad day for Rust: actix-web is dead (2020)8 people · 21 points · first shared 2020 · 10 comments on HN
- 6Is WebAssembly the Return of Java Applets and Flash?7 people · 516 points · first shared 2018 · 399 comments on HN
- 7Rust has a static “garbage collector”7 people · 240 points · first shared 2018 · 200 comments on HN
- 8Steve's Jujutsu Tutorial7 people · 165 points · first shared 2024 · 116 comments on HN
- 9Rails has Two Default Stacks6 people · 160 points · first shared 2013 · 92 comments on HN
- 10Nobody Understands REST or HTTP6 people · 101 points · first shared 2012 · 70 comments on HN
- 11Steve's Jujutsu Tutorial6 people · 7 points · first shared 2024 · 1 comments on HN
- 12A Sad Day for Rust5 people · 1.2K points · first shared 2020 · 991 comments on HN
- 13What to know before debating type systems (2010)5 people · 72 points · first shared 2011 · 38 comments on HN
- 14How often does Rust change?5 people · 50 points · first shared 2021 · 43 comments on HN
- 15Choosing Languages5 people · 29 points · first shared 2025 · 1 comments on HN
What HN people wrote when they linked it
techdragon · 2020-08-09
That does sound like a better way to explain that there are many types. Definitely worth opening a PR and making that change to the data types doc page.
As for the history of the rust documentation. One of the best people to talk to would be Steve Klabnik https://steveklabnik.com so I would recommend reaching out to him.
Nzen · 2025-07-22
When I've asked about using a jj stage, that's the workflow people pointed me to, as described in this tutorial [0]. I've not tried it, nor jujutsu, but I felt it worth pointing at a concrete example to allay or stoke fears of people on the fence.
[0] https://steveklabnik.github.io/jujutsu-tutorial/real-world-workflows/t…
scottgg · 2025-06-20
You can do it to any change in the repo and everything gets automatically rebased downstream of it - so if you three nicely structured changes you can go change the first one if you need and it just works.
I’m selling it short a bit - it does a lot more! There’s a great Steve Klabnik tutorial [1]. To me the main thing is it makes it very easy to think and work in terms of logical changes.
[1] https://steveklabnik.github.io/jujutsu-tutorial/
square_usual · 2025-06-12
There's many examples of exactly what you're asking for, such as Kenton Varda's Cloudlfare oauth provider [1] and Simon Willison's tools [2]. I see a new blog post like this with detailed explanations of what they did pretty frequently, like Steve Klabnik's recent post [3], which while it isn't as detailed has a lot of very concrete facts. There's even more blog posts from prominent devs like antirez who talk about other things they're doing with AI like rubber ducking [4], if you're curious about how some people who say "I used Sonnet last week and it was great" are working, because not everyone uses it to write code - I personally don't because I care a lot about code style.
[1]: https://github.com/cloudflare/workers-oauth-provider/
[2]: https://tools.simonwillison.net/
[3]: https://steveklabnik.com/writing/a-tale-of-two-claudes/
[4]: https://antirez.com/news/153
irh · 2025-03-29
What I've had in mind with Koto is that when I need strictness and precision I'll generally be using Rust, and Koto is more intended for another aspect of programming where I want things to be much more fluid and easy-going.
My thinking is that the potential footgun here is outweighed by the win of paren-free calls for quick scripting / rapid iteration, but it certainly counts towards the language strangeness budget [1] so I figured it was worth pointing out in the guide.
[1] https://steveklabnik.com/writing/the-language-strangeness-budget
nchmy · 2024-12-03
Came to plug jj as well.
Steve klabnik's tutorial is excellent as well. https://steveklabnik.github.io/jujutsu-tutorial/introduction/introduct…
steveklabnik · 2023-12-09
Deleuze is my favorite philosopher.
Eleven years ago I wrote a few blog posts trying to apply his concepts to programming. Haven't read them in a very long time, dunno if they hold up, but if anyone is interested: https://steveklabnik.com/writing/deleuze-for-developers-assemblages
Sammi · 2022-03-29
Steve Klabnik had a really great blog post about this:
https://steveklabnik.com/writing/webassembly-is-more-than-just-the-web
Basically webassembly is the same core idea as jvm, but redone with all the lessons from the last three decades. A modern cross platform runtime for anything anywhere.
Communitivity · 2022-02-01
We in the Rust community owe all three of them a great deal for their many contributions of software and community involvement. I owe Steve Klabnik for turning me onto Rust in 2017 with his blog post "Five Years with Rust"[1]. Five years later he is heading into a new chapter of his life with Rust. Here's to another five years of Rust evangelism and activity.
[1] https://steveklabnik.com/writing/five-years-with-rust
ecnahc515 · 2021-04-10
This reminds me of a blog post by Steve Klabnik (on the community team of Rust currently) about how he went through the Ruby on Rails backlog once similarly. It's a good read: https://steveklabnik.com/writing/how-to-be-an-open-source-gardener
JackC · 2020-07-05
What's the security posture of actix-web these days? The impression I got from the temporary deletion of the repo and maintainer switch about six months ago[1] was that actix-web was sort of a research platform rather than a production-ready server. It prioritized performance and ease of development in order to try (successful!) ideas the author had for writing really fast servers, and therefore made uses of unsafe code that many Rust developers thought unsuitable for production.
I don't mean to start drama -- I just feel like if the project is still prioritizing speed and experimentation over safety, that's worth including in comparisons like this, and if it's not anymore (or if I misunderstood the story in the first place), that would be good to know too.
[1] https://steveklabnik.com/writing/a-sad-day-for-rust
uryga · 2020-06-06
for anyone not following Rust, the drama around the (popular) Actix web framework was a prominent instance of this. iirc people opened issues and PRs re: the project's (significant) usage of `unsafe`, but the maintainer (Nikolay Kim) wasn't receptive; then some folks got nasty about it on reddit, escalating into full-blown drama. sadly, it ended with Kim posting he's "done with open source" and quitting the project.
a more detailed (and probably more accurate) account: [A sad day for Rust](https://words.steveklabnik.com/a-sad-day-for-rust)
brianzelip · 2020-01-17
I'm just a js dev with a whole lotta love for the web. I know enough to respect the hell out of Rust. I'd just like to offer my best wishes to the Rust community, and put a call for folks to be more civil on places like reddit, etc.
In closing, here's a nice little gem from the OP author's final blog post on his old blog[0]:
> if there’s one thing I’ve learned from writing software, it’s to blog about error messages.
Cheers.
[0] http://blog.steveklabnik.com/posts/2015-07-05-ember-data--ds-is-not-de…
edwintorok · 2019-07-03
You can opt-in to a Gc with Rust via Rc<> and Arc<>: https://words.steveklabnik.com/borrow-checking-escape-analysis-and-the…
Don't get me wrong, I like a language with a Gc by default, my favourite language is OCaml, but I can't claim it to be a drop-in replacement for C projects. Go, Rust (or D) stand a better chance at that.
__s · 2017-07-21
Related blog on why VCs might invest more liberally in projects like GitHub (or npm): http://words.steveklabnik.com/is-npm-worth-26mm
leshow · 2017-01-30
Most guys I follow are either rust or haskell developers.
@manishearth - rust - https://manishearth.github.io/
@bitemyapp - writer of haskell: first principles
@bartoszmilewski - haskell - https://bartoszmilewski.com/
@jdegoes - writes informative FP blog posts - http://degoes.net/
@aaron_turon - rust - https://aturon.github.io/blog/
@pcwalton - rust
@nikomatsakis - rust - http://smallcultfollowing.com/babysteps/
@paf31 - purescript creator
@nick_r_cameron - rust
@kmett - famous haskeller
@steveklabnik - rust - http://words.steveklabnik.com/
cubecul · 2016-12-29
I just hit publish on a post about this! The common guidance is to get started light and to start with the issues. Even the GSoC student at the repo I'm starting to get involved in started by reading as many issues as possible before diving in.
Here are two links to help you:
http://words.steveklabnik.com/how-to-be-an-open-source-gardener - Steve wrote a great post about how he gets started with a new project
http://peteh.me/an-easy-way-to-get-started-with-open-source-in-2017 - Here's my post about how I'm starting to get involved in open source without being great at coding
jakub_g · 2016-12-15
>I can't find the blog post
You probably meant this:
http://words.steveklabnik.com/is-npm-worth-26mm
stock_toaster · 2016-12-15
This could be the article the parent was referencing: http://words.steveklabnik.com/is-npm-worth-26mm
progman · 2015-09-23
> In your blind love for Rust you seem to forget that it in fact operates with pointers - everywhere.
I don't use Rust at all :-) I favor Nim, Haskell and Lisp. I am just pointing to Rust as a better alternative to cc14.
> I'm eager to hear your explaination how Rust doesn't use those stupid pointers.
Only in embedded systems where direct hardware access, memory and performance are issues pointers makes sense. In all other cases pointers are bad programming style.
http://words.steveklabnik.com/pointers-in-rust-a-guide
spatulon · 2015-08-27
For what it's worth, @steveklabnik's apology was pretty good. I definitely wouldn't describe it as "an insincere non-apology" - he acknowledged the effect he had on the other person, and actually said the words "I am sorry" instead of something passive and weaselly like "I apologise" or "Sorry if...".
http://blog.steveklabnik.com/posts/2013-01-23-node
shubhamjain · 2015-04-14
This reminds me of Steve Klabnik's article, "Is npm worth $2.6MM?" [1]. Even if the company is barely able to create a sustainable business model, or generate any significant profits, will it help in creating an ecosystem, that helps in creating billion dollar companies?
[1]: http://words.steveklabnik.com/is-npm-worth-26mm
DerekH · 2015-04-01
This blog post by Steve Klabnik would be a great start. He talks specifically about managing the issues section of an open source project (Rails).
http://words.steveklabnik.com/how-to-be-an-open-source-gardener
mijoharas · 2014-12-29
On another point, the rust documentation is absolutely amazing for a young language (and improving! [0]).
[0] http://words.steveklabnik.com/rusts-documentation-is-about-to-drastica…
zachgersh · 2013-06-25
I am sure Steve would say this as well (because he has said it many times). Start by improving the documentation of helping to regress bugs. These two items while seemingly inconsequential are actually a huge help to the core team and all developers who actually use rails (especially awesome documentation).
Once you get a certain level of familiarity with the way Rails is built, find a small bug and follow the contribution guidelines.
There is no magic :) Take small steps and continue to make any contribution you can. Ask a ton fo questions and work through issues, you'll get there.
Here's a blog post that Steve actually wrote about contributions:
http://blog.steveklabnik.com/posts/2012-07-05-how-can-i-contribute-to-…
Congrats as well Steve! You should be really proud of this release with the rest of the core team.
cletus · 2012-03-30
Look, I'm not a REST cheerleader by any stretch of the imagination but in REST terms the OP just doesn't know his ass from his elbow here. Consider:
> POST /orders/42/pay
> POST /orders/42/ship
You don't put verbs in your URLs. This is really REST 101. I highly recommend Nobody understands REST or HTTP [1]. The above is exactly why you don't put verbs in URLs. Consider instead:
POST /payment { orderId=42, etc }
POST /shipment { orderId=42, etc }
is a much sounder RESTful API design.
And in case anyone feels the need to suggest SOAP, I highly recommend the satiricial (but disturbingly accurate) The S stands for Simple [2].
[1]: http://blog.steveklabnik.com/posts/2011-07-03-nobody-understands-rest-…
[2]: http://wanderingbarque.com/nonintersecting/2006/11/15/the-s-stands-for…
cellularmitosis · 2012-03-05
After reading Steve Klabnik's "Nobody Understands REST or HTTP" ( http://blog.steveklabnik.com/posts/2011-07-03-nobody-understands-rest-… ), I thought it would be helpful if honoring the client's Accept: header in GET requests were easier.
Recently I watched Richard Jones' survey of the various Python micro web-frameworks ( http://www.youtube.com/watch?v=AYjPIMe0BhA ), and I was really taken by the design of itty.py.
I thought it would be great to extend their idea of the @get decorator for use with Accept:. It turned out to be merely a ~50 line change! Fun! Kudos to the developer of itty.py for writing code which is hack friendly.
joshuadavey · 2012-01-17
I would also recommend two of Steve Klabnik's articles: http://blog.steveklabnik.com/posts/2011-09-22-extracting-domain-models… and http://blog.steveklabnik.com/posts/2011-09-06-the-secret-to-rails-oo-d…
Another excellent resource is Gary Bernhardt's "Destroy All Software" screencast series. They are well worth the $9/month pricetag. https://www.destroyallsoftware.com
davidsantoro · 2012-01-04
Following the rant of: http://blog.steveklabnik.com/posts/2011-12-30-active-record-considered…
And the not very classy reply of: http://news.ycombinator.com/item?id=3418601
I think this article provide a nice explanation on why rails best practices are not that bad for the use cases it was designed for. It also suggests to move away from them, evolving an app architecture when it becomes more complex.
ghostwords · 2011-07-04
Ironic that the author's homepage (http://steveklabnik.com/) is a confusing pretend console that takes several seconds (on every visit!) to reveal useful information.