Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Programmeren, talen en het begrijpen van de wereld

485 views

Published on

Programmeren, talen en het begrijpen van de wereld
door Herman Peeren
presentatie op 13 november 2015
Permanent Beta Dag #7 Rotterdam
http://www.meetup.com/PermanentBeta/events/222345799/
http://pb7.apitecture.nl

Bestaat Nederland eigenlijk wel? En God? Waarom betalen we geld aan Griekenland? Wat is Kunst? Dit zijn een aantal vragen die in deze presentatie ter sprake komen.
Het programmeren van een computer is veel meer dan alleen het inkloppen van een reeks instructies. Als we software bouwen, dan bouwen we een model van een stukje wereld (of van een nieuwe wereld). Om dat te doen moeten we iets begrijpen van die wereld. We gebruiken code als bouwstenen van ons model; de code is een taal waarmee we de wereld beschrijven. Tegelijkertijd is code ook gereedschap waarmee we de wereld analyseren, in hapklare brokken snijden.
De taal waarmee we programmeren is niet alleen de gebruikte programmeertaal, maar ook de ideeën die daarbij gebruikt worden. Een andere taal, in die brede zin van het woord, is als een ander sjabloon dat je over de werkelijkheid heen legt: je ziet de wereld op een andere manier, je interpreteert dingen anders. Dat kan heel spannend zijn, vooral als je inzichten daardoor veranderen. Durf jij dat aan?
Het is lastig om het verschil tussen kleuren uit te leggen aan iemand die z'n hele leven blind is geweest. In het praten over kleuren gebruik je al gauw andere woorden die iets met zien te maken hebben. Begrippen overbrengen die we niet zelf uit eigen ervaring kennen is moeilijk en al helemaal als de woorden om die begrippen te beschrijven ontbreken in een taal. Het leuke van programmeertalen is, dat je er niet alleen iets in kunt beschrijven, maar het ook bouwstenen zijn. Een begrip wordt zo niet alleen abstract aangeduid, maar je kunt er ook een model mee bouwen om het te demonstreren.
Deze presentatie gaat over taal als middel om onze gedachten te vormen en uiten en in hoeverre dat middel mede van invloed is op het resultaat. Computertalen en ideeën over modelleren in software kunnen bijdragen aan het begrijpen van de wereld om ons heen. Met behulp van dat theoretische gereedschap gaan we een aantal vragen onder de loep nemen, op zoek naar nieuwe inzichten.

Published in: Science
  • Voor de presentatie hadden we het even over het schilderij op de 1e slide: de Toren van Babel. Dit exemplaar is echter niet van Bruegel, maar omstreeks 1595 geschilderd door de uit Vlaanderen afkomstige Marten van Valckenborch (1535-1612). Dit schilderij https://commons.wikimedia.org/wiki/File:Marten_van_Valckenborch_the_Elder_-_The_Tower_of_Babel_-_Google_Art_Project.jpg hangt nu in het SKD-museum in Dresden. Marten van Valckenborch was een tijdgenoot van de Brabander Pieter Bruegel de Oude (1525-1569), die 3x de Toren van Babel schilderde, in ca. 1663. Een kleinere versie daarvan hangt in Museum Boijmans van Beuningen https://commons.wikimedia.org/wiki/File:Bruegel_d._%C3%84.,_Pieter_-_Tower_of_Babel_-_Museum_Boijmans_Van_Beuningen_Rotterdam.jpg en een grotere in Wenen https://commons.wikimedia.org/wiki/File:Pieter_Bruegel_the_Elder_-_The_Tower_of_Babel_%28Vienna%29_-_Google_Art_Project_-_edited.jpg
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Programmeren, talen en het begrijpen van de wereld

  1. 1. Programmeren, talen en het begrijpen van de wereld Herman Peeren november 2015
  2. 2. Sapir–Whorf hypothesis Linguistic relativity: Structure of a language affects the ways in which its respective speakers conceptualize their world. голубой Wilhelm von Humboldt Franz Boas Edward Sapir
  3. 3. Nelleke Verhoeff, Red Cheeks Factory, 2013
  4. 4. Nelleke Verhoeff, Red Cheeks Factory, 2013
  5. 5. Create Read Update Delete
  6. 6. Let’s Create, Read, Update and Delete ... an employee
  7. 7. Create, Read, Update and Delete ... an employee
  8. 8. Create, Read, Update and Delete ... an employee
  9. 9. Create, Read, Update and Delete ... an employee
  10. 10. Create, Read, Update and Delete ... an employee ???
  11. 11. I’d rather Hire or Fire an employee ...
  12. 12. Update
  13. 13. Update
  14. 14. John von Neumann John von Neumann Peter Sellers Werner von Braun Dr. Strangelove
  15. 15. Event Sourcing • you don’t store the state, • but the proces that caused the change
  16. 16. Accounting: same principle • you don’t store the changed balance, • but the journal entries that caused the change
  17. 17. Event Sourcing • you don’t add an item to a collection of jobs, • but you take or quit a job • event: JobTaken / JobQuitted
  18. 18. Event Sourcing • you don’t add an item to a collection of jobs, • but you hire or fire someone • event: EmployeeHired EmployeeFired Emphasis on the action, using words used in the domain, not on the data
  19. 19. Event Store
  20. 20. Event Store Events happened in the past. You cannot change the past.
  21. 21. Event Sourcing • „Die Welt ist die Gesamtheit der Tatsachen, nicht der Dinge.“ Tractatus Logico-philosophicus (1.1), Ludwig Wittgenstein (1889–1951)
  22. 22. Entity Equality is decided by its identity, not by its values never too old to run
  23. 23. Theseus’ship paradox
  24. 24. Theseus’ship paradox
  25. 25. Theseus’ship paradox
  26. 26. Daniel Dennett
  27. 27. Identity
  28. 28. Identity
  29. 29. Identity
  30. 30. Identity You are who you were + the difference since then
  31. 31. Programming languages
  32. 32. Babel-17 SF-novel, with language as weapon to control thoughts (inspired Yukihiro Matsumoto when constructing the Ruby-language) Yukihiro Matsumoto
  33. 33. Not all languages are equal, but some are more inequal than others. • Kenneth E. Iverson (APL): Turing Award Lecture 1979, “Notation as a tool of thought” • Paul Graham (worked on Lisp): Blub paradox (you can know the superiority of a language, but not its inferiority)
  34. 34. Trygve Reenskaug James Coplien (Cope) DCIData - Context - Interaction Trygve-language is now being constructed to better express the ideas of the DCI-paradigm.
  35. 35. A model is not a tree... “A city is not a tree”: Christopher Alexander Some thoughts might possibly not be expressed in some languages.
  36. 36. No escape?
  37. 37. Marcel Duchamp
  38. 38. Damien Hirst
  39. 39. ‘Ik vernietigde de grens van de horizon en stapte uit de wereld der dingen. En de dingen verdwenen als mist.’ Kazimir Malevich
  40. 40. Thank you! herman@yepr.nl hermanpeeren.nl @HermanPeeren November 13, 2015 Credits: The two images about language as prison and language as a rodeo horse are made by Nelleke Verhoeff, www.redcheeksfactory.com Sorry! For this presentation I’ve used all kinds of images I collected from the web during the past months. I didn’t note down the various sources, so I cannot give credit to the owners of the images. I can only thank you all very much for making them available on the internet and I hope I did not violate your rights too much borrowing them. If you own the rights to an image used here, please let me know and I will mention it (or take the image out of these slides if you want to).

×