Home

Welcome to my blog. This is mainly about IT, information management and Cyber Security with occasional forays into general technology, science and maybe even politics and beliefs.

I welcome feedback on this site and its content. Please use the contact form if you spot anything amiss with the site and use Disqus to talk about any of the articles.

There are 291 pages currently on this site. 233 blog posts, 51 knowledgebase pages, 6 about pages and 1 project pages.

Latest posts and knowledgebase articles


📖 Kb | 📎 Development | 🔖 node-red, node.js, javascript

Creating a notification in the Admin UI

Node-RED’s admin UI has a built-in notification (toast) pop-up message feature. This article explains how to use it when creating custom nodes as it isn’t currently well documented.


📖 Kb | 📎 Development | 🔖 node-red, npm, node.js, javascript, debugging

Cleaning up npm package install problems

Node-RED uses npm to manage package installations such as its nodes. Sometimes, you can get into a situation where you start getting lots of npm installation or removal issues and it feels like you are going round in circles trying to fix things. If so, time to call it a day and to get drastic! Here, I try to explain an easy way to fix things quickly and completely without side effects.


📖 Kb | 📎 Development | 🔖 node-red

A more comfortable way to edit the code for creating custom nodes

Node-RED allows us to create custom nodes to extend the features. While this is a great feature, actually writing the code can be tricky. In part because the code for the admin configuration panel is contained in an html file containing 3 script entries that are Node-RED specific. This post shows you a relatively easy way to split that into 3 files and combine them with a build step using an npm cross-platform script.

🕑
📖 Kb | 📎 Development | 🔖 node-red

Using JSONata to transform msg data

JSONata is a syntax designed by IBM to help reformat and restructure JSON data in a similar vein to the way that XLST is used to transform XML data.


📖 Kb | 📎 Development | 🔖 javascript, ecmascript

How to take control of JavaScript console output

All browsers have the console object that lets you output to the developer console log. But in production, you don’t want this output, only in development. So here is the easiest way I’ve found to take control.


📖 Posts | 📎 Linux | 🔖 linux, bash

Checking user access to files in Linux

How can I know if a user has access to a file or a folder in Linux? Also, what groups is a user a member of? A few things I can never remember how to do.


📖 Kb | 📎 Development | 🔖 javascript, ecmascript, node.js, nodejs

What JavaScript versions are there and how do they map to Node.JS versions?

There are now far too many versions of JavaScript. Worse, there are several ways to refer to a JavaScript version. Then we have Node.JS which has its own versioning. This post tries to summarise it all.

🕑
📖 Kb | 📎 Development | 🔖 node.js, nodejs, npm, json

Using npm configuration environment variables in package.json

npm automatically makes parts of your package.json file available as environment variables. This can be useful when using npm as a run script service.

🕑
📖 Kb | 📎 Hugo | 🔖 hugo, diagrams

Embed a diagram in a Hugo page

It is great to be able to define a diagram in code directly in your web pages. This article shows you one way to achieve that using Gravizo.

🕑
📖 Kb | 📎 Development | 🔖 node.js, nodejs, javascript, ecmascript

Download a GitHub Repository using Node.JS

Downloading a repository from GitHub using Node.JS should be really easy. But it isn’t! This KB post reminds us of the tricks required.

🕑
📖 Kb | 📎 Development | 🔖 javascript, ecmascript

How to walk through a JavaScript object in sort order

Using a JavaScript object like a keyed array, what is the simplest way to walk through the object?


📖 Kb | 📎 Development | 🔖 javascript, ecmascript

How to get the properties of a JavaScript object without errors

You cannot natively request chained properties of a JavaScript object without the possibility of an error. This utility function allows you to get any properties, no matter how they are nested.

🕑
📖 About | 📎None | 🔖None

Design for this Blog

Outlines key design elements, things left to do and testing links.


📖 Posts | 📎 Development | 🔖 git, github, npm, node.js, nodejs

Creating GitHub Releases from git Tags

The workflow for updating version numbers and doing git/GitHub/npm releases is far too complex to easily remember when you aren’t doing it very often. This post is a reminder of the various steps.


📖 Posts | 📎 Security | 🔖 paypal, finance, security

Use an Authenticator App to Login to PayPal

PayPal seem to think that SMS text messages are a secure two-factor authentication method. Sadly, they are greatly mistaken. This article explains why and what to do about it.