/taskflow

Task automation description and execution.

Primary LanguageRuby

What is Taskflow?

In essence, software is task automation. All of innovation can be reduced to either removing a step in a task, or joining two tasks. This is described in detail in Something Really New: Three Simple Steps to Creating Truly Innovative Products.

Here are several popular software applications:

  1. Monday.com automates various tasks on top of tabular data.
  2. Figma automates graphic design and image maniplation tasks.
  3. Slack automates tasks related to group communication.
  4. Zapier automates integrations between software systems.
  5. Qualtrics automates survey research tasks.

Customizing task outomation usually requires writing code for a software application. But many tasks can be defined as a sequence of steps that a person takes according to a specific action being requested. For example, filling in a value in a form field (i.e. data entry). Or uploading a document (also a form of data entry). Or agreeing to the terms of a contract. Or printing a shipping label.

In each of these, there are actions that a person performs in a particular sequence that produced data as input to further tasks.

Taskflow is a tool for defining the steps in a task, as well as tool for presenting the task to a person and recording the actions they take.

Workflow Automation Tools

There are a variety of tools or platforms that focus on workflow automation:

Vertical SaaS

A common pattern of internet applications is to build a useful tool and then sell it to a large variety of businesses in different market segments.

An alternative that has recently grown significantly is the "vertial SaaS (Software as a Service)", an internet application that focuses on a narrow segment and serves it exclusively. One advantage of this approach is reducing the amount of customization needed to integrate the tool into an organization. A requirement for vertical SaaS to be successful is a market segment composed of enough firms for the vertial SaaS to be profitable.

Fractal has started a number of vertical SaaS companies.

Some History

Starting around 1985, as the personal computing revolution started unfolding, the idea of "business process automation" started being discussed a lot. See the Google Ngram Viewer for "business process automation" and "robotic process automation".

Programs like VisiCalc began transforming how businesses worked. This revolution continued with tools like Microsoft Visual Basic for Applications and Microsoft Access. These tools were used extensively by small organizations, while big organizations bought large software applications from companies like IBM, Microsoft, Apple, and Sun Microsystems.

Over time, there has been a continuous cycle of bundling and unbundling in software applications. An iconic example is Internet Explorer, bundled with Microsoft Windows operating system, and Netscape Navigator (and later Firefox, Google Chrome, and others).

This is unsurprising given the description of innovation above. Joining tasks often implies bundling different things together to reduce the effort of using them together. Removing a step (or many) in a task may result in building a new way of automating a task that is more efficient or more able to stand on its own.

Starting again around the mid-1980s and accelerating in the 1990s and 2000s was the "application programming interface" (API). External-facing web APIs enabled the linking of tasks across completely different organizations and software applications (and their programming languages).

License

Copyright 2023, Brian Shirai, all rights reserved.