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

RubyConf Philippines 2017: Magenta is a Lie

RubyConf Philippines 2017: Magenta is a Lie

5c2b452f6eea4a6d84c105ebd971d2a4?s=128

Konstantin Haase

March 17, 2017
Tweet

Transcript

  1. None
  2. None
  3. None
  4. None
  5. None
  6. (it’s a lie)

  7. Abstractions

  8. “Developers (sometimes) need to play with illusions” Yukihiro “Matz” Matsumoto

  9. None
  10. “Anything that is in the world when you’re born is

    normal and ordinary and is just a natural part of the way the world works. Anything that's invented between when you’re fifteen and thirty-five is new and exciting and revolutionary and you can probably get a career in it. Anything invented after you're thirty-five is against the natural order of things” –Douglas Adams
  11. Computer Science

  12. Colour Perception

  13. None
  14. Conclusion spoiler alert

  15. Abstraction happens in our minds

  16. Abstractions shape how we perceive things

  17. Changing abstractions is a basic principle of innovation and progress

  18. Abstraction is the basis of Computer Science

  19. Abstraction is the basis of Computer Science

  20. None
  21. None
  22. None
  23. None
  24. None
  25. None
  26. None
  27. Trichromacy

  28. None
  29. None
  30. None
  31. None
  32. Patterns and Algorithms

  33. None
  34. None
  35. None
  36. None
  37. None
  38. None
  39. None
  40. None
  41. None
  42. None
  43. ?

  44. ?

  45. None
  46. None
  47. Is magenta real?

  48. # FF00FF

  49. None
  50. None
  51. Data Abstraction

  52. None
  53. “Dataless Programming” RM Balzer - 1967

  54. None
  55. None
  56. Space

  57. None
  58. None
  59. None
  60. Wait, what?

  61. Are we still talking about abstraction?

  62. None
  63. None
  64. None
  65. None
  66. None
  67. # FF00FF

  68. Control Abstraction

  69. Subroutines

  70. “Go To Statement Considered Harmful” Edsger Dijkstra, 1968

  71. “Protection in Programming Languages" James H. Morris Jr., 1973

  72. None
  73. You should be able to reason about modules in isolation

  74. “Global Variables Considered Harmful” W.A. Wulf, M. Shaw, 1973

  75. Tetrachromacy

  76. None
  77. None
  78. None
  79. The dimensionality of color vision in carriers of anomalous trichromacy

    Institute of Neuroscience, Newcastle University, Newcastle upon Tyne, UK Gabriele Jordan Departments of Medicine and Genome Sciences, University of Washington, Seattle, USA Samir S. Deeb Department of Experimental Psychology, University of Cambridge, Cambridge, UK Jenny M. Bosten Department of Experimental Psychology, University of Cambridge, Cambridge, UK J. D. Mollon Some 12% of women are carriers of the mild, X-linked forms of color vision deficiencies called “anomalous trichromacy.” Owing to random X chromosome inactivation, their retinae must contain four classes of cone rather than the normal three; and it has previously been speculated that these female carriers might be tetrachromatic, capable of discriminating spectral stimuli that are indistinguishable to the normal trichromat. However, the existing evidence is sparse and inconclusive. Here, we address the question using (a) a forced-choice version of the Rayleigh test, (b) a test using multidimensional scaling to reveal directly the dimensionality of the participants’ color space, and (c) molecular genetic analyses to estimate the X-linked cone peak sensitivities of a selected sample of strong candidates for tetrachromacy. Our results suggest that most carriers of color anomaly do not exhibit four-dimensional color vision, and so we believe that anomalous trichromacy is unlikely to be maintained by an advantage to the carriers in discriminating colors. However, 1 of 24 obligate carriers of deuteranomaly exhibited tetrachromatic behavior on all our tests; this participant has three well-separated cone photopigments in the long- wave spectral region in addition to her short-wave cone. We assess the likelihood that behavioral tetrachromacy exists in the human population. Keywords: color vision, psychophysics, human, tetrachromacy, anomalous trichromacy Citation: Jordan, G., Deeb, S. S., Bosten, J. M., & Mollon, J. D. (2010). The dimensionality of color vision in carriers of anomalous trichromacy. Journal of Vision, 10(8):12, 1–19, http://www.journalofvision.org/content/10/8/12, doi:10.1167/10.8.12. Journal of Vision (2010) 10(8):12, 1–19 http://www.journalofvision.org/content/10/8/12 1
  80. 2-3% of all women? 12% of all women? 50% of

    all women?
  81. Gene on X chromosome OPN1MW and OPN1MW2

  82. Women could have up to six colour cones

  83. Mostly dysfunctional

  84. a few confirmed cases

  85. Seeing millions of more colours

  86. None
  87. None
  88. Concetta Antico

  89. None
  90. None
  91. None
  92. None
  93. Object Oriented Programming

  94. None
  95. None
  96. None
  97. None
  98. None
  99. None
  100. –Alan Kay “OOP to me means only messaging, local retention

    and protection and hiding of state- process, and extreme late-binding of all things.”
  101. Data Abstraction + Control Abstraction = Object Oriented Programming

  102. Why dysfunctional? (my own unscientific theory)

  103. We don’t see colours with our eyes

  104. We see colours with our brain

  105. Our brain adjusts colours

  106. We don’t see colours we don’t have an abstract concept

    for
  107. None
  108. When we learn to speak, colour perception switches from left

    brain side to right brain side
  109. We make the rules

  110. Some rules enable good programs (For some definition of good.)

  111. Single Responsibility Principle

  112. Liskov Substitution Principle

  113. Law of Demeter

  114. SOLID

  115. Don’t abstract too much, too early

  116. Strong external abstractions allow weak internal abstractions

  117. Distributed Applications

  118. Is magenta a colour?

  119. None
  120. Yes

  121. Inheritance

  122. Type Hierarchy Liskov Substitution Principle

  123. Implementation Sharing

  124. Mixins

  125. Composition

  126. Duck Typing

  127. Are we doing it right?

  128. Classes ≠ OOP

  129. Colour and Abstraction

  130. None
  131. None
  132. Himba Tribe (Namibia)

  133. None
  134. zuzu: dark shades of blue, red, green and purple vapa:

    white, some shades of yellow buru: some shades of green and blue dambu: some shades of green, red and brown
  135. None
  136. None
  137. Abstractions and Security

  138. Most attacks rely on switching up or down abstraction levels

  139. None
  140. None
  141. None
  142. None
  143. Abstraction

  144. Business Logic only exists in our minds

  145. Object Oriented Programming only exists in our minds

  146. Colours only exist in our minds

  147. UI elements only exist in our minds

  148. Countries only exist in our minds

  149. Conclusion

  150. Abstraction happens in our minds

  151. All abstraction

  152. Abstractions shape how we perceive things

  153. Changing abstractions is a basic principle of innovation and progress

  154. Thank you. @konstantinhaase @rkh_popcorn me@rkh.im