This website contains notes & cheatsheets for web development, Linux systems administration, information security and cryptocurrency.
This site is maintained by David Egan:
12 Aug 2019
Information Entropy is the average rate at which information is produced by a stochastic(random) source of data.
09 Aug 2019
In C++ a lambda expression or lambda function is a closure: an unnamed (anonymous) function that is passed inline - usually to another function. Lambda expressions are a concise way of creating simple function objects.
29 Jul 2019
getline() to read lines from a file, and add them to dynamically allocated memory:
21 Aug 2018
Radix 64 or base 64 is a binary-to-text encoding system that is designed to allow binary data to be represented in ASCII string format. This is an educational project accepts a string from a user and Radix 64 encodes it.
19 Jul 2018
When looping with an iterator, the index of the current iteration isn't immediately obvious unless you resort to incrementing a counter. Fortunately it's easy to find the start and end of your loop.
12 Jun 2018
Simple http server socket in Linux. This is an educational work in progress, and these are my notes.
27 May 2018
Python comprehensions are syntactic sugar constructs that provide a way to build a list, dictionary or set from a starting list, dictionary or set whilst altering or filtering elements.
01 Apr 2018
04 Feb 2018
There are many ways to collect user input. In this example a user is prompted to make a selection from a numbered list. This sets the
int choice variable, which can then be used to control programme flow.
15 Oct 2017
Protect your sensitive data - create a LUKS encrypted backup partition for Ubuntu 16.04 Xenial Xerus that is automatically mounted on boot.
22 Aug 2017
Access a Bitcoin core wallet in an airgapped environment. Secure management of cold-wallets.
20 Jul 2017
Fail2Ban can help protect your Linux server from attack. It's a Python package that monitors log files and dynamically adjusts firewall rules to block malicious IP addresses. This article shows how to configure Fail2Ban so that specified IP addresses are ignored.
03 Jul 2017
Ethereum is a decentralized blockchain-based platform that runs smart contracts. Because of the decentralized nature of Ethereum, smart contracts run exactly as programmed - short of an internet apocalypse, there is no possibility of downtime, censorship, fraud or third-party interference. The network is cryptographically secure, decentralized and tamper-proof.
01 Jul 2017
Install Bitcoin Core in Ubuntu 16.04 - how to download and verify from bitcoin.org.
22 Jun 2017
Enable all Apache virtual host configurations at once. This article provides a useful BASH script that loops through and enables all vhost configs - useful when setting up new development machines or changing servers.