About Node-RED
Blog on the Open Mind Map project built using Node-RED and very much about Node-RED, visual coding and the paradigm shift away from text-based coding.
- Custom Node Dev
Custom node development in Node-RED for Node-RED.
Updated: 2024-09-14
- Flow Based Programming
What is Flow Based Programming (FBP) and how does it influence Node-RED? This and many more questions are addressed in this series of screencasts discussing FBP.
Updated: 2024-05-01
- Streaming Package
Handling large datasets with Node-RED - doing ETL using Node-RED.
Updated: 2024-04-24
- Introspection Package
This screencast series discusses using Introspection for analysing flows inside the Node-RED editor.
Updated: 2024-04-19
- NodeDev Package
Creating custom Node-RED nodes in Node-RED?!? Yes, why not! This screencast series discusses using NodeDev to do that.
Updated: 2024-04-17
- FlowHub.org Use Cases
What are the FlowHub.org use cases? A series of screencasts giving insights into how I use FlowHub.org.
Updated: 2024-04-15
- Introduction to FlowHub.org
What is FlowHub.org? A series of screencasts introducing FlowHub.org and what was the purpose in creating FlowHub.org.
Updated: 2024-04-13
- Towards holistic Node-RED node development
Is the Node-RED client really just an editor with a server attached?
Updated: 2024-02-29
- Why is flow based programming so hard?
Flow based programming is difficult, why is that the case?
Updated: 2024-02-24
- Deutsch Limit
Is there a hard limit to node counts when it comes to flow complexity?
Updated: 2024-02-17
- Visual Obfuscation
Obfuscation is a popular method to hide Intelluctal Property (IP). How can obfuscation be applied to a visual programming environment?
Updated: 2024-02-12
- HowTo: Embedding Node-RED
First came Node-RED, then came the idea of having a server-less, in-browser Node-RED. After that it was a small step to embedding Node-RED in your favourite blog!
Updated: 2023-12-29
- Visual Coding: Drawing Parallels
We as programmers should choose representations of code that is understandable by our audience and not by us. We are, after all, not coders but programmers and as such, we also program our audience with our words. Sometimes knowing who the audience is, can be difficult however it should not be an excuse for not making an effort.
Updated: 2023-11-13
- FlowHub.org: Towards collaborative visual flow based development
Development has become collaborative but has visual Flow Based Programming (FBP) being keeping up? FlowHub.org is an attempt to provided services to make visual FBP more collaborative.
Updated: 2023-11-11
- Visual Code: Evolution
A picture is worth a thousand words, how many words in a film? Code evolution presented visually is one of the more artistic qualities of visual flow based programming.
Updated: 2023-11-10
- Node-RED Development: The Numbers
What do the numbers on Node-RED development tell? How much development is going on around Node-RED and is there a future for Node-RED? An analysis of Node-RED package development.
Updated: 2023-10-31
- Flow Based Programming (FBP)
Flow Based Programming (FBP) predates visual programming and is the basis for concepts such as Unix pipes. Where does FBP come from?
Updated: 2023-10-25
- One Year Node-RED: A Retrospective
One year using Node-RED, where to now? A retrospective on visual programming and a tool that doesn't like limelight.
Updated: 2023-10-17
- Wires, Pipes and Nodes: Rethinking Node-REDs terminology
Are wires the correct terminology for the Node-RED connector lines? Is there another way of thinking about node connections?
Updated: 2023-08-29
- FlowHub.org: Visual code sharing for Node-RED
FlowHub is an experimental platform for visually sharing Node-RED code. Node-RED is a visual development platform and therefore it makes sense to visually share code snippets.
Updated: 2023-08-26
- Visual Programming, Artificial Intelligence: the programmatic future?
Is AI our programmatic future or shoud we take another approach? A visual approach to programming to make programming more inclusive? Prompt engineering versus visual engineering, visual programming!
Updated: 2023-08-15
- JMAP in Node-RED
JMAP is an obscure protocol used for managing emails. It was created by Fastmail and I use Fastmail therefore I have to use JMAP. This is the Node-RED flow that I came up with. Two obscure technologies coming together!
Updated: 2023-07-27
- GitHub API Commit Flow
A Node-RED flow for commiting to a GitHub repo.
Updated: 2023-07-18
- Visual coding with Node-RED
Visual coding is a paradigm shift away from editor-based coding to a visually descriptive context. With this shift comes new challenges, not least of which: what do the shapes mean - what does the rectangle actually do?
Updated: 2023-07-13
- Refactoring Node-RED flows: Duplicate computation
How can Node-RED visual flows be refactored? Do we need to refactor them? How to handle code duplication in Node-RED? Find out!
Updated: 2023-07-05
- Coding in the Browser - Node-RED v. Jupyter
Node-RED has gotten mainstream attention, other products seem to be better at attention grabbing. But why should this be the case?
Updated: 2023-07-13
- Replacing Node-RED flow codeblocks with flow images.
Codeblocks are one thing but images are further a thousand Json files. Show me your flow!
Updated: 2023-07-03
- Building a blog platform using Node-RED
Because I can I built a basic blogging platform using Node-RED. This is done out of pure fun and pleasure. Based on the ideas from Jekyll - a Ruby static page generator.
Updated: 2023-07-03
- Mapping information bubbles
How to map information bubbles into a mindmap.
Updated: 2023-07-13
The author is available for Node-RED development and consultancy.
Technical Details
Node-RED is a in-browser flow-based visual programming environment. A flow has the following appearance:
[
{
"id": "a345c028d1d9b3b6",
"type": "inject",
"z": "156f8ce999bf645b",
"name": "inject message into flow",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "",
"payloadType": "date",
"x": 857,
"y": 1370,
"wires": [
[
"b9a0e040da4ddc17"
]
]
},
{
"id": "5f0d94fe670a1d1d",
"type": "debug",
"z": "156f8ce999bf645b",
"name": "debug - display contents of data object",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 1273,
"y": 1532,
"wires": []
},
{
"id": "b9a0e040da4ddc17",
"type": "function",
"z": "156f8ce999bf645b",
"name": "say hello world",
"func": "msg.payload = \"hello world\";\n\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 1040,
"y": 1457,
"wires": [
[
"5f0d94fe670a1d1d"
]
]
}
]
If this looks like rectangles connected by lines, I have written a short explanation of visual coding compared to text-based coding.
All blog pages here are generated by Node-RED flows, content is hosted within Node-RED. Nodes that make up a blog page contain the content that make the page, each page has a link to the flow that created it. Pages are modified and improved all the time and content is not guaranteed to be static.
For more on the software behind this, Blogroller would be of interest. Consideration made while constructing - yet another - blogging platform can be read here.
Arrival is not part of the Journey
This is very much an experiment in mixing mind-maps with blogs while coding with visual flows, nothing is constant, nothing is completed and nothing is finished, not even the truth.
OpenMindMap.org what’s with the domain?
This whole experience began with the idea of creating a global mind map for exploding personal filter bubbles. I had the idea of using Node-RED as a mind-map tool. If you see Node-RED as a drawing program for connecting rectanges and via lines, you can see the mind map association!
Having created my mind map, I realised that I had created a visual representation of my filter bubble and began thinking about the white spaces around the nodes. I realised that a mind map is not a street map - a street map shows you all the streets you don’t know, a mind map shows you just the thoughts that you already had/have. I wish to change that and decided to create openmindmap.org - the name being from Open Street Map.
Open mind map is the intention of having a global mind map whereby I can expand my mind map by crossing over to other peoples mind maps, thought for thought, idea for idea. I imagine something like this page where by zooming out (simulated by a slider), other mind maps come into view. These can then be explored, exploding filter bubbles in the process.
At the moment, I got stuck creating this blog instead! :-)
If you find the idea interesting and what to help/copy/steal the idea, please do tell me.
Comments powered by giscus
The author is available for Node-RED development and consultancy.