~/talk

Building Extractable Libraries in Rails

Talkat RailsConf 2013 · 2013-04-29..05-02· [ruby-on-rails, developer-experience]
links:none on file
slides:none on file

Practical conventions: treat /lib as a temple — make every lib component extractable into a gem by namespacing and explicit requires; avoid autoloading everything in /lib by wiring requires from an initializer; use configuration to hide credentials via a module-level configuration object so keys live in initializers not constants; isolate domain objects with DCI (roles + contexts) to keep business logic off models. Examples: BMI → tweet pipeline uses Struct/OpenStruct for doubles, background queue for delivery, and is used at Iowa Health; DCI works well for create/update/destroy but not for index views.

AI-written summary · about

  1. 0:00Introduction
  2. 2:04Beautiful Language
  3. 2:17Sense of Love Changes
  4. 2:50Rails conventions
  5. 3:08Freedom from tedious decisions
  6. 3:25Productivity
  7. 3:57Why is this important
  8. 4:23Conventions
  9. 4:56Game Spacing
  10. 5:22Autoload Trap
  11. 5:33Separating Mesh
  12. 6:10Namespace
  13. 6:28Murph typing
  14. 7:08Smurf module
  15. 7:34Avoid autoload trap
  16. 8:23Initializers Directory
  17. 9:28Hide your credentials
  18. 10:09Entry point
  19. 10:33Implementation
  20. 11:57Focus
  21. 13:28Concerns
  22. 14:16DCI
  23. 15:08Role
  24. 16:31Fake class
  25. 16:51Openstruct
  26. 17:28Mock
  27. 18:02Testing
  28. 18:36Context
  29. 20:07Unit Testing
  30. 21:18Beam
  31. 22:19Queue
  32. 22:43Rescue Job
  33. 23:12Twitter Message
  34. 25:02Twitter
  35. 25:21Treat your lib directly
  36. 26:10Avoid configuration nightmares
  37. 26:28Protect domain interactions
~/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.