~/talk

Life After Business Objects: Confessions of an OOP Veteran

Talkat GOTO Copenhagen 2021 · 2021-11-08..11-12· [functional-programming]
slides:none on file

Team replaces mutable-heavy C# design with F# and an actor layer (Akka.NET), processing gigabytes per hour with no explicit locks in source. Claims: algebraic data types and many small record types make illegal states unrepresentable, modules control visibility of unsafe operations, option types force stricter modeling, and actor-based messaging avoids thread coordination. Notes metrics: developer half-life ~3 years and lines of code half-life ~13 years, and Amdahl-style limits on speedup when only ~40% is parallelizable.

AI-written summary · about

  1. 0:00Intro
  2. 3:28Modeling a point
  3. 5:33Data structures in Fsharp
  4. 6:52OOP vs. FP
  5. 7:21Half-lives of software related entities
  6. 10:18Locks do not compose
  7. 11:13Amdahl's law in action
  8. 12:17Business objects
  9. 15:37Joe Armstrong on OOP
  10. 16:12Business objects
  11. 17:13Scott Wlaschin "Domain Modeling Made Functional"
  12. 20:54Domain modeling in Fsharp
  13. 21:43Algebraic data types in Fsharp
  14. 24:17Yaron Minsky "Make illegal state unrepresentable"
  15. 25:48Can't we adopt FP style in C#/Java?
  16. 28:57Alan Kay on objects
  17. 30:30Classic OOP vs real world
  18. 32:16Actor model as OO done right
  19. 33:44Impact of FP on feature development cycle
  20. 35:54What main advantage did we gain with FP?
  21. 36:54Outro
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.