October 23, 2020 by Marco Cecconi
My name is Orf Quarenghi. I "do" two things: technology and storytelling.
I like technology in itself. LEGO Technics. WWII fighter planes. I love the Walschaerts valve gear – I resent identifying technology with luxury gadgets. In the 80's I fell in love with BASIC and home computers (I belonged to the Sinclair tribe).
The other things I love are stories. Everyone likes a good movie, a good book. For me, storytelling and technology are things that go together. To put it simply, LEGO star-ships aren't made to collect dust on a shelf, but to explore strange new worlds. To seek out new life and new civilizations. To boldly go where no man has gone before!
LEGO and programming languages have that in common.
Back then, interactive storytelling was relatively trivial: fighting arrays of green UFOs inching toward Earth, wandering in a maze eating pills, avoiding pastel-colored ghosts…
Yet, coding was a storytelling tool that was clear to me, and I experimented a lot.
After ten years, I found myself sadly developing ugly database applications, and I have to admit: accounting is lousier storytelling than Pac Man.
Then, I encountered the Studio Azzurro collective: three crazy film-makers willing to add interactivity to their stuff. Their Holy Grail was "Non-Linear storytelling," i.e., using a set of video clips like LEGO bricks to put together each time a different story based on interactive inputs – in the era of VHS tapes, that was Science Fiction.
Doing that meant broadcast-grade video hardware, industrial automation sensor systems, ugly SDKs, and a lot of C/C++ code to be written.
Putting it all together with Borland's Turbo C++ 2.0 was challenging.
But boys! It was good storytelling!
I've been on many projects like that, part of heterogeneous teams where I usually was the only coder—directors, dancers, architects… each of them speaking (only!) their own language.
Communication in this kind of environment isn't easy. Mostly the "You don't see my point!" issue. I decided not to be that kind of individual. We were building great stories together, and even if the properly said artists could have thought differently, I was among the authors, and I wanted it to work and be great. So, since it was simply too difficult to explain "coding stuff" to artists, I decided to meddle with the artist's stuff myself.
Each time someone asked something technically impossible, I found (at least, looked for) a creative alternative and make a counter-proposal, giving back my interlocutor a new tool for his tool-set (language).
I enjoyed working this way for a while. Still, I quickly grew bored with self-incensed video-makers: they tend to stay in a comfort zone where all the creativity is in the video-making. Simultaneously, the interaction model is kept as simple as possible – usually something like
IF x THEN PlayY().
The medium is the message, said Marshall McLuhan. The interaction model is part of the story, not a fancy tool to press the PLAY button on a video player. And: implementing interaction models is a matter of coding, integrating, and building, exactly my cup of tea. So I took that direction, concentrating on new interaction models and packaging them as "containers of stories" – the point is you don't sell an interactive experience because it's cool. You sell it if it helps your customers to tell their story.
My first proof of concept with the container of stories was protoTypo. I had the idea to hack an old paint-gun into a pointing device and wanted to use it for a demo of some sort. A friend prompted me to go for digital graffiti stuff, but I didn’t want to implement such a literal metaphor. I told him I wanted something more poetical, like, what if the paint-gun sprays words? That was it.
The technology was good and I used it in protoTree, which wasn’t a container of stories aimed to commercial uses, but an interactive tribute to my favorite painter, Paul Klee.
Another container of stories was the sensible ambient, a place made of video-projections where the visitor walks on a carpet of random letters, and doing so unveils a story. It really was a container: implementing another story was like opening a new document in an editor (Interpreting the World, Beyond, IGPDecaux Live!).
To build interactive experiences remains teamwork even if I tend to do all the coding as a one-man-band. The medium is part of the message: you still need content and someone to provide it.
I work mostly from home. The COVID19 pandemic brought that to the extreme consequences, and now I'm back to the bedroom-coding paradigm. This becomes cumbersome when I have to work with many screens, sensor systems, and broadcast-grade media-servers – add a wife, two sons, and four cats to complete the picture.
Still, part of the work needs to be done in place. A reliable internet connection (plus a reliable human proxy on-site!) allows me to set-up and fine-tune installations from home, but only on minor projects. The big ones still require me to be present. If the interaction model is innovative, I need to experience it on-site to tweak it, and I want to be there to enjoy it!
Eventually, the real prize is the feeling you get when you finally say: it works!
In both senses. Technology (WOW! Look, no more BSODs!) and storytelling (when electricians or toddlers try the thing and react with O-shaped mouths).
All this leaves me in a strange place when I talk to fellows developers.
I've done things you people wouldn't believe – like watching C-beams glitter in the dark near the Tannhäuser Gate.
And I can't do things you fellow developers wouldn't believe… Version control, unit testing, listening to product managers…
Yet I know very well what it is chasing a damn bug in the guts of a complicated project.
At 4:00 AM.
Maybe in my bedroom with the rest so the family snoring. Perhaps aboard a ship. Or underground in a coal mine (it happened!).
In the end, I like being the strangest guy even among strange guys – you know they consider us the strange guys, right?
Hi, I'm Marco Cecconi. I am the founder of Intelligent Hack, developer, hacker, blogger, conference lecturer. Bio: ex Stack Overflow core team, ex Toptal EM.Read more
February 03, 2021 by Marco Cecconi
A lesson in building communities by Stack Overflow's most prominent community manager emeritus, Shog9Read more
December 02, 2020 by Marco Cecconi
Some lessons learned over the past 8 years of remote work in some of the best remote companies on the planetRead more
November 25, 2020 by Marco Cecconi
Our newest open source initiative, intelligent cache, is available for useRead more
November 19, 2020 by Marco Cecconi
In this post, Salvatore Sanfilippo puts together a list of qualities that I believe make the most difference in programmers’ productivity.Read more
Software engineers go crazy for the most ridiculous things. We like to think that we’re hyper-rational, but when we have to choose a technology, we end up in a kind of frenzyRead more…