~/talk

Edge-Free Programming

Talkat Build Stuff 2016 · 2016-11-16..11-18· [software-architecture]
slides:none on file

Argues that many bugs vanish when error handling is moved to the outer layer and the core runs straight‑line; demonstrates with a guitar‑tablature converter written in Ruby that uses ARGF trick to avoid missing‑file checks, a transpose + arithmetic‑encoding column builder, a validation pipeline that either returns errors or data, and a saturate cap at 99 frets. Covers null‑object, option/monad patterns and swapping requirements (shuffle by shuffling the list) to eliminate conditionality and simplify code.

AI-written summary · about

  1. 0:00Introduction to edge-free programming
  2. 2:06Designing systems to throw off information
  3. 3:53What is an edge in software
  4. 5:38Converting text to guitar tablature
  5. 8:03Writing straight-line code without conditionals
  6. 10:51Removing error checks with domain extension
  7. 12:18Domain extension as a design tool
  8. 14:27Validating input at the edges
  9. 16:10Using saturation to handle extreme values
  10. 17:56Protective shell around trusted core
  11. 19:46Error handling mechanisms compared
  12. 21:10Exceptions and IO operations
  13. 23:40Null object pattern explained
  14. 26:47The problem with null checks
  15. 28:54Removing conditionality with tunneling
  16. 29:56Monadic error handling in Ruby
  17. 30:38Naive shuffle implementation flaws
  18. 32:41Reframing requirements to reduce complexity
  19. 34:49Simplicity and long-term durability
  20. 35:32Q&A on edge-free programming
~/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.