Drawing boxes and arrows on a whiteboard has long been a mainstay of software development planning. Originally created in the 1970s by IBM, this idea of flow-based programming has long dominated the non-programmer spaces of business, where analysts and knowledge workers could cobble together applications from simple boxes and components.
Yet while these modern tools target non-programmers, the idea of flow-based programming is still powerful for actual software developers. That’s why Henri Bergius founded NoFlo, a company that brings flow-based programming into the JavaScript world of Node.js.
“This will enable domain experts to do more with their software,” said Bergius. “But the bigger thing here is understanding how the software is put together, how things flow, what happens when something comes into the system. It’s not just programming by non-programmers, but also a better way of programming for existing programmers.”
Bergius said that “flow-based programming and visual nodal editors have become popular in other industries. They are used for bloom effects in visual processing, for example. What’s changed in programming recently is they’re now doing a lot more things with external services and APIs, not just developing on one piece of hardware. But dealing with multiple devices and instruments is made easier by flow-based programing.”
At the heart of the NoFlo community, said Bergius, are the open-source developers who have created more than 200 components developed. Using these components, developers can construct applications quickly and efficiently, without having to learn how a specific API works. Components run the gamut from “store something in CouchDB” to “process a payment with Stripe.”
While NoFlo has been around for three years, the team has decided it’s time to build an IDE. Bergius said the plan for now is to raise US$100,000 on Kickstarter to construct a Web-based IDE for NoFlo users. The campaign is set to run for 45 days.