~/talk

Go Fully Functional and Take Your Legacy Code with You!

Talkat LambdaConf 2019 · 2019-06-05..06-07· [frontend-architecture]
links:none on file
slides:none on file

Promised outcome: a mechanical four‑step migration: plan test build refactor applied to a concrete example (a qualification pipeline that reads CSVs, computes scores with coefficients, and indexes into Elasticsearch). Impure functions become effect types: wrap impure code in IO or use Option/Either for partials/errors, convert eager Future via IO, and isolate blocking onto thread pools (or use ZIO’s blocking). Regression protection uses golden master regression tests. Tooling: Scala + cats IO, Monix or ZIO, test frameworks and IDE refactor support.

AI-written summary · about

  1. 0:00Introduction
  2. 0:47Who am I
  3. 1:20Agenda
  4. 2:24Functional Programming
  5. 3:19Function Signature
  6. 4:20Scala
  7. 5:13Java
  8. 6:33Reusability
  9. 7:12Hurdles
  10. 8:58Example
  11. 10:16Domain Overview
  12. 11:15Migration Method
  13. 12:31Tools
  14. 13:22Planification
  15. 14:37Legacy Project
  16. 15:16Executive Architecture
  17. 20:07Pipeline
  18. 21:50Regression Test
  19. 23:28Build in the Built
  20. 24:22Qualification
  21. 25:35TDD
  22. 26:48Modify Existing Code
  23. 28:29Partial Functions
  24. 29:15Mana
  25. 29:32Handling Errors
  26. 30:30Handling Side Effects
  27. 31:13Other Implementations
  28. 32:02Handling impure code
  29. 33:00Code that cannot be changed
  30. 33:35Interfacing problem
  31. 34:10Future
  32. 35:40Synchronous Call
  33. 36:27Blocking Call
  34. 36:57Handling Blocking Calls
  35. 40:33Synchronous Calls
  36. 41:04Using Future
  37. 42:01Callbacks
  38. 43:55Services
  39. 46:50Why are frameworks a problem
  40. 47:22Generate the future
  41. 48:12Go beyond
  42. 49:08More advanced tools
  43. 51:05Conclusion
~/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.