There’s a long history of creative tech behind Touchgram.
In my first year of studying engineering, I was also introduced to the world of programming. My fellow engineering student was a member of the deeply-distracting UWA Computer Club. He had benefited from a high-school introduction to programming, rare in the late 70’s. He was an utter language geek. So I learned about BASIC, APL, Forth and Smalltalk all at once. I didn’t get to program in the more exotic languages. But, right from the start, I knew the world of programming included a lot of variety in how to think.
We devoured news of Smalltalk, most from a geekily-famous 1980 BYTE magazine. Even without access to a running Smalltalk, I knew a world existed of programmable tools. I read that important people thought programming should be for more than an elite few.
A more mundane decade of programming business and technical mining applications followed. I learned about accountancy and book-keeping from the inside. In the midst of a chain of tools that calculated how much coal was being dug out of a mine, I first encountered user-configurable tools.
As I moved on to consulting work, often on the Classic MacOS, I wrote more and more enablers. I wrote systems where users could add their own rules. These ranged from a podiatrist, trying to capture his diagnostic thinking, to a builder generating quantities from CAD. A heritage data management system is still running nearly 30 years later, because of this flexibility.
I fell in love with Apple’s HyperCard. Leading a local Mac User Group, I saw non-programmers use HyperCard to solve problems. It lived up to the creative promise of Smalltalk but was far more accessible and thus used by more people.
As well as more conventional consulting, I started marketing developer tools. I developed a suite of C++ frameworks for databases and report writing. That led to an involvement with code-generation. With the US product AppMaker, you could design screens in a visual editor and generate a full Mac app. I fleshed this out with database logic and added Windows cross-generation. That partnership led to a booth at MacWorld Expo in San Franciso, a couple of years running. I met a wider world of software tool-users. I fed my love of enabling people.
Another recurring career theme was page layout and text rendering. I wrote a simplified word processing advertising entry system. Long before my report-writer, I automated page layout for real estate magazines. Whilst designing the report-writer, I studied HTML and the early CSS layout techniques. I still have mental scars from learning the slight differences between Helvetica versions.
Through this meandering career, I became fascinated by touch interfaces. Before we had mice, there was an HP PC with a lattice of infra-red beams that detected you touching the screen. The early Mac acquired mice shaped like a pen. This was before reliable infrared mice — there was a tiny metal ball in the tip and you had to use a mouse pad. It also worked well upside-down as a thumb-sized trackball.
Then came digitising tablets. In 1980’s drafting and mining applications, digitising tablets were vast, expensive devices. The bearded geologists swore over them and squinted at $20,000 vector terminals. In the Mac world, small tablets became a tool any artist could use to enter a sketch. IBM released the CrossPad, with many cool ads in Wired magazine. It combined an ink pen with a tablet underneath paper, capturing the digital version. My cupboard of alternative input devices filled up. Most of them are flat so at least they stack well.
I went through three generations of PalmPilot, two barely-usable Windows tablets and a Nintendo DS before I got my first iPod Touch. Then an iPhone came out that was at least as good a phone as my Nokia, so I jumped on Apple’s slippery slope. I missed my stylus and Palm’s Jot gestural text entry for a few months. I couldn’t draw with the same precision as on the PalmPilot. (Eventually, third party styli like the Adonit Jot Pro would restore that experience on the iPhone.) But, the iPhone was so touchable, if not actually lickable. It gave me a fluid experience I’d never had before. I was conquered by the appeal of the App Store.
I used to dabble with these devices. I spent a couple of days messing around in Forth on the PalmPilot writing an app that played varying tones. Swiping one way varied pitch, another angle controlled duration.
I wanted to write something for my iPhone but it was a world away from my day job of 3D CAD for mining. Mental exhaustion got in the way of creative app design. I had a demanding time programming things like: road geometry, survey data input, and geological data. Then, a major European company bought my employer and started layoffs, as they moved work to India. I was the most recent hire in my team and so discarded in the first round.
There was, finally, time to be really creative.
As recounted in the personal origin story, I decided Touchgram should be a touchable messages app. I saw the web take off because of the flexibility of HTML — I wanted that. Touchgram had to be a platform on which people could build their dreams, not mine.
From the version 1.0 on the App Store, Touchgram has had a View Source option. That’s the HTML Lesson — people will learn from each other if you give them the ability to see how someone did it.
A 2D game engine powered the first prototype of Touchgram that could play back a simple example. That works on the lowest level of Android phones — a $30 phone or tablet you would give a young child.
One mentor advised if possible, get it inside Apple iMessage or Facebook Messenger — that’s an extra billion eyeballs. I took that idea to Social Media Marketing World in 2018 and talked to a lot of non-geeks. The pitch included a couple of other ideas that could build on top of that. People liked it.
So, in May 2018 the great rewrite began. The Touchgram prototype app was rewritten from C++ to Swift, replacing Cocos2D-X with Apple’s SpriteKit game engine. The core of that demo app was then put into an iMessage extension.
Until this point, Touchgram messages were created in test programs — it was very much a demo app. The iMessage version was the first to provide a user interface that allows you to create a message. This is a rich document editor inside about 90% of an iPhone screen. The effort required to design and code this editor was horribly underestimated. Touchgram finally hit the app store in September 2019.
It’s not finished, not even close. But, the technology’s not going to change for a while — it’s just a matter of more code.
The playback engine can play back a lot more than you can create. In v1.2 new gesture types were added, with some rewriting to make getting started a lot easier.
The final part of technology I want to call out as part of the Touchgram journey is Supernova Studio. Building a complex app is a massive amount of work. Adding little touches like animating the collapse of a toolbar would normally be too much for a one-man team. As I have already written about, Supernova Studio let me iterate on visual designs and generate working code.
This is just the origin story. The saga will continue and hopefully with many of your tales of creating with Touchgram.