Hacker ApprovedDepartments

Sorbet

Ruby type checker in Developer tools

Recommended for catching type and nil errors in large Ruby codebases, reducing the tests needed. Critics find its signatures verbose and its editor and gem support weak.

Recommended for catching type and nil errors in large Ruby codebases, reducing the tests needed. Critics find its signatures verbose and its editor and gem support weak.

31 people gave an opinion

recommend it
17
criticize it
14
approval share
55%
Each figure is one person. RecommendsCriticizes

Recommended in 6 of 13 months

  1. November 2025: recommended
  2. December 2025: recommended
  3. January 2026: recommended
  4. February 2026: not recommended
  5. March 2026: recommended
  6. April 2026: recommended
  7. May 2026: not recommended
  8. June 2026: not recommended
  9. July 2026: recommended
  10. August 2026: not recommended
  11. September 2026: not recommended
  12. October 2026: not recommended
  13. November 2026: not recommended (month in progress)

Why it doesn’t carry the badge

  • 17 people recommend itNeeds 10 or more, met.
  • 1.2 recommenders for every criticNeeds 2 to 1 or better, not met.
  • Recommended in 6 of 13 monthsNeeds 4 or more, met.

The same three rules apply to every product, and the badge can’t be bought. How the badge works

What people say about it

The reasons people give, with the number of comments that give each one. Open a reason to read what they said.

Why people recommend it

Each mark is one comment

  • Catches type and nil errors

    “they are more than worth their weight in the way I can rely on them to catch typing and nilability goofs”

    Comment from 25 Dec 2025 in “Ruby 4.0.0 Released”

    “It is a big win in avoiding errors, typos, documentation, code completion, fewer tests are required”

    Comment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

    “it does provide a good deal of additional saftey, less testing, LSP integration is good”

    Comment from 25 Dec 2025 in “Ruby 4.0.0 Released”
  • Fewer tests needed

    “It is a big win in avoiding errors, typos, documentation, code completion, fewer tests are required”

    Comment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

    “it's a huge boon IMO. The number of tests we don't need to write because of Sorbet is really nice.”

    Comment from 25 Dec 2025 in “Ruby 4.0.0 Released”

    “it does provide a good deal of additional saftey, less testing, LSP integration is good”

    Comment from 25 Dec 2025 in “Ruby 4.0.0 Released”
  • Proven in large codebases

    “I've seen large Ruby projects with hunders of developers working on it for >10 years with almost 100% sorbet coverage.”

    Comment from 27 Nov 2025 in “Ruby Was Ready from the Start”

    “pretty battle tested tool to define inline types as ruby syntax and type check both statically and at runtime”

    Comment from 25 Dec 2025 in “Ruby 4.0.0 Released”
  • Typed structs and enums at boundaries

    “Ruby (via Sorbet or DryStruct) are all really easy to write all those data structures and code.”

    Comment from 8 Jul 2026 in “We charge $10k a week to delete AI-generated code”

    “T::Struct and T::Enums at API boundaries has been the sweet spot”

    Comment from 25 Dec 2025 in “Ruby 4.0.0 Released”

What people warn about

Each mark is one comment

  • Verbose, ugly signatures

    “frankly both options looks ugly, and so does many of the alternatives like Sorbet signatures”

    Comment from 30 Nov 2025 in “Lowtype: Elegant Types in Ruby”

    “its signatures are wordy and because it can't infer the generic type of a private method”

    Comment from 25 Dec 2025 in “Ruby 4.0.0 Released”

    “extra lines of sig code I now need to essentially ignore as I read”

    Comment from 26 Dec 2025 in “Ruby 4.0.0 Released”
  • Painful to use and add

    “sorbet in the rbi camp is more powerful with static and dynamic analysis, but it's also painful”

    Comment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

    “trying to add types via sorbet has been miserable and useless”

    Comment from 16 Mar 2026 in “Type systems are leaky abstractions: the case of Map.take!/2”
  • Poor editor support

    “Sorbet doesn't even work in VSCode, some bugs are over 5 years old.”

    Comment from 21 Dec 2025 in “Ruby website redesigned”

    “I don't think it ever solved "jump to definition" though.”

    Comment from 14 Jan 2026 in “Show HN: Nogic, Turn codebase into a graph to understand how it fits together”

    “I was on VSCode/ruby-lsp and disabled sorbet”

    Comment from 8 Jul 2026 in “TypeScript 7”
  • Bolted on rather than built in

    “it's fundamentally an approach you would take if you had to build a type system around the language rather than in the language”

    Comment from 1 Dec 2025 in “Response to "Ruby Is Not a Serious Programming Language"”

    “They're both bolt-ons and it shows, badly.”

    Comment from 26 Dec 2025 in “Ruby 4.0.0 Released”

What people said

35 of the 37 comments that mention it, newest first. Each links to the original comment.

“Sorbet seems like a nice compromise here though!”

RecommendsComment from 9 Jul 2026 in “TypeScript 7”

“Sorbet annotations are unfortunately quite ugly”

