Possible technology futures
Like everyone, I’ve been talking with friends and colleagues about what we might want to do differently in a post-COVID-19 world. There’s certainly a recognition that people are open to changes in how some key technology themes play out — potentially moving away from the course that we’d convinced ourselves we were unalterably on, before ‘all this’ happened. But what might possible technology alternatives look like? And how might we get there?
As an ex Information Architect and unashamed dataphile, this line of thinking drew me again to the work of Sapient Chief Experience Officer John Maeda (particularly his most recent book “How to Speak Machine”… me being a Sapient alum makes me a double-fan), Richard Saul Wurman (who’s book Information Architects was my first purchase on the subject more then 20 years ago) and Bret Victor — in particular his amusing, poignant and enlightening 2013 Dropbox conference presentation “The Future of Programming”.
Victor’s presentation, although focussing on the topic of programming methods and how they might have developed given different circumstances over the last 40 years, is really proposing a greater thesis — that the future is not certain, that it can be better than it is now, and that the way to keep moving forwards is to explore like crazy, embracing the fact that we actually have no idea what we’re doing (Hagakure-like: “in the highest level a man has the look of knowing nothing”).
The early days of programming were (as we see in Victor’s presentation) all about exploring like crazy… about finding and building new paradigms. Overviews of four significantly more intuitive (though sadly lost through the passage of time) possible programming methods are presented to us:
- ‘Drawing’ code with real-time feedback/system responsiveness (versus ‘writing’ pictures with code like we do today)
- Writing code to enable humans to give machines a goal and then have the machines figure it out, rather than humans providing atomic-level instructions to a ‘dumb’ automaton (“how silly it would be to create a static ‘api’ connection between two computers… what if one of the computers changes to use a different language? How would the machines find new ways to remain connected and transfer data?”)
- Categorising and presenting code on a screen in a truly non-linear, structured and hierarchical way to enable ease of access and repeatable use, rather than having a long scroll of language, and
- Concurrent processing of lots of small tasks, to then bring results together to solve a meta-task, rather than suffering from ‘thread and lock’ processing bottlenecks of our own making.
Watch this great presentation (and hear Victor’s challenge to us all) in full, here:
In a small way this reminds me of the mid/late nineties internet-era (yes, I’ve been working on this stuff in one way or another since then). The term ‘Information Architect’ hadn’t yet gained traction; most of us were still called Library Scientists (the Dewey Decimal system being the most commonly understood, navigable virtual information structure in existence). Web-native navigation paradigms were still a way from gravitating around any one approach, with several ‘possible futures’ still battling for bragging rights. One elegant competitor I was lucky enough to see from right back at it’s inception was the Navihedron, designed by Roy Stringer at his super-early web agency Amaze (in partnership with Liverpool’s John Moores university in the UK). For a good overview of the now extremely hard-to-find Navihedron, take a look at this twenty-year old Forbes Article.
The beauty of the Navihedron was that it was able to articulate visually the relatedness of each section of content with others through physical proximity on the multi-sided, 3-dimensional translucent hovering shape. It enabled the user to navigate ‘across’ information levels to adjacent sections (‘cognitive hops’, you might say) by click-dragging the Navihedron around on any of it’s own axes, then clicking on the desired corner/node— conceptually like hyper-text or the path you’d navigate through information using hyper-text’s predecessor, Index Cards. Upon clicking on the new link, the main content page would refresh, and all other nodes in the Navihedron would update to contextualise anew your location/position on the shape (a crumb-trail also lived above the Navihedron, continually updating on each new node click to provide a constant short-term history of your route, almost like your browser history does today).
People like Roy Stringer and the tech leaders called out in Bret Victor’s presentation above had the humility to say, ‘Compared to what’s possible, what we’re collectively satisfied with today isn’t good enough… we need to find better ways’. This mindset and willingness to explore, at a time when society’s openness to new ideas was high, enabled them to create those possible futures.
Perhaps now, particularly with regards to game-changing technologies like 5G and autonomous machines, you could say that society’s current openness to new ideas has presented us with an opportunity to resist our collective urge to passively stroll into a future of someone else’s making. I believe that we should grasp it.