Articles

Articles

Categories

Articles

Composable type checking for JavaScript

Article about the Security module

May 2024

Generating short ordered IDs with any insertion pattern

Say you have a set of elements which need to be ordered, and you want to give each element an ID which reflects its position in the ordering.

May 2024

Counting uniques using only O(1 byte)

There are occasions when you need to know how many unique entries there are in an array or how many unique values have been seen in a stream, but do not…

Apr 2024

Making a node module which works both on frontend and backend

If theres some logic which needs to run on both frontend (JavaScript/HTML) and backend (NOdeJS) then there are some patterns which allow you to use the…

Apr 2024

On address space sizes

We are well into the 64-bit era, and a 64-bit pointer allows for an addressable space of 2^64 bytes, or 16 exabytes.

Apr 2024

Self-describing code

It is possible to write code in a manner that allows you to choose whether to execute it or grab a description of what the code does as an Abstract Syntax…

Jan 2023

Self-describing code

It is possible to write code in a manner that allows you to choose whether to execute it immediately or grab a description of what the code does as an…

Jan 2023

3D Script IDE demo

This is an interactive environment for creating 3D animations using a simple scripting language.

Jan 2023

A pure JavaScript CPU emulator

A CPU is a device which takes instructions from RAM and performs actions based on those instructions.

Jan 2023

Asteroids game

ccc

Jan 2023

Bedlam MS-DOS Game

Jan 2023

Comparison of JavaScript binary data objects

There are a set of objects for dealing with binary data in JavaScript, which are slightly different on NodeJS and in the browser.

Jan 2023

Composable typechecking in JavaScript

If you are working in pure JavaScript on a project of any reasonable size, type errors will often become a major source of pain unless you have a process…

Jan 2023

Declarative programming

Jan 2023

Exceptional Parsing, or using JavaScript exceptions as a substitute for algebraic expressions

Parsing is one of those intermediate-level algorithms, which, like state machines, you may not use on a day-to-day basis as a developer but their…

Jan 2023

Flattening 2D Data

Jan 2023

Isomorphic JavaScript

Jan 2023

Key Hunt JavaScript game

aaa

Jan 2023

Program - aprogramming language

Jan 2023

Rocks Off JavaScript Game

bbb

Jan 2023

Some JavaScript performance comparisons

In JavaScript there are often many ways to achieve the same common things

Jan 2023

Tetrisk MS-DOS Game

Jan 2023

The Dodge Game

ccc

Jan 2023

Using Context in JavaScript to achieve cleaner code

Jan 2023

Simple typechecking goes a long way

Jun 2021

Curried functions in JavaScript

Curried functions exists in some programming languages and they are functions which have been called without all their arguments. This yields a new…

Jul 2019

Simulating algebraic effects in JavaScript

Sep 2018

A collection of simple speedups

If you have a Web application there are likely countless ways you can speed it up, some with significant performance gains, and some adding up to…

Mar 2018

Raytracer 008 - Bumpy Textures demo

Dec 2010

Raytracer 007 - Pearls demo

Dec 2010

Raytracer 006 - Even more spheres demo

Dec 2010

Raytracer 005 - More spheres demo

Dec 2010

Raytracer 004 - Shadows demo

Dec 2010

Raytracer 003 - 3 levels of reflection demo

Dec 2010

Raytracer 002 - Diffuse and phong lighting demo

Dec 2010

Raytracer 001 - 3 spheres with normals demo

Dec 2010

Fragment Shader Framework demo

Dec 2010

Mini Tetris flash

Tiny tetris game example

Apr 2010

Destructible Walls flash

A gameplay experiment where the walls can be destroyed by the bullets with several hits.

Aug 2007

Small Level flash

This is the same two-player game with a smaller level and a lot tighter action.

Aug 2007

Large Level flash

This is the two-player game with a large level.

Aug 2007

Three cubes test flash

Mar 2007

Two cubes flash

Mar 2007

Nice 3D Engine

3D Engine with scene graph and cartoon rendering style

Nov 2005

2 squares flash

Aug 2005

nice four squares flash

Aug 2005

three squares, good calc flash

Aug 2005

Cube vs Plane Intersection flash

Aug 2005

T shaped test flash

Aug 2005

X shaped test flash

Aug 2005

Reflected symmetry

May 2005

With faded edges

May 2005

Wavey effect

Sep 2004

Wavey effect

Sep 2004

Simple

May 2004

Basic Scene, reflection, shadows

May 2004

Chess Game flash

Simplest chessboard ever

Mar 2004

Meteora flash

2-player game example

Mar 2004

Mixer flash

How to overlay Flash with a transparent background over your HTML.

Dec 2003

Not showing splits flash

Jul 2002

Showing splits flash

Jul 2002

Just outlines flash

Jul 2002

With Mouseover and trimmings

Jun 2002

Mask with border

Jun 2002

Solid and wireframe cubes with mask

Jun 2002

Basic Solid Cubes with Z-Sorting

Jun 2002

Unfolded Panorama java

2001

Panorama Viewer java

Dec 2001

Test Java Cube Rendering java

Dec 2001

White Outline (Cartoon Shading) java

Jun 2001

Pillars With Reflective Floor java

Mar 2001

Box & Reflective Tetrahedron java

Using a BSP tree for reflections and object intersection

Oct 1998