Building the MacPaint for hardware.
How an old program serves as an influence to the democratization of hardware and a new form of expression. That, and a healthy dose of nostalgia.
Retro-computing is a weird hobby of mine. I collect, rebuild, and like to play with old hardware, particularly 80's micro’s. It’s something my wife, with her allergy to accumulating old junk, has to endure. She has no choice really — it was part of a verbal prenup we made before getting married. Old computers are just part of the package with me —an obvious influence to anyone that’s come across some of the work we produced at Teehan+Lax Labs.
People in this hobby always have a holy grail computer they’re hunting for. It’s usually the one you grew up with — that Commodore 64, Apple II, Tandy, or other machine you wasted countless hours playing games, copying programs from magazines, and writing terrible GOTO loops in BASIC. This wasn’t the case with my holy grail. I was after a computer I never had — a Macintosh SE.
I had limited exposure to a Mac as a kid. There was a single unit at my elementary school, surrounded by a legion of much less appealing Commodore PET’s. When I did get to spend a frustratingly limited amount of time on the machine, it wasn’t to play Dark Castle, or MacTrek. Instead, I was consumed with HyperCard, and MacPaint. It took me decades to finally realize my perception of what was possible on a computer had been completely altered by those two programs.
The development of MacPaint reads like a modern-day monomyth to any young programmer. Its protagonist — Bill Atkinson — crafts 5,804 lines of Pascal code, augmented by another 2,738 lines of assembly language, which compiled into less than .05 megabytes of executable code to produce a seminal program. He follows that up by creating HyperCard. That’s like the coding equivalent of hitting an inside-the-park home run and turning a triple-play in the same game.
Of course the cast is larger than just Bill, with important contributions from Susan Kare, and Andy Hertzfeld, but really — MacPaint is Bill’s baby. There’s a funny answer Steve Jobs gave to a reporters question of how many years it took to write QuickDraw (MacPaint’s underlying graphics-display library):
Jobs figured that one Atkinson year was equal to six ordinary programmer years.
Atkinson describes MacPaint as “the first widely distributed bitmap painting program that let people learn to use a mouse by drawing things”. The program featured ground-breaking paradigms for digital drawing, like cut-copy-paste-undo, a pattern palette, tool-bar, simulated zooming (called fat bits mode), and advanced selection mechanics. It was intended to be a trojan horse for a new interaction model, but turned out to be the match-strike of the desktop publishing revolution.
Near simultaneously as Atkinson created MacPaint, Dan Silva wrote the first version of Deluxe Paint for the 1985 launch of arguably the most creative and capable PC of the 80's — the Commodore Amiga. DPaint (as it was widely known) used the same features as MacPaint but with additional tools that leveraged the Amiga’s unique features like indexed colour, where a pixel’s colour value does not carry any RGB hue information but instead is an index to a colour palette. Say hello to colour cycling.
The superficial similarity between both programs was not by imitation, like [Microsoft] Paint (which was a sheepish clone). Silva had previously worked at Xerox prototyping user interface designs for the Star system — the birth place of the modern GUI and ancestor of both applications. They were siblings, and as a family were hugely influential. Incredibly, DPaint is still being used today by demosceners and pixel artists. That’s staying power.
What makes the history of these applications so special is that the principal programmers were their own audience — artists. Bill is an accomplished nature photographer, and Dan is a very early computer graphics artist who had previously written Prism — an Electronics Arts in-house art tool for game artists. Not surprisingly, DPaint was basically a repackaged version of Prism tailored to the Amiga.
Atkinson and Silva had built the early instruments to an artistic revolution that would realize previously impossible works and create entire industries. I’m not sure the care and detail exhibited in those applications would’ve been possible had they not been effectively written by their intended audience.
Apple and Commodore recognized the transformative nature of these tools. Famously, both tried to commission Andy Warhol to produce some art pieces and showcase the potential of their platforms. Walter Isaacson’s biography of Steve Jobs recounts an event from that time. Andy Warhol, Keith Haring, and a number of other prominent artists were in attendance for Sean Lennon’s ninth birthday party at the Dakota Apartments in NYC. Jobs was also there — with a Macintosh in-tow. It was a gift for Sean. Warhol, after getting a brief demo, tried his hand at MacPaint and turned enthusiastically to Haring:
“Look! Keith! I drew a circle!”
The enthusiasm faded, and Warhol never returned calls from Jobs. Shortly after, Commodore approached him with the Amiga, and subsequently blew his mind. Warhol’s main reservation about the Mac was that it was greyscale — and, well — we’re talking about Andy Warhol after all. Colour was a requirement. The advanced fill algorithms and tooling that Silva had programmed meant Warhol could produce his preferred style easily.
Warhol went on to produce dozens of works on the Amiga, recently recovered by Cory Arcangel and the Carnegie Mellon University Computer Club. The images are relatively primitive in their technical scope, but these were early days.
It makes you wonder, had Warhol not passed away in 1987 how would his art have evolved to the present? In a larger context, the answer is unimportant. What Warhol demonstrated, along with other artists like Keith Haring and Laurence Gartel, was the potential for a new form of expression. And of course, digital publishing tools did change the world. We had a new artistic medium, and these were the early explorers.
Suddenly thousands of artists, creators, and hobbyists had access to the medium of digital publishing. The technical complexity and underpinnings of what they were using had been completely hidden by Atkinson and Silva. All that mattered was the artists idea, which was free to be realized. MacPaint and DPaint were the original abstraction layer for the tedious process of producing digital art.
I was lucky enough to spend three years running Labs at Teehan+Lax. It was certainly a dream job. Week after week, we played on the fringes of interactive tech with no clients, a healthy budget, and the trust of the agency. It was fairly common to be asked “How’d you score that gig?”.
I was responsible for the tone of the experiments, and chose to focus on the relationship between the ethereal digital and the worldly physical. What did it mean to view the world through a digital lens, and vice verse? What happens when we reach across the chasm? Truthfully, it was a chance to explore the deeper meaning of my love affair, for better or worse, with computers. This theme was the result of a mandate Jon Lax and I drafted when the lab was conceived — get good with hardware.
Around the time of the inception of the lab, the Maker Movement, Arduino, and 3D printing were really beginning to grab the attention of the software design community. The idea of connected devices and physical computing were finally feeling accessible. Sure, there was a fair bit of hype, particularly around the possibilities of 3D printing, but it was clear that something perhaps as significant as the introduction of mobile devices was manifesting. It was exciting, new, and we needed to figure out a way to get our feet wet. That was the motivation for Labs.
I’m proud of the work we produced. There were certainly failures, especially in our attempts to productize Labs experiments, but we were lucky enough to attract the right attention and make the whole initiative worthwhile.
One regret is that I never fully achieved my second mandate — involve the entire agency. This proved to be a struggle. There was no shortage of excitement and ideation (a topic I could probably write about at great length), but what we were doing was intimidating and felt like voodoo to much of the staff. I remember countless times when someone would stroll into the lab (we had a physical space with tooling and gear), and instantly walk backwards out the door like Homer disappearing into a bush.
Physical computing was inaccessible for our designers, and the barrier was physics. Sure, we ran hackathons and everybody breadboarded their simple circuits, but the real meaty high-level concepts were just out of reach. Building a gadget could take weeks of education learning pin-outs, communication protocols, and other electronics minutia.
In the summer of 2012, a small group of us from T+L were fortunate enough to attend Eyeo Festival, the sweetheart of creative coding and data art conferences, in Minneapolis. It was our annual chance to share insights, research, and exploration with peers in a variety of industries. The topic of hardware creation, and specifically the idea of democratization, was prevalent that year. Having faced the problem of accessibility first-hand with our designers, we were keen to explore it as much as we could. Many kits and electronic platforms were being shared that simplified the process, but tackled the problem from a hardware perspective and still required a rudimentary knowledge of electronics. Something about that approach felt wrong to us.
We had a lengthy hotel lobby conversation midway through the conference — I think it spanned into the next day. My now business partner Jeremy Bell, who was then a partner at T+L, was overcome with an idea — the abstraction of hardware design shouldn’t be solved by hardware, instead by software and applying the sensibilities and culture of the internet. To be honest, I thought the idea was crazy — he was talking about dynamically generating PCB’s, parametric enclosures, and environmental simulators. Sure, it was a compelling concept, especially given our background in digital product design, but it all sounded too sci-fi and way too hard.
Over the next year and a half, we kept revisiting the 3D printed electronics idea (we didn't know what else to call it) in discussions, arguments, and even a failed push to incorporate it into Labs somehow. We were circling around something profound, but hadn't realized what it was yet.
There were two things that tipped the scale for me.
The first was listening to Eben Upton, the brains behind the Raspberry Pi, describe that the number of qualified applicants to study computer science is dropping. Rather than learning how computers work at a more fundamental level, students are applying only with knowledge of webpage construction and high-level scripting languages. He argued that this is emblematic of a larger generational problem and the Raspberry Pi was his solution.
“Our idea was to build something cheap, powerful and available for children’s bedrooms so they could have the same experience we had.”
If you think about growing up in the 80's, there was a flood of cheap and toyish home computers — Commodore 64's, ZX Spectrum’s, and Texas Instruments 99/4A's to name a few. This is how many of us, who grew up with He-man and Cabbage Patch Kids, learned to code — the BASIC prompt immediately after boot. We arrived at school with years of programming experience as a result. The Raspberry Pi is the C64 for our kids.
There’s a big difference this time around, and it isn’t just performance. Because of its GPIO row, the Raspberry Pi (and other single-board Linux machines) is a gateway drug to a new paradigm — physical computing — and an entire generation is growing up with them. That’s profound.
The second thing that sparked my realization was something Tom Knight, famed MIT computer scientist, wrote:
“The 19th century was about the control and manipulation of energy.
The 20th century was about the control and manipulation of information.
The 21st century will be about the control and manipulation of matter.”
Knight said this in the context of synthetic biology, a topic in which he’s a leading mind, but the point has much wider reach.
The rapid advancements in digital fabrication technology, like 3D printing, CNC, and laser cutting, coupled with modern digital design tooling is beginning to democratize the creation of physical forms. Hundreds of bespoke kickstarted gadget ideas have blossomed as a result. We’re beginning to slide down the long-tail of hardware, and the pace is increasing. But is enabling hardware startup’s to rapidly prototype their ideas for a small-batch production run what the third industrial revolution is ultimately about?
Let’s go sci-fi for a moment — imagine a world where sketching physical things is as simple as sketching an idea on paper. Unburdened from the constraints of material and electrical know-how, we’re able to augment our environment with just a high-level concept. What kind of creations are possible when designers have access to such a medium? What problems are solved when it becomes frictionless to sketch and distribute hardware? In that scenario, control and manipulation of matter make us capable of magic.
A lightbulb went on for me. We are witnessing the convergence of accessible physical computing and material manipulation, but there’s something missing — a crucial element in the equation of truly democratized hardware creation — the abstraction layer that unburdens designers from physics — the software. We’re missing the MacPaint for hardware. Once that’s built, we will realize a new medium of expression and a revolution as significant as digital publishing.
Striking out on your own is a scary move, but we all believe strongly in the vision — approaching hardware creation and distribution from an internet mindset. All the elements are in place, and designers are itching to break free from behind glass. If it’s not done by us, it will be done by somebody, because the future is inevitable.
Of course, I did end up getting my holy grail machine — it only has two programs on it.