Software 2.0

The latest product trend Silicon Valley has many names: some call it “NoCode”, “Devsumer”, “Lego Code”, or “RPA” (Robotic Process Automation). 

The idea is this: first we had Assembly. Then C++. Then Python. Then Javascript. Now… point-and-click. It’s a new era in software, where anyone can write code with a few clicks. I like to think of it as “Software 2.0”. A new way of teaching computers to do things.

This is exciting because it might expand the blast radius of software development. Far more people could become “software developers” if it didn’t require worrying about type-safety, syntax, etc. While this idea was underrated a year ago it has since gotten over-hyped in my opinion. Here’s a quick overview of the market:

Self-serve Automation

The idea is powerful: teach your computer how to write code by having it watch you. Automator, in Chrome. Click “record”, perform a series of actions (searching for text on LinkedIn, pasting in Pipedrive), click “save”, and now just click “play” any time you want to perform that action again.

All the latest products still seem too brittle. The issue that is the computer doesn’t really understand the website the same way a human does. Things break the moment the developer makes the slightest change in their project. Most of these are just too brittle. Since the DOM isn’t semantic, things break easily.

Self-serve doesn’t change behavior. Automation is selling bicycles to people that have walked their entire lives. “Please take 15 minutes out of your day to learn our product and integrate it into your workflow. I promise it’ll save you hours in the future!” doesn’t work. Instead of using your whizz-bang automated macro, I’ll still stick to my old behaviors. Most of the self serve teams are focused on the technical details of their product, forgetting the requirement of an enterprise sales force that will aggressively “educate” their users. More Marc Benioff, less Doug Englebart.

High End Automation

Everyone’s chasing UIPath. The market has been somewhat conquered by a European unicorn named UIPath. They use the techniques mentioned above, but with a sharp focus on the upper echelons of the enterprise market. This, plus a sales-heavy culture enables them to engineer individual solutions to fix the aforementioned brittleness. A “no-coder” gets started with the 80%, and an engineer builds the final 20%. The company has done well building an entire educational ecosystem around this. 

The Remaining Frontier

Where are the AI-powered automators? The holy grail. Observe, learn and automate, but do it the way humans do. Instead of the brittle, DOM-based solutions I described above, leverage a  few clever machine learning techniques to see like a human (in pixels) and learn like a human (re-enforcement, not static rules). This would enable you to make something far more robust. I’ve seen lots of talk, but little real examples. There’s something big to be built here.

Lego blocks > automation? So far we’ve discussed automation: building apps by having the computer observe, then copy you.

Maybe that’s too hard. “Lego blocks” are a different idea: build apps by assembling different “prefabricated” building blocks of software. A table. A list view. A database. Link them together with a few clicks, and suddenly you have an app. Retool is an example of a company doing this. Airtable is another. This approach might be far simpler and more effective than trying to learn through automation.

Clippy 5.0. The most exciting vision to me is some form of crowd-sourced workflow generation. Imagine you had an anonymized feed of all the “automations” or “activities” users are performing. Bob is copying names from LinkedIn and pasting them into Excel. Mary is cropping image after image and pasting into a collage. Etc, etc. Could you start predicting at the beginning of an activity what I’m about to do and suggest the answer to me? We know this is possible: I can sit over your shoulder and watch what you do, and provide useful suggestions. Could software do this as effectively? That would be exciting. 

If you’re building something in this space, I’d be happy to help! Join Pioneer to get funded, or email me at daniel@pioneer.app.