Mounting a Windows directory in the Docker VM (boot2docker)

If you’re building a Docker image on Windows you’ll want to make your application files available to the Docker VM for inclusion in the container. Assuming you have installed boot2docker and enabled hardware virtualization, your Windows Users directory will automatically be available inside the Docker VM under the root directory. For example, C:\Users on your Windows host will be accessible under /c/Users in the Docker VM. To make any directory available to the VM, you simply need to add it as a shared directory in VirtualBox, and then mount it on the VM:

Read More

Javascript Wave Equation

Screenshot of JSWave running in a browser An implementation of a one dimensional wave equation in pure JavaScript and Canvas. View the Javascript Wave Demo. View the source on Github

Read More

Painting particles with EaselJS and Coffee Physics

As a platform for trying out EaselJS I wanted to create a simple particle demo using the Coffee Physics engine. Through a bit of experimentation and (mainly) curiosity, I ended up with something half particle generator, half generative art tool. View the demo | View sample images | View the source Having not used EaselJS before it was reassuringly easy to get to grips with, and there’s good documentation available.

Read More

Google Maps Flash API & Selectable Copyright Text

When using the Google Maps Flash API you are required to display the relevant copyright notice for the tiles currently being shown. This is handled internally by the API and is generally not a problem. However, the current version of the SWC provided (1.18) chooses to handle the copyright text as selectable, meaning that the text cursor is displayed when the mouse is anywhere near the bottom 30px of the map.

Read More

Actionscript Path Correction Part 2

After my initial success in removing dead ends and backtracking from a directed path, I realised I was only half way to solving the problem. In the original post, points A, B and C were all single point digressions away from the main path. With the addition of the new points at D, the previous solution would only have removed the segments marked in green, still leaving a large part of D that we don’t want.

Read More

Actionscript Path Correction - No Going Back!

Update: See the improved solution For a project I’m currently working on, I needed a way to remove extremities from a path of consecutive points. The extremities represent points or segments of the path that we want to remove from the route (usually “going back on yourself”), while maintaining the intended course as much possible. Given the path in black above, the points A, B and C represent the types of feature we want to remove.

Read More

UCD And Agile Development since 1936

After having very recently completed a 2 day session on web usability focussing on User Centered Design, I was struck by a passage in a book I’m currently reading: It is true that we are infected with a spirit of conservatism and would rather make small alterations than large ones. It is disagreeable and troublesome for us to admit that our existing system is radically defective. And it is true that, other things being equal, we prefer simple to complex hypotheses, again from the desire to save ourselves trouble.

Read More

Actionscript AS3 TextButton Class

The TextButton Class provides a method for creating button components based on simple text labels. It’s something that’s often overlooked in many component sets, but since writing it I’ve found it to be invaluable in almost all of my projects. In it’s simplest form, all you need to define for a new TextButton instance is the text you want it to display: var button:TextButton = new TextButton("Home"); addChild(button); This will create a button with the word “Home” rendered in the system default font.

Read More

AS3 Encoded Polyline Algorithm For Google Maps

The Google Maps API uses Polyline objects to represent a series of straight lines between a set of latitude and longitude points. Long and complicated lines can become quite cumbersome to describe (especially when needing to send Polyline data to a remote service for example). For this reason, Google provides a method for encoding a Polyline as a series of ASCII characters, with each vertex defined by its distance from the last, rather than the absolute location of each one.

Read More