CriticizesComment from 9 Jul 2026 in “TypeScript 7”

“I was on VSCode/ruby-lsp and disabled sorbet”

MixedComment from 8 Jul 2026 in “TypeScript 7”

“Sorbet is one of the best things since sliced bread to happen to the ecosystem”

RecommendsComment from 8 Jul 2026 in “TypeScript 7”

“Ruby (via Sorbet or DryStruct) are all really easy to write all those data structures and code.”

RecommendsComment from 8 Jul 2026 in “We charge $10k a week to delete AI-generated code”

“No sane rubyist uses that typing crap, sorry.”

CriticizesComment from 27 May 2026 in “From Rust to Ruby”

“or it's sorbet and it's weird”

CriticizesComment from 22 Apr 2026 in “Drunk Post: Things I've Learned as a Senior Engineer”

“I really enjoy using Sorbet with Ruby”

RecommendsComment from 13 Apr 2026 in “Ask HN: What Are You Working On? (April 2026)”

“trying to add types via sorbet has been miserable and useless”

CriticizesComment from 16 Mar 2026 in “Type systems are leaky abstractions: the case of Map.take!/2”

“it works very well in practice and supports most of the needs I have from a type system”

RecommendsComment from 13 Mar 2026 in “Returning to Rails in 2026”

“it also removes all the fun parts of ruby / rails”

CriticizesComment from 12 Mar 2026 in “Returning to Rails in 2026”

“RBS and Sorbet are not even close to good enough.”

CriticizesComment from 12 Mar 2026 in “Returning to Rails in 2026”

“I don't think it ever solved "jump to definition" though.”

MixedComment from 14 Jan 2026 in “Show HN: Nogic, Turn codebase into a graph to understand how it fits together”

“the compiler tells us there is an error”

RecommendsComment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

“Sorbet, possibly using RBS-Inline, is probably the best solution.”

RecommendsComment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

“Sorbet is Ruby and while it has a DSL that is no different than any other gem”

RecommendsComment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

“sorbet in the rbi camp is more powerful with static and dynamic analysis, but it's also painful”

MixedComment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

“It is a big win in avoiding errors, typos, documentation, code completion, fewer tests are required”

RecommendsComment from 27 Dec 2025 in “T-Ruby is Ruby with syntax for types”

“They're both bolt-ons and it shows, badly.”

CriticizesComment from 26 Dec 2025 in “Ruby 4.0.0 Released”

“extra lines of sig code I now need to essentially ignore as I read”

CriticizesComment from 26 Dec 2025 in “Ruby 4.0.0 Released”

“You can really trust the types when using Sorbet.”

RecommendsComment from 26 Dec 2025 in “Ruby 4.0.0 Released”

“its signatures are wordy and because it can't infer the generic type of a private method”

CriticizesComment from 25 Dec 2025 in “Ruby 4.0.0 Released”

“it's a huge boon IMO. The number of tests we don't need to write because of Sorbet is really nice.”

RecommendsComment from 25 Dec 2025 in “Ruby 4.0.0 Released”

“it is nothing but an impediment to progress”

CriticizesComment from 25 Dec 2025 in “Ruby 4.0.0 Released”

“In our codebase that uses Sorbet I find this is really only true at function boundaries”

MixedComment from 25 Dec 2025 in “Ruby 4.0.0 Released”

“they are more than worth their weight in the way I can rely on them to catch typing and nilability goofs”

RecommendsComment from 25 Dec 2025 in “Ruby 4.0.0 Released”

“T::Struct and T::Enums at API boundaries has been the sweet spot”

RecommendsComment from 25 Dec 2025 in “Ruby 4.0.0 Released”

“Really rough around the edges, lots of stubs have to be added because support for gems is lackluster”

CriticizesComment from 25 Dec 2025 in “Ruby 4.0.0 Released”

“it does provide a good deal of additional saftey, less testing, LSP integration is good”

RecommendsComment from 25 Dec 2025 in “Ruby 4.0.0 Released”

“pretty battle tested tool to define inline types as ruby syntax and type check both statically and at runtime”

RecommendsComment from 25 Dec 2025 in “Ruby 4.0.0 Released”

“Sorbet doesn't even work in VSCode, some bugs are over 5 years old.”

CriticizesComment from 21 Dec 2025 in “Ruby website redesigned”

“I agree with your analysis that RBS and Sorbet suck.”

CriticizesComment from 2 Dec 2025 in “Lowtype: Elegant Types in Ruby”

“it's fundamentally an approach you would take if you had to build a type system around the language rather than in the language”

CriticizesComment from 1 Dec 2025 in “Response to "Ruby Is Not a Serious Programming Language"”

“frankly both options looks ugly, and so does many of the alternatives like Sorbet signatures”

CriticizesComment from 30 Nov 2025 in “Lowtype: Elegant Types in Ruby”

“I've seen large Ruby projects with hunders of developers working on it for >10 years with almost 100% sorbet coverage.”

RecommendsComment from 27 Nov 2025 in “Ruby Was Ready from the Start”

Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.