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.

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.