IoT used to be cool.
Personal computers were supposed to be about making people more productive by having access to computational power at home.
— Michael McThrow
You could say the same thing about physical computing and then IoT. Them were heady days, when it felt like the physical world could be reduced to just another API target. Twine raised a large amount based on that excitement.
Arduino was not the first proto/dev board, but it had a toolchain that let you get to the productive stuff pretty quickly. It was a game-changer. The ideas started snowballing, some thought-leadership-provoking, some stupid fun, but we were excited about prototyping the future.
Everyone was raising the ceiling on embedded boards’ abilities—those early hobbyist boards were missing the I in IoT1, which ESP boards addressed definitively—but after OTA firmware updates and interpreted languages, they stopped building on the experience that Arduino established. The ground floor is still learning a programming language, or fine, if using some visual tool, learning how to think like a programmer. They forgot that its roots, like its predecessor Processing, were in the design community. Where are the Bret Victor-style explorations?
Anything can be a spreadsheet.
I know, you made a project using an embedded board, wires and code. I did too. But there are more people with ideas and needs than the skills to implement them. Where PCs got interesting, where the Web got interesting, was when we got GUIs and easy installation/uninstallation and templates where you could just drop in your content. The friction became so low to experiment and create.
We’re lacking such tools for physical computing. If there isn’t a premade product for me, my only option is to build my own, requiring some knowledge of software/electrical/mechanical engineering. But I don’t always need that amount of rope to hang myself with—how many use cases are just collecting, filtering and routing data?
The spreadsheet was the first killer app because it was a toolmaking app for non-programmers, who used it to quickly fill in that gap. A grid of cells was a database model and view laid flat, and formulas were a lever to update a lot of things at the speed of your input, no compilation required. These building blocks allowed for a lot of expression, and spreadsheet files were easy to distribute, so a billion bespoke calculator, database and modeling apps bloomed.
Arduino for the rest of us.
I want the spreadsheet of connected objects, an approachable power tool that is broadly applicable. The embedded board that doesn’t make you reinvent the case and power optimization and connectivity every time. Where the IDE feels light because changes happen immediately. Where you don’t need to learn a programming language, but the power is there as you need it.
Supermechanical’s first step toward this was Twine, and the next is Pickup. It integrates hardware and software into a live development environment, where changes to its behavior or peripherals take effect immediately. You want an air quality monitor that clips to your air vent and logs VOCs, CO2 and particulates to both Grafana and a community map? Or a data logger that records the temperature, time and color from each batch of chocolate that you make? Snap in the sensors, point to the data store, and get live feedback while you make sure it’s working.
The tech companies haven’t lived up to their promise of a responsive environment that answers to your whims (though it does answer to theirs). Let’s retake the means of computation, and the data it generates, and give it back to the people. They’ll know what to do with it.