~/talk

The Data Abstraction Talk

Talkat ACCU 2024 · 2024-04-17..04-20· [software-architecture]
slides:none on file

Argument: code must hide representation and expose a precise API, or accidental leaks and brittle changes follow. Examples: Mars Curiosity uses VxWorks and C99 with enforced guidelines; payment card numbers are not numeric (8–19 digits, Luhn check), so model them as immutable value objects with cached hash and formatting, not plain ints or strings. Languages discussed include C, C++, Python, JavaScript, Go and C#. Concrete habits: make internals private, expose a minimal interface and empirically evolve published interfaces.

AI-written summary · about

  1. 0:00Data abstraction introduction
  2. 1:58Legacy code pain points
  3. 4:07Mars rover software lessons
  4. 10:55Software as illusions
  5. 16:37Abstraction failure in systems
  6. 20:30Software modeling and modularity
  7. 23:59Abstraction as detail removal
  8. 27:50Abstraction bias in development
  9. 31:00Credit card numbers alignment
  10. 37:21Value objects and immutability
  11. 43:24Stack semantic failures
  12. 47:13Separation of concerns
  13. 53:14Encapsulation and PCN refactor
  14. 1:01:21Modularity benefits
  15. 1:08:45Published interfaces
  16. 1:11:54OO and data abstraction history
  17. 1:21:00Abstract data types
  18. 1:27:42Purpose of abstraction
  19. 1:31:54Conclusion
~/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.