This page has a chronological list of blog posts I've written, some of which are hosted externally.| hdevalence.ca
Announcing my departure from Penumbra.| Henry de Valence
Notes on an experimental, multiplayer, open-world AI chat system built on the AT Protocol.| hdevalence.ca
A visual comparison showing the stark difference in print quality between two Springer Graduate Texts in Mathematics books| Henry de Valence
Exploring the mathematics and artistry of curved-fold origami through photographs, with notes on folding technique and setup| Henry de Valence
A workaround for Chrome for Android's text enlarger bug that breaks web fonts| Henry de Valence
Using Lagrange's Four Square Theorem to express integer inequality in positive existential arithmetic without using negation| Henry de Valence
Exploring the correspondence between complex elliptic curves, lattices, and points in the upper half-plane via the j-invariant| Henry de Valence
Building a Python script using OpenCV to transform photos of documents into clean, flat, high-contrast scans| Henry de Valence
Investigating the quality/size tradeoffs of JPEG compression at different resolutions for high-DPI displays| Henry de Valence
Introducing my Google Summer of Code project to rewrite KStars' astronomy engine using OpenCL for better performance| Henry de Valence
A quote from Isaac Newton about Cassegrain's telescope design| Henry de Valence
A historic speech from 1842 where Macaulay argues against extending copyright terms, using examples from Wesley, Shakespeare, and Austen| Henry de Valence
An overview of astronomical coordinate systems used in KStars - horizontal, equatorial, ecliptic, and galactic - and how to convert between them| Henry de Valence
An exploration of how quaternions provide an elegant way to represent 3D rotations, avoiding the problems of Euler angles and matrices| Henry de Valence
How to fix Intel VTune's sepdk driver compilation errors on Linux 3.9+ by adapting to kernel API changes in hlist iterators| Henry de Valence
Progress report on rewriting KStars' coordinate transformations using linear algebra instead of spherical trigonometry for better performance| Henry de Valence
Using stereographic projection to simplify stellar aberration calculations in KStars, replacing complex trigonometry with elegant geometric transformations| Henry de Valence
Using a laser cutter and Haskell to create precise curved-fold origami patterns, with concentric circles scored on both sides of the paper| Henry de Valence
Implementing optional OpenCL support in KStars and benchmarking the new algorithms, showing 56x speedup from better algorithms and 132x with OpenCL| Henry de Valence
Personal notes on installing Arch Linux with bcache, btrfs, and radeon drivers - including important caveats about bcache/btrfs compatibility| Henry de Valence
Exploring how to use Clang's memory layout dump feature to optimize C++ object sizes, resulting in a 10% memory reduction by eliminating padding and reconsidering data types.| Henry de Valence
A guide on converting KML files with ExtendedData tags to shapefiles using GDAL's ogr2ogr tool, including tips on enabling LibKML support in Arch Linux for proper data conversion.| Henry de Valence
Exploring tightly packed tries as a space-efficient data structure for storing n-grams, using information theory and clever encoding techniques.| Henry de Valence
Exploring data structure optimizations for working with Google's massive n-gram datasets, including tries and tagged pointers.| Henry de Valence
Exploring the historical Treviso Arithmetic from 1478 and its method of 'casting out nines' for error checking in arithmetic calculations.| hdevalence.ca
Ed25519 signature validation criteria vary widely between implementations, creating risks for consensus systems. Here's why and how to fix it.| hdevalence.ca
It’s 255:19AM. Do you know what your validation criteria are?| hdevalence.ca