Programming the Future

Programming the Future

Given at JRubyConf Europe, Distill, code.talks and PolyConf, all in 2014.

3db71281264f6125e764d9f3788301e0?s=128

Josep M. Bach (Txus)

August 01, 2014
Tweet

Transcript

  1. 2037

  2. None
  3. 2064

  4. None
  5. None
  6. None
  7. 1% 18% 82% Go JavaScript Bash

  8. None
  9. PROGRAMMING THE FUTURE

  10. TXUS JOSEP M. BACH

  11. PROGRAMMING IS FOR

  12. PROGRAMMING IS FOR HUMANS

  13. TEXT-BASED SYSTEMS https://www.flickr.com/photos/xenomurphy/8584275508

  14. “WHY IS THE CANONICAL REPRESENTATION OF CODE A STRING?” Paul

    Phillips @ Pacific Northwest Scala Conference https:/ /www.youtube.com/watch?v=TS1lpKBMkgg
  15. MENTAL TRANSLATION COST

  16. DIRECT PROGRAMMING

  17. FLAT REPRESENTATION OF CODE

  18. None
  19. LIVE REPRESENTATION

  20. SLOW FEEDBACK LOOP

  21. IMMEDIATE FEEDBACK LOOP

  22. INTERACTIVITY

  23. INTUITIVE LEARNING https://www.flickr.com/photos/drurydrama/2063103223/

  24. MOMENTUM https://www.flickr.com/photos/aero_icarus/4591608703

  25. VISUAL METAPHORS

  26. http:/ /worrydream.com/MediaForThinkingTheUnthinkable/

  27. “PROGRAMMING LANGUAGES ARE THE WAY PROGRAMMERS THINK ABOUT WRITING PROGRAMS”

    Barbara Liskov
  28. TRANSFORMATION PROGRAMMING AS: DATA

  29. UNOBSERVABLE INDIRECT INCIDENTALLY COMPLEX

  30. VISUAL INTERACTIVE SIMPLE

  31. 1960s

  32. DATAFLOW PROGRAMMING

  33. DECLARATIVE

  34. CONCURRENT BY DEFAULT

  35. ADD

  36. ADD 40

  37. ADD 40 2 42

  38. DATAFLOW + FUNCTIONAL

  39. UNITS ARE THE ONLY PRIMITIVE (GENERALLY) PURE STATICALLY TYPED WIRES

  40. COMPOSITION?

  41. ADD DOUBLE INT INT INT INT INT 2 | 1

    1 | 1
  42. ADD THEN DOUBLE INT INT INT 2 | 1

  43. REUSABILITY?

  44. FUNCTOR UNITS

  45. ADD THEN DOUBLE INT INT INT FMAP MAYBE INT MAYBE

    INT MAYBE INT
  46. WHY ARE WE NOT THERE YET?

  47. “THE PRESENT IS THE LEAST IMPORTANT TIME WE LIVE IN”

    Alan Kay
  48. “THE PRESENT IS ALWAYS A SUBOPTIMAL OUTCOME OF THE PAST”

    Me
  49. TECHNICAL NOVELTY VS
 WIDE ADOPTION

  50. “WE SHOULDN’T HAVE MADE THE WHOLE GO EXPERIENCE SO GOOD,

    SO COMFORTABLE. WHAT WE SHOULD HAVE DONE IS LET THE WORLD SUFFER WITH C UNTIL THE PAIN WAS SO UNBEARABLE THAT PROGRAMMERS WOULD HAVE COME UP WITH SOMETHING RADICALLY BETTER. BE WARY OF LOCAL MAXIMA.” Shyu Shihong, Google CEO @ Google IO 2061
  51. “I CURSE THE DAY WHEN SOFTWARE TURNED ITS BACK ON

    COMPUTER SCIENCE, BECAUSE FROM THAT DAY WE FOCUSED ON JUST FINDING BETTER ANSWERS, INSTEAD OF ASKING BETTER QUESTIONS.” Leng Bohai, Renaissance Project Lead
  52. THANK YOU
 FOR MAKING HISTORY. txustice txus