A Serverless text-to-speech player for jokes and quotes

Using AWS components, Cloudflare, and public APIs.

James Montgomery

2 minute read

TL; DR I decided to dust off my text-to-speech list, implementing a serverless solution delivering random jokes and quotes. You may visit it at this address: https://tts-ja.mesmontgomery.co.uk/ You can get a preview of the joke quality here: Your browser does not support the audio element. Note: I can’t affect the humour quality 🤣. Solution overview Upon visiting the page, an event triggers calls to the API routes for their relative jokes and quotes.

Backup of Cloudflare DNS to AWS DynamoDB

Using AWS Lambda to copy records into DynamoDB via the Libcloud library

James Montgomery

5 minute read

TL; DR After a short break, I decided to take an item off the project list. DNS is a rich source of inspiration for me - and so I elected for a quick win in the form of serverless DNS records backup. The goal of which is to backup my DNS zone contents, via functions as a service (FaaS) and storage as a service (object or database). You can find all the associated code for this on my GitHub page.

Detecting digit combinations in a number with PowerShell

How we can inspect a number like 143256789 and determine it contains the digits 1-9

James Montgomery

5 minute read

TL; DR How do you pass the time on a car journey? Most of us have memories of “I spy” or other game. Lately, I’ve been looking out for number combinations after a car I owned passed 123k miles - specifically 123456 miles. What’s more, the trip computer almost made it read 1234567890! As time passed, I was looking out for other odometer readings. 123465 miles was the next number of interest.

Detecting Digits with PowerShell

A person can look at a number and determine which digits are present. How would a script achieve this?

James Montgomery

13 minute read

Table of contents TL; DR How to think about the problem Working with a number in PowerShell [System.Math]::DivRem Using DivRem to detect a digit Using DivRem to detect a range of digits Contains Using .contains() to detect a digit Using .contains() to detect a range of digits Match Using -match to detect a specific digit Using -Match to detect a range of digits Split Using -split to detect a digit Using -split to detect a range of digits ASCII Method Using the ASCII value of a character to detect unique digits in a number Conclusion Acknowledgements TL; DR Have you ever wondered, how many unique digits are in a number?

Domain migration and enabling DNSSEC

I migrated my domain to iwantmyname.com and enabled DNSSEC on CloudFlare.

James Montgomery

3 minute read

TL; DR The renewal date on my .co.uk domain was nearing. I decided to make a change from 123-reg to iwantmyname. After migration, I captured the process to enable DNSSEC when using Cloudflare for DNS. For those thinking of a similar migration, I have also documented my experience of moving to iwantmyname. .co.uk domain registrar migration to iwantmyname I had used iwantmyname previously and so benefitted from having an account already.

Updating site privacy settings

Working with Hugo privacy configuration.

James Montgomery

2 minute read

TL; DR I’ve been reviewing the available Hugo privacy settings. You can review the latest configuration on my site project page. Below I discuss the purpose of the changes. Do not track I’ve updated my Hugo site configuration to respect “do not track” (DNT) browser settings in Google Analytics. The effect is similar to browsing a site in private or incognito mode, which if you used previously blocked Google Analytics.