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.
1 of 13

Accu2014 Imagination in Software Development

0

Share

Download to read offline

Slides from a workshop exploring the role of imagination in software development

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Accu2014 Imagination in Software Development

  1. 1. Charles Tolman Imagination in Software Development © Charles Tolman 2014
  2. 2. Structure • Why Imagination? • Historical Philosophical Background • Relation to Software Development • Brain Hemisphere Function • Exercises • Discussion © Charles Tolman 2014
  3. 3. Why? • Need a better answer to the question: How to improve judgement? • Continuing surprise at the difference between programmers. • Need to balance prevailing primary focus on process… results… money. Frustration with ‘disconnect’ between developers & managers. Glass 2002 “Facts & Fallacies of Software Engineering” Fact 13. p39. • Naur’s Theory Building view - importance to maintenance & development. • Wanting to increase awareness about internal thought processes. © Charles Tolman 2014 Why look at Imagination?
  4. 4. Historical Background • Thirty Years War 1618 – 1648 Catholics vs Protestants. Subjectivity of religious faith. • Descartes 1596 – 1650 I Think Therefore I Am. The quest for certainty. The attempt to eradicate subjectivity. • Goethe 1749 – 1832 The need for a Delicate Empiricism during observation. The importance of Exact Sensorial Imagination - not ungrounded fantasy. An Educated subjectivity. • The Phenomenologists of the 20th Century Husserl, Heidegger, Wittgenstein, Gadamer A sea change in looking at how we know anything. © Charles Tolman 2014 , Descartes & GoetheWar
  5. 5. Software Development • SW dev marks the transition from EXTERNAL to INTERNAL problem solving. It is a significant shift that has largely gone unnoticed. • We will not get far keeping to a purely outward results-oriented approach. cf Alexander’s ‘Mirror of the Self’ test: “…which of the two objects seems like a better picture of all of you, the whole of you: a picture which shows you as you are, with all your hopes, fears, weaknesses, glory and absurdity, and which – as far as possible – includes everything that you could ever hope to be. In other words, which comes closer to being a true picture of you in all your weakness and humanity;…” Nature of Order: Book1: p317. • Naur’s ‘Theory Building’ view of SW dev. Naur, 1985 “Programming as Theory Building” The need to keep the ‘Theory’ alive in a team of programmers. • Jack Reeves on ‘Code as Design’ – the need to see both the parts & the whole. 1992 http://www.developerdotstar.com/mag/articles/reeves_design.html • SW quality depends upon the quality of our internal problem solving process. We need to develop self-awareness about these processes. © Charles Tolman 2014 The Inner Dimension
  6. 6. Brain Function • Primary resource is “The Master & His Emissary’ by Iain McGilchrist. • Right Hemisphere [RH] deals with the Immediacy of Lived Experience. • Left Hemisphere [LH] unpacks/abstracts experience. • RH presents lived experience to the LH. LH abstracts & ‘unpacks experience’. This is reintegrated with the experience. To generate knowledge. • Imagination comes into being in the interaction between the hemispheres. Split-brain patients have problems with dreaming, imagination, creativity. • But explicit cognition is dependent upon the LH. • Trying to understand cognition using analytic techniques is difficult. • But by using an experiential approach we can try… [Be aware there is controversy about brain hemisphere characterisations] © Charles Tolman 2014 The Master & His Emissary
  7. 7. The Exercises • Listening to a short story excerpt. “The Dark Room” by Rachel Sieffert. • A minute of individual reflection followed by discussion in small groups (5 mins). • A film of the same excerpt. “Lore” by Robin Mukherjee. Director Cate Shortland. • Listening to the story excerpt again. • A minute of individual reflection followed by discussion in small groups (5 mins). • Plenum • Design Exercise - individually. • Discussion in small groups (5 mins). • Plenum. © Charles Tolman 2014 Story : Film : Story : Design
  8. 8. The Exercises • Think about the need to cause updates of a static image display to happen while the user is adjusting an image parameter such as a filter setting. • Input device can be a pen & tablet or mouse. Output device is any display device. • It takes a noticeable amount of time to process the image – say 200ms. • The user can change the control parameters faster than the process time – say 20ms. • Focus on the basic architectural issues that are needed. • How do you ensure: i. The image gets updated while the control parameters are changing. ii. Once the control parameters have stopped updating – the final image must show the correct result to match the final values of the parameters. © Charles Tolman 2014 Design
  9. 9. Concluding Thoughts • Being a good programmer requires self-development and part of this is developing a controlled imagination. • The picture of the inability of the ‘master’ to be a teacher is a fallacy. • Our job is about being able to map the unknown and to help our clients do so as well. • We need both the abstract left brain thinking as well as gestalt right brain thinking. • Although this is a ‘soft’ subject compared to the groundedness of C++14 In reality we need to develop BOTH aspects TOGETHER. © Charles Tolman 2014
  10. 10. Useful References • ‘The Master and His Emissary’ by Iain McGilchrist. • ‘Taking Appearance Seriously’ by Henri Bortoft. Probably the best introduction to Goethe’s method and Phenomenology and a very good historical overview of the pertinent philosophy. • ‘The Nature of Order’ by Christopher Alexander. A lot to read but a master work giving insight into Alexander’s world-view. © Charles Tolman 2014
  11. 11. Flipchart Notes from Workshop on 12th April 2014 • STORY Vivid images – more vivid hearing story than reading it. 3 processes: Visual Picturing; Emotional; Logical Probing. Sense of being in the characters and in the narrative. Some people filtering images because of dislike of descriptive text. Focus on the feelings. Environment is important – image of book cover from slides affected internal images. Certain motifs – i.e. getting home – carry more emotional weight. • FILM Weaker because more concrete. Better than listening to a description for those that dislike descriptive text. More manipulative of the emotions – More emotion give by the film. Logical process happening comparing to previous experience of listening to the story. © Charles Tolman 2014
  12. 12. Flipchart Notes from Workshop on 12th April 2014 • DESIGN Past experience affects ideas. Working from analogous ideas. Explicit expression (writing down) needed when performing analysis. Ideas experienced as a story, but sequentially instead of in parallel as when listening to a story. Probing the design needs it made explicit on paper. A process of initial analysis followed by abstracting the core ideas. Wanting to push back and question the requirements. Can some of them be changed? • PARTICIPANT FEEDBACK Be wary of simplistic brain hemisphere characterisations. • Many thanks to all who participated. © Charles Tolman 2014
  13. 13. Thank you Blog charlestolman.com Email ct@acm.org © Charles Tolman 2014

×