by Maciek Grischke | Oct 24, 2026 | Tutorials
Last week I found that my home router was letting the whole internet reach the SMTP proxy I use for email signatures, and that someone had noticed before I did. A NAT rule I wrote months ago forwarded port 25 to the proxy with no restriction on where the traffic came...
by Maciek Grischke | Oct 18, 2026 | Tutorials
Over the last two months I have brought three large Power Platform solutions under source control and moved them through sandbox and production with the pac command-line tool rather than the portal. Between them they contain four canvas apps and more than a hundred...
by Maciek Grischke | Oct 3, 2026 | Tutorials
Microsoft Graph exposes every Teams call and meeting as a call record, with participants, start and end times, modalities and quality data. It keeps them for 30 days. If you want call history beyond that, for reporting or for a records request, you have to collect it...
by Maciek Grischke | Sep 12, 2026 | Tutorials
One of my UniFi Protect cameras, a G3 Pro, dropped off the console and would not come back. The console listed it, the camera was pingable, and every attempt to re-adopt it from the Protect UI failed without a useful message. It took four days and several wrong...
by Maciek Grischke | Sep 3, 2026 | Tutorials
Every WordPress site on my web server, including this one, returned HTTP 500 one evening. MySQL had been killed by the kernel’s out-of-memory killer, and the obvious conclusion was that MySQL had a memory problem. It did not. It was the victim, and the real...