Here is an example of how to create type safe lists in PHP 7. Influenced by Java Generics, this approach lets your code guarantee the type of data you can store and retrieve from arrays.
PHP 7 introduces scalar type definitions: your function parameters can be of a given type, and function return type declarations ensuring your function will return results of a given data type. This can increase your code quality by enforcing a specific behaviour of your code, almost similar to how a strongly typed language does. However, PHP does not yet support variable or property data types – leaving the possibility of variables and properties to be unpredictably converted from one type to another within type safe functions. Below is a technique that enables you to guarantee object properties will always be of a given type.
Continue reading PHP 7 Object Properties Type Safety with Setters and Getters
These are my notes on how to install a D Programming Language compiler along with it’s package management tool Dub and how to set-up a first “Hello World” project on a Raspberry PI running Raspbian.
Continue reading D Programming Language – How To Install on Raspberry Pi 3
Here is a short code snippet for relatively low latency video streaming using a Raspberry PI camera via the HTTP protocol, and viewing it in VLC. This post is inspired by a ‘netcat‘ approach found here.
Continue reading Node.JS Low Latency Rapsberry PI Camera Streaming via HTTP and VLC
Having played with the Raspberry PI GPIO interface for over a year, I thought I should explore options for a faster CPU/RAM and a different architecture to enable quicker device control and more complex software. The fastest option for controlling is using a standard PC and a standard CPU architecture.
Tiny C program to loop a Micro Servo SG 90 from 0 to 180 degrees and back. Requires servoblaster.
Continue reading Micro Servo SG 90 – 0 to 180 Degrees Loop
Short note on how to install PHP Ncurses on Debian. This post assumes root level access.
Continue reading How to install PHP Ncurses on Debian
Playing with my Raspberry PI and its GPIO over the weekend it occurred to me I would be able to control it in real time from a browser, using Socket.IO and pi-gpio.
Continue reading Control your Raspberry PI GPIO in Real Time via the Browser using NodeJS, Socket.IO and pi-gpio
Webtail is an Open Source tool I wrote, for tailing files on multiple servers and displaying content in a browser in real time.
Continue reading Free Open Source Alternative to PaperTrail App
Below is a list of packages required for Symfony2 running on FreeBSD 10.
Continue reading Symfony2 FreeBSD 10 PHP Packages