Build Higher, RailsConf 2014 Keynote

Build Higher, RailsConf 2014 Keynote

428167a3ec72235ba971162924492609?s=128

Yehuda Katz

April 23, 2014
Tweet

Transcript

  1. 3.
  2. 7.
  3. 9.
  4. 10.
  5. 11.
  6. 12.
  7. 13.

    !

  8. 15.

    willpower challenging tasks cognitive dissonance making choices "Paradox of Choice"

    "Ego Depletion" "Decision Fatigue" heated discussions
  9. 17.
  10. 18.
  11. 19.
  12. 20.
  13. 21.
  14. 22.
  15. 23.
  16. 24.

    Most Surprising App on Home Screen: Operator ! “It’s a

    custom-designed, one-of-a-kind bespoke app I had built for my assistant and I to communicate and collaborate through.”
  17. 25.
  18. 26.

    In an ecosystem where overarching, decides-everything-for-you frameworks are commonplace, and

    many libraries require your site to be reorganized to suit their look, feel, and default behavior — we should continue to be a tool that gives you the freedom to design the full experience of your web application
  19. 27.
  20. 30.

    But I'd also argue that virtually all good programming abstractions

    are failed abstractions. I don't think I've ever used one that didn't leak like a sieve. But I think that's an awfully architecture astronaut way of looking at things. Jeff Atwood Discourse
  21. 31.

    Instead, let's ask ourselves a more pragmatic question: ! "Does

    this abstraction make our code at least a little easier to write? To understand? To troubleshoot? Are we better off with this abstraction than we were without it?" Jeff Atwood Discourse
  22. 32.

    It's our job as modern programmers not to abandon abstractions

    due to these deficiencies, but to embrace the useful elements of them, to adapt the working parts and construct ever so slightly less leaky and broken abstractions over time. Jeff Atwood Discourse
  23. 33.

    x86 C Linux x86-64 ARM OSX NT Kernel POSIX Ruby

    Rack Rails x86 C Linux x86-64 ARM OSX POSIX libuv Node Core Windows NT Kernel Windows
  24. 35.
  25. 36.
  26. 37.

    x86 C Linux x86-64 ARM OSX NT Kernel POSIX Ruby

    Rack Rails x86 C Linux x86-64 ARM OSX POSIX libuv Node Core Windows NT Kernel Windows
  27. 38.
  28. 42.
  29. 43.
  30. 47.
  31. 48.