Visual programming is the future. After using Unreal Engine daily for about a year now I& #39;m convinced. We gotta start moving to rid ourselves of these purely hand-written text-based systems.
They& #39;ve been saying Visual Programming is the future since basically the inception of programming, but I feel like we& #39;re starting to get real traction now with things like the #nocode movement and first-class support for Visual Programming in Unreal Engine.
One problem is that doing visual programming right requires a lot of effort, comparable to any programming language. Unsurprisingly most visual programming tools are underpowered and not great at general purpose development, but that& #39;s because none of them were able to mature.
You can& #39;t compare a programming language with a decade+ of engineering effort, hundreds/thousands of contributors and major corporate funding, to visual programming tools built in <12 months by a handful of 20 year olds.
One amazing thing about Unreal Engine is that despite being a C++ engine, their Blueprints Visual Programming environment is 100% a first-class citizen, even above the C++ interface. If you think of visual programming as a toy for newbies, then it will always be a sub-par tool.
The UE visual programming environment is powerful & fun to use. Could be better in a *lot* of ways, but does serve to make the case that Visual Programming can and is already being used to successfully build complex, production-ready systems.
Also of note is that UE exposes multiple different visual programming tools for achieving different tasks. e.g. there& #39;s the main Blueprints editor, Material Editor, Animation State Machine Editor, AI Behaviour Tree Editor, etc.
I don& #39;t see anything about Unreal Engine that couldn& #39;t also be made to work for browser + server technologies, but this isn& #39;t something that can get traction by creating yet another visual programming startup, it needs to be a first-class citizen. A standard. Ships in the browser
Yes you can build stuff on top of wasm, or JS, e.g. firefox& #39;s WebAudio editor but note that IIUC the webaudio APIs themselves were designed in a manner to be compatible with a flow-based editing tool like this i.e. graph of nodes + connections. We need this but for all web apis.
Anyway, point is that we could and should have a standard, first-class, visual programming environment/format for the web. Doesn& #39;t need to define UI specifics, but instead a format for creating nested graphs of interconnected logic & a standard runtime for executing these graphs.
IMO deploying this as first-class web technology would open so many new doors for people to get into development, & IMO would lead to more intuitive, accessible tools and better quality software being written.
Anecdotal speculation: Our brain has a lot of built-in magic for spatial reasoning & deduction & IMO visual programming helps us to better tap into this power.
We would all benefit from getting out of this single-minded, short-sighted idea that physically using our hands to bang text into files is the best/only way to do serious programming. We& #39;re stuck in a local maxima, we can do a lot better.
You can follow @timkevinoxley.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: