Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Build Higher, RailsConf 2014 Keynote

Build Higher, RailsConf 2014 Keynote

428167a3ec72235ba971162924492609?s=128

Yehuda Katz

April 23, 2014
Tweet

Transcript

  1. BUILD HIGHER RailsConf 2014 Yehuda Katz @wycats Co-founder Tilde Inc

  2. 10 Years!

  3. None
  4. "CONVENTION OVER CONFIGURATION"

  5. PARADOX OF CHOICE

  6. People like choices a lot more than they like having

    to choose. DHH Basecamp
  7. None
  8. EGO DEPLETION

  9. None
  10. None
  11. None
  12. None
  13. !

  14. COGNITIVE DEPLETION

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

    "Ego Depletion" "Decision Fatigue" heated discussions
  16. SOLUTION: PSYCHOLOGICAL HACKS

  17. None
  18. DEFAULTS

  19. None
  20. None
  21. None
  22. None
  23. None
  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.”
  25. "This is a toolset for building the framework most suited

    to your application development"
  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
  27. None
  28. "THE LAW OF LEAKY ABSTRACTIONS"

  29. "THE LAW OF LEAKY ABSTRACTIONS"

  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
  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
  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
  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
  34. SHARED SOLUTIONS

  35. PROGRESS

  36. None
  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
  38. None
  39. START ON THE 400TH FLOOR

  40. Shared Solution Area of Experimentation

  41. CONVENTION OVER CONFIGURATION

  42. None
  43. None
  44. RAILS IS NOT THE ONLY WAY TO SHARE

  45. Resque ? ? Sidekiq DelayedJob ? ? ? ? ?

    ??? ?
  46. Q Promises/A+ DOM Promises RSVP Sparrow Q.async async function ?

    ??? Task.js
  47. None
  48. None