Making distributed teams work
Working remotely can be difficult. I've learned lessons about the importance of network connectivity, using simple tools, and over-communication.
ARM immediate value encoding
ARM instructions use 12 bits to encode a 32-bit immediate value, using a 4-bit rotate and 8-bit constant. This is a great idea.
Kill sticky headers
A bookmarklet which removes fixed-position elements from a page.
It is our responsibility to teach
Should software engineers use advanced techniques or algorithms, or stick to the basics? It is our duty to share what we've learned through our code.
Tree traversal in CoffeeScript
Processing tree-structured data using functional programming in CoffeeScript. A detailed explanation and translation of Tom Moertel's original Haskell.
Fixing Rails auto loading for serialised objects
Serialised columns in Ruby on Rails sometimes fail to load, and remain as YAML strings. This article explains how, why, and what you can do about it.
How to define the Ruby hash default value. Allows you to write cleaner, more confident Ruby code. Ideal when working with unstructured data.
Invisible proxies with Ruby
ActiveRecord collections seem to be arrays, but they're not! This article explains the invisible proxy pattern which makes this possible.
jsmn example, or parsing JSON with C
Parsing JSON in C using the simple jsmn library, ideal for small embedded systems. Includes free sample code and explains how it works.
RCB128RFA1 UART, or Why I Hate Data Sheets
Tutorial with free sample code explaining how to use the built-in UART of the Dresden Elektronik RCB128RFA1 microcontroller board for serial communications.