If you have a web application, you need to ensure that every component (code, files, database etc.) is backed up on a regular basis. Backups need to be: Automated: So…
Recently I had to upload a PDF via a mobile app which required each page to be uploaded as a separate file - potentially an enormous amount of work. pdftk…
2021 has been another year of general chaos, but fortunately my business hasn't been too badly affected. I've also spent some time improving my business, which I think will stand…
Recently I had to setup a web server to relay all outbound email (e.g. password resets) through Office 365. The options are listed in How to set up a multifunction…
Over the past decade, ISPs and hosting companies have been gradually rolling out IPv6, the headline benefit of which is to extend the number of available IP addresses (IPv4 allows…
Most MySQL developers will be familiar with the DESCRIBE statements, which shows the definition of all the columns in a table: > DESCRIBE contacts; +------------+---------------------+------+-----+---------+----------------+ | Field | Type |…
Most of the websites I work on have at least two environments: staging (for testing) and production (the live site). Each environment has a different configuration, e.g. staging will typically…
Despite the general chaos, I've been luckier than most in that my business hasn't been badly affected in 2020. I've had chance to learn some new skills, improve my admin,…
This year I've been paying close attention to Sympl, a project which makes it easier to manage website and email hosting by providing sensible default configurations and automating some of…
Part 1 Problem: Calculate the surface area of a list of boxes, including slack (the area of the smallest side). Solution: Read in each line of the input file and…