Skip to content

Technical Notes

Write-ups from deployments we have actually run, organised by section. Specific problems, the reasoning behind the approach, and what it cost to get wrong. Client names are withheld under confidentiality.

Page 2 of 6

Networking7 min read

WireGuard vs OpenVPN

These two make opposite design choices about the same problem. OpenVPN negotiates almost everything and is correspondingly flexible; WireGuard fixes almost everything and is correspondingly small. Which is right depends on what your network has to tolerate.

WireGuardOpenVPNpfSenseCurve25519ChaCha20
Read the write-up
IT Support7 min read

Zabbix for business infrastructure

Zabbix and Prometheus are both described as monitoring and are built for different jobs. Zabbix is an integrated system that arrives knowing what a server, a switch and a printer are. That difference is what should decide which one a growing business runs.

ZabbixSNMPMySQLPostgreSQLPrometheus
Read the write-up
IT Support7 min read

Centralised logging with Loki

Logs answer the questions metrics cannot, and they are the first thing an attacker deletes. Loki makes keeping them affordable by indexing labels rather than log text — which is exactly why the labels have to be chosen carefully.

LokiGrafanaPromtailS3LogQL
Read the write-up
Custom Software & CRM7 min read

Building business applications that scale

Most business applications do not fail under load. They fail under data — a query that was instant against ten thousand rows and unusable against two million. Scaling is mostly a database problem, and mostly solvable without any architectural change.

MySQLPostgreSQLRedisLaravelIndexes
Read the write-up
Communications8 min read

Call recording: the obligations nobody checks

Most businesses turn on call recording, keep everything forever, and assume that is the safe option. It is the opposite. Retaining recordings creates obligations, and one of them — card data captured in audio — is a standards violation the moment the recording is written.

AsteriskFreePBXPCI DSSEncryption at rest
Read the write-up
Communications8 min read

VICIdial in production

VICIdial will run a contact centre on hardware that costs a fraction of the commercial alternatives. What it will not do is tolerate being installed and left alone — almost every failure in a VICIdial estate traces to database growth, carrier quality or dialling configuration rather than to the software.

VICIdialAsteriskMySQLSIPLinux
Read the write-up
Communications7 min read

Scaling a contact centre

Doubling call volume does not require double the agents, and the reason it does not is the same reason a small centre feels chaotic while a large one feels calm. Staffing does not scale linearly, and planning as though it does is how centres end up simultaneously overstaffed and missing service levels.

Erlang CAsteriskVICIdialSIPWFM
Read the write-up
IT Support7 min read

Prometheus for business infrastructure

Prometheus is the default metrics store for good reasons, and it has a documented limitation businesses run into by using it for the wrong job. Knowing what it is not for is more useful than another installation guide.

PrometheusPromQLAlertmanagerGrafanaNode Exporter
Read the write-up
IT Support7 min read

Server health monitoring

Most server monitoring watches CPU, memory and disk, which are the three things least likely to be the actual problem. The signals that predict outages are duller and are usually not collected at all.

PrometheusNode ExporterSMARTsystemdNTP
Read the write-up

Have a Problem That Looks Like One of These?

We typically respond within 4–8 business hours.