What Scala Taught Me About Software Engineering
summary
Scala pushes a focus on the what not the how, favoring declarative collections and functional style over manual loops and intermediate structures; it argues reflection is evil with concrete costs shown in Spring Jackson and Hibernate (startup time, hidden runtime failures) and recommends build‑time or compile‑time solutions like Lombok, gRPC or Scala metaprogramming; it elevates type classes and macros and a strong type system, claiming expressiveness leads to efficiency and that those features have pushed Java, Kotlin, TypeScript and Rust forward.
AI-written summary · about
chapters (7)
- 0:00Introduction and background
- 1:33Declarative programming focus
- 4:20Build time vs runtime trade-offs
- 7:32Strong typing importance
- 10:22Expressiveness and efficiency
- 12:27Scala’s language influence
- 14:12Personal reflections and Q&A








