What Ruby Developers Can Learn From Go
summary
Compares concrete Ruby and Go snippets and shows that Go enforces up-front error handling by returning value+error everywhere, makes unused imports and variables compile errors, and exports identifiers by case-based export not annotations. Demonstrates interface-based polymorphism without inheritance, lacks generics, and targets small composable packages (standard packages seldom exceed three files or ~1,000 lines). Includes direct code comparisons and runtime tradeoffs around verbosity, error propagation, and tooling.
AI-written summary · about
chapters (34)
- 0:00Introduction
- 1:25What does Go do
- 3:11What to know about Go
- 3:27Go has an agenda
- 3:38Language designers have a very specific way
- 4:05You have to make your peace with that
- 4:20I dont think Ruby does have an agenda
- 4:44Design goals
- 5:21Declaration of variables
- 5:55Design Decision
- 7:37Client Code
- 8:10Package API
- 9:11Duck typing
- 9:22Interfaces
- 11:44Controversial
- 12:00Destructor Bind
- 12:47Multiple Returns
- 13:31Exceptions
- 14:40Disadvantages
- 15:31Do you catch
- 17:38Agenda
- 19:08FineByID
- 20:19Ruby vs Go
- 20:37Type declaration
- 21:28Whats next
- 21:58Is it true
- 22:09More than one language
- 23:20Programming language communities
- 23:56Dependency management
- 25:41idiomatic code
- 27:06familiarity
- 28:15the goal of a language designer
- 28:36an accidental example
- 29:36conclusion








