View AWS EC2.md
View AWS CLI.md
View Dictaphone to Email.ahk
global title := "Dictaphone To Email"
global num_emails := 0
global num_sent := 0
global drive_letter
CountFilesInDirectory(directory)
{
Loop %drive_letter%:\VOICE\%directory%\*.MP3
num_emails++
}
View ._ Loading variables from .env files in Ansible.md

Loading variables from .env files in Ansible

Ansible has various ways of looking up data from outside sources, including plain text password files, CSV files and INI files. But it doesn't seem to have a lookup for .env files, as used in Laravel projects, also available for PHP, Ruby, Node.js, Python and others.

One option is to launch Ansible with the Ruby dotenv command line script... But that requires Ruby, which seems like overkill to me.

So here is a simpler solution that I use. It consists of:

  1. The .env file itself
  2. A small shell script that loads the .env file into environment variables - ansible-playbook.sh
View Archive.org.md

Downloading old websites from Archive.org

Using Wayback Machine Downloader.

Usage is very simple:

# Install
sudo gem install wayback_machine_downloader
View Laravel-Container.md

Laravel's Dependency Injection Container in Depth

Laravel has a powerful Inversion of Control (IoC) / Dependency Injection (DI) Container. Unfortunately the official documentation doesn't cover all of the available functionality, so I decided to experiment with it and document it for myself. The following is based on Laravel 5.4.26 - other versions may vary.

Introduction to Dependency Injection

I won't attempt to explain the principles behind DI / IoC here - if you're not familiar with them you might want to read What is Dependency Injection? by Fabien Potencier (creator of the Symfony framework).

Accessing the Container

View prolog.md

Getting started with SWI-Prolog

Today (May 2017) I decided to learn a bit about Prolog. Here is how to start using it...

Install it on Ubuntu:

sudo apt-get install swi-prolog
View Docker.md

Docker Reference

This week (May 2017) I have been learning about Docker... Here is what I've learned so far.

The shortcut commands in brackets refer to functions/aliases I've set up in my dotfiles.

Installing Docker on Ubuntu

sudo apt-get install docker docker-compose