I updated my Docker image of Jekyll plus LiveReload. Even though the most recent version of Jekyll supports LR built-in, this is still a good setup for building custom Gems if you're not a Ruby dev.
The new libsodium extension has brought an easy to use - hard to misconfigure - password hashing algorithm called Argon2. But, it's not exactly perfect.
Let's start off a new project the right way, with Bootstrap 4 as a dependency and our changes only made to our own scss source files. This howto uses Pulp, the streaming build pipeline.
Build a self-executing phar file is easy with Pulp, the streaming build pipeline. You know you've always wanted to build your own phar.
First there was ant, then there was grunt and gulp, now there's pulp.
Everybody has heard that OAuth is not an authentication protocol, but an authorization delegation protocol. That means it's designed to let you give access to something you own to other things or services. But, either the spec or everbody's implementation falls short when it comes to smart devices in your house.
The standard session_set_save_handler() call is not sufficient to deal with database backed sessions. The problem comes from the fact that PHP's session implemntation is only designed to work with locks that last the entire request, and database transactions are not sufficient (or problematic at best). We need atomic operations on session data.
I thought I knew every way to handle output buffering and sending headers() with PHP. But, I just found a new way to break output buffering and get errors when sending headers().
Provisioning tools are the foundation of the DevOps movement. But you don't need to compare all the provisioning tools in some kind of March Madness bracket system. If you have only a handful of machines with the same OS, you can probably get by with bash. Let's see what it can do. But first, a little history on some provisioning tools.
Recently, I got PHP to talk to Google Hangouts. It's not ground-breaking - as it mostly translates idea from python, but I haven't seen it done before in PHP. I'm going to use this functionality in my Raspberry Pi / Arduino powered security connector - the TANC.