RSSAmplifier

Blog

Jonathan Olson

As a passionate software engineer, I develop free open-source educational tools for PhET Interactive Simulations, lead the development of their rendering engine, and pursue diverse personal projects.

jonathanolson.netRSS feed ↗10 posts

Latest posts

Exact Polygonal Filtering

Efficient filtering of polygonal shapes with closed-form solutions based on Green's theorem with piecewise-polynomial filters (e.g. box/bilinear/bicubic).

How Slitherlink Should be Solved

An opinionated guide on new techniques and strategies for solving Slitherlink puzzles, with a web app to play with the concepts and a library of patterns.

Play Slitherlink

Try out Slitherlink puzzles and challenge yourself with various techniques and strategies.

Alpenglow

Alpenglow is an experimental rasterizer that takes a scene description and efficiently produces a corresponding high-quality image.

Optimal Wordle Solutions

Explore decision trees with optimal strategies for the game Wordle.

Shaping

Text shaping (and font parsing) in the browser, with bi-directional shaping support.

Browser-specific content using Canvas quirks

Using edge cases in Canvas implementations, it is possible to create images that are different on different browsers, without querying the browser. This can be used to create browser-specific content.

Canvas Browser-Specific Quirks

Currently, there are a number of HTML5 Canvas edge cases that display differently on different browsers. This is a list of all quirks that I've come across so far in Scenery development.

Tesserace

WebGL-based experiment with fairly realistic light transport (dielectrics, metals). Includes signed distance field (SDF) shapes and procedural textures.

Sudog

[2008, C++, Linux] Highlights common human-understandable patterns to eliminate candidates, using strategies up to swordfish/y-wing/coloring. Includes a command-line solver that outputs postscript or SVG step-by-step solution guides, and includes a GTK+/Cairo user interface for interactive solving.