Building Memory Palaces From Ontological Slime

Software is complex and made from slime.

It is complex both in the everyday sense, and in the more technical sense used by complexity science. It is slime in that software is continually forced to engage with real world systems very unlike the laws of highschool physics, systems where rules are very local and contingent. William Wimsatt calls this "ontological slime".

This complexity is why agile software development and design are effective, including the usefulness of human feedback and of reducing localised complexity in code. We also have an agile idea, from Peter Naur, that a large part of programming is building and improving a model of the system in the programmer’s head. What does that imply about the worldview of an effective programmer? Because software is a complex system, a great developer needs survival techniques for navigating and building beautiful machines out of causal thickets and ontological slime.

 
1 favorite thumb_down thumb_up 3 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/Structure of the Talk

  1. 00-15 min Intro and Background
    1. Software Is Complex, Has meaning determined by use
    2. Programming is
      1. Engineering in computational materials - Feathers / Ainsworth
      2. Theory building - it happens mostly in your head, in dialogue/game with code as artifact
    3. This tells us something about the world … Or at least the worldview we need for programming
    4. Agile and pragmatic philosophy
  2. 15-30min Software as complex system - Ladyman and Crutchfield’s 8 criteria for a complex system (main place to cut down if needed)
  3. 30-45min Slime and Causal Thickets
    1. William C. Wimsatt - Re-engineering Philosophy for Limited Beings
      1. Some physical regularities, like gravity, seem to extend throughout the universe; others may be more local
      2. causal thickets, “ontological primal slime”
    2. The everyday work of a programmer is building theories out of ontological slime: Wimsatt + Naur
      1. Hospital example - intersecting complex domains
    3. Refactoring - when common structural elements in code are found across these local pockets of understanding, complexity radically reduces
      1. Parnas / Feathers
    4. Software development is construction from both planes of regularity and vast quantities of refined ontological slime

Learning Outcome

Lightning strike of inspiration into the very nature of software. Skills gained: causal thicket identification and ontological slime gardening. A good way to survive being lost in a forest of thorns is to realise you are in one.

Target Audience

Developers, Managers, Testers, Designers, Lost Philosophers

Prerequisites for Attendees

Development experience and some patience with a handful of colourful and useful jargon from philosophy of science.

schedule Submitted 6 months ago

Public Feedback

comment Suggest improvements to the Speaker
  • Jeremy Kriegel
    By Jeremy Kriegel  ~  5 months ago
    reply Reply

    Thanks for submitting! This sounds fascinating! However, I think it may be the wrong track. Design Innovation is focused mostly on product and UX. Perhaps another track would be better suited?

    • Adam Burke
      By Adam Burke  ~  5 months ago
      reply Reply

      Looks like updating the track in confengine counts as a new submission, and I am out of submission points. If the evaluation process has not finished, perhaps a kind admin could update it. (I note that the agenda seems pretty settled at this point, so fair enough if the process has already closed.)

    • Adam Burke
      By Adam Burke  ~  5 months ago
      reply Reply

      Thanks Jeremy - sorry for the slow reply.

      I take your point that it is not a great fit with a UX and product design track.

      I also see it applying to Continuous Delivery and DevOps.

       


  • Liked Vered Netzer
    keyboard_arrow_down

    Vered Netzer - agile Leadership - why the army is the most agile organisation I've ever been in

    Vered Netzer
    Vered Netzer
    Transformation Leader
    Thoughtworks
    schedule 6 months ago
    Sold Out!
    20 Mins
    Talk
    Executive

    It is time to talk about ‘agile Leadership’.

    Reflecting on 7 years of experience in the Israeli army I’ll be sharing stories and insights about how the army REALLY operates.

    The army is not as ‘Command & Control’ as people commonly expects – it is much more empowering and agile than you’d think.

    At the army, I’ve learnt the true meaning of cross functional teams, the importance of reflection, feedback, creative problem solving, trust, teamwork, conflict resolution, resilience & responding to change.

    This talk will be intertwined with army (and civilian) war stories & tips for leaders in an agile world. This talk aims to inspire a new wave of Agile Leaders, through sharing examples of effective leadership, it draws on real, lived experiences and concepts (directly from the ‘horse mouth’) as well as useful takeaways that attendees can take back and apply to their work.