annies-canyon 2024-07-10 welcome-utah 2024-06-28 alcatraz-seaguls 2024-06-19 alcatraz-seaguls-moon 2024-06-19 alcatraz-seagul-fireplace 2024-06-19 sf-from-alcatraz-4ef8db 2024-06-19 alcatraz-seagul 2024-06-19 440-n-wells-e869c0 2024-06-12 2024-04-19-bloom 2024-04-19 2024-04-12-break 2024-04-12 2024-04-03-mx 2024-04-03 2024-04-02-chichen-itza 2024-04-02 2024-04-02-fl-tr 2024-04-02 2024-03-24-cat-brick 2024-03-24 2024-03-09-moss 2024-03-09 440-n-wells-5ffd46 2024-02-28 duck-b-2024-02-26 2024-02-26 duck-a-2024-02-26 2024-02-26 sf-99cd56 2024-02-17 www 2024-02-04 surf-the-net 2024-02-04 sketching-529e48 2024-01-26 sketching-0fe4da8 2024-01-25 About About 2024-01-23 2024-01-20-uptown 2024-01-20 2024-01-01-new-year 2024-01-01 2023-12-23-IMG_2369 2023-12-23 2023-12-09-IMG_2271 2023-12-09 2023-11-27-winter-leaves 2023-11-27 2023-11-18-cat-radiator 2023-11-18 2023-10-08-ohare 2023-10-08 2023-10-05-the-generationals 2023-10-05 2023-09-23-garfield-park-conservatory-night 2023-09-23 2023-08-07-acadia 2023-08-07 2023-08-07-acadia-lookout 2023-08-07 2023-08-06-acadia 2023-08-06 2023-08-06-acadia-rock 2023-08-06 2023-07-13-rock-island-boat-house 2023-07-13 2023-07-13-rock-island-sunset 2023-07-13 2023-07-13-sunset 2023-07-13 Building a music making app with Swift (Part 1 of N) A little beat making app with Swift and AudioKit. Went from design to prototype in about a 10 hours of work, and about another 20 to get it to something a little more polished. Building a music making app with Swift (Part 1 of N) 2023-07-09 2023-06-30-the-mountain-goats 2023-06-30 Status update - May 2023 Here's what I've been doing in May. Status update - May 2023 2023-06-05 2023-05-29-nylon-stitching 2023-05-29 2023-05-27-confluence-great-blue 2023-05-27 2023-05-27-confluence-with-rocks 2023-05-27 2023-05-13-alice-lake-michigan 2023-05-13 Status update - April 2023 What I've been up to in April. Status update - April 2023 2023-05-09 Git static site generator tool Simple static html site generator for multiple git repos. Git static site generator tool 2023-04-07 Excel pivot cache madness An archaic and terrible corner of Excel. Excel pivot cache madness 2023-01-24 SQLite notes Some personal notes on SQLite. SQLite notes 2023-01-22 Postgres notes Personal notes on Postgres. Postgres notes 2023-01-19 Makefile notes Just some useful notes on Makefiles. Makefile notes 2022-10-27 2022-10-13-arches-park-near-balanced-rock 2022-10-13 2022-10-13-beneath-pine-tree-arch 2022-10-13 2022-10-13-colorado-river 2022-10-13 2022-10-13-crow 2022-10-13 2022-10-13-dead-horse-state-park 2022-10-13 2022-10-13-delicate-arch 2022-10-13 2022-10-13-devils-backbone-highway 2022-10-13 2022-10-13-goat 2022-10-13 2022-10-13-lizard 2022-10-13 2022-10-13-more-canyon-lands 2022-10-13 2022-10-13-sandstone 2022-10-13 2022-10-13-self 2022-10-13 2022-10-13-the-narrows 2022-10-13 2022-10-13-zion 2022-10-13 2022-10-10-computer-brain 2022-10-10 2022-08-01-mushroom 2022-08-01 2022-08-01-porch-coffee 2022-08-01 2022-07-27-corner-cat 2022-07-27 Docs, tests, design, and RFCs RFCs, designs, tests, and documentation can tell you when you're getting it right. Docs, tests, design, and RFCs 2022-06-18 F7 spreadsheet engine F7 is a spreadsheet engine that can parse and run formulas like a spreadsheet. F7 spreadsheet engine 2022-06-06 2022-06-01-blue-line 2022-06-01 Quick XLSX automation Cheap and easy way to run XLSX files with containers and LibreOffice. Quick XLSX automation 2022-05-29 Custom scrollbars in Flutter Building custom scrollbars in Flutter with Dart. Custom scrollbars in Flutter 2022-05-24 2022-05-14-tallest-brick-skyscraper 2022-05-14 Simple Typescript performance functions Simple functions and annotations to add to other functions to monitor performance. Simple Typescript performance functions 2022-04-07 A poem made by searching for "can always" in my programming notes A poem made by searching for 'can always' in my programming notes A poem made by searching for "can always" in my programming notes 2022-01-27 2022-01-20-jumbo-rocks-joshua-tree 2022-01-20 2022-01-20-san-diego-pacific-sunset 2022-01-20 2022-01-19-cacti 2022-01-19 2022-01-19-cacti-glow 2022-01-19 2022-01-19-driving 2022-01-19 2022-01-19-inside-the-rock 2022-01-19 2022-01-19-joshua-tree-shadow 2022-01-19 2022-01-19-off-in-the-distance 2022-01-19 2022-01-19-peach-sky 2022-01-19 2022-01-19-twenty-nine-palms 2022-01-19 2022-01-18-scrub-jay 2022-01-18 2022-01-17-chicago-alley 2022-01-17 2022-01-17-pelican-san-diego 2022-01-17 Designing and building a couch Here are some pictures of the design and build, which was in total around 80 hours. Designing and building a couch 2021-12-19 Status update - November 2021 An update for the month of November Status update - November 2021 2021-12-05 Html input auto-width work-around Making the html input element auto-width work based in interior value. Html input auto-width work-around 2021-11-28 Excel and beyond The good, the bad, and the ugly of Excel. Excel and beyond 2021-11-04 Status update - October 2021 October updates and more. Status update - October 2021 2021-11-02 Status update - September 2021 Here's a little of what I've been up to in September. Status update - September 2021 2021-10-02 Status update - August 2021 Going to try something new. Just listing things that I learn each month. Not on any particular topic, just writing them down as I learn them. Status update - August 2021 2021-08-31 PSQL functions for simpler queries Use custom PG functions to raise not-found, and permission-denied errors inside of Postgres to save the round-trip time for common auth-wrapped, and dependency-prefaced queries. PSQL functions for simpler queries 2021-08-09 2021-07-16-accidental-shot 2021-07-16 Writing tests is different from writing code Abstraction and factoring aren't super helpful when you're writing tests. Writing tests is different from writing code 2021-05-16 Running CI tests with two steps Testing software is hard, and writing YAML configs makes it harder. A simple two-step process makes it easier to reason about. Running CI tests with two steps 2021-03-14 2021-02-01-snowstorm-chicago 2021-02-01 2021-02-01-sub-zero-chicago 2021-02-01 2020-12-01-ice-crystals 2020-12-01 2020-12-01-ice-crystals-b 2020-12-01 2020-12-01-ice-crystals-c 2020-12-01 Rust macro for enum variant pseudo-subtyping Getting closer to treating enum variants like types through the use of simple generative macros. Rust macro for enum variant pseudo-subtyping 2020-10-14 Writing on a single-purpose device Two months of using an AlphaSmart Neo2 - a 16-year-old, single-purpose word processor that costs about $40. Writing on a single-purpose device 2020-10-11 Elmore Leonard's 'Ten Rules For Writing' for design Elmore Leonard's 'Ten Rules For Writing', roughly applied to design. Elmore Leonard's 'Ten Rules For Writing' for design 2020-08-29 Notes from 'Programming Rust' book Just some from the 'Programming Rust' O'Reilly book. Notes from 'Programming Rust' book 2020-07-04 2020-06-01-balloon-appleton 2020-06-01 CSS For range highlighting Highlighting elements using CSS only. CSS For range highlighting 2020-04-15 2020-03-01-longboard-ca 2020-03-01 2020-03-01-longboard-ca-alt 2020-03-01 2020-03-01-mountain-view-sky-alt 2020-03-01 2020-02-10-redwoods-ca 2020-02-10 2020-01-10-ikea-mountain-view 2020-01-10 2019-12-01-appleton-winter 2019-12-01 2019-10-01-chicago-sky 2019-10-01 2019-10-01-gull 2019-10-01 2019-09-01-austria 2019-09-01 Spreadsheet grid design Improving spreadsheet grid design by thinking of the grid as an item inside of a container, instead of a container with items. Spreadsheet grid design 2019-08-10 Review of spreadsheet user interfaces You can find these images with a quick image search, but I wanted examples of each on one place so I can see the general UI patterns. What are the common elements that a user would see when using them? What do they have in common beyond the grid? Review of spreadsheet user interfaces 2019-08-06 Spreadsheet reading list A list of stuff about spreadsheets. Spreadsheet reading list 2019-08-06 2019-05-01-treehouse 2019-05-01 2019-01-01-mirror 2019-01-01 2018-12-01-san-diego 2018-12-01 2018-11-01-ben-and-dad-christmas-tree 2018-11-01 2018-09-10-rain-on-booth-lake 2018-09-10 2018-07-01-garage-a 2018-07-01 2018-07-01-garage-c 2018-07-01 Acoustic fingerprinting television Let's jump to the good stuff: How hard is it to create a program that can acoustic fingerprint a television show? Can we identify the playback position of a video based on audio tracks? For this blog post I'll use The Drew Carey Show, because it's the only show of which I have multiple seasons. Acoustic fingerprinting television 2018-02-06 2018-02-01-snowshoe 2018-02-01 horse-lobby-painting-draft-2018-01-02 2018-01-02 2018-01-01-the-loop-winter 2018-01-01 1.0.1 Release of js-spreadsheet Added 121 formulas, and fixed a few bugs, made Cells easier to handle, added support for scientific notation, clarified license, cleaned up parser a bit, added support for comma separated lists and much more. 1.0.1 Release of js-spreadsheet 2017-12-03 garage-painting-draft-2017-11-19 2017-11-19 2017-11-01-chicago 2017-11-01 2017-09-01-edinburgh 2017-09-01 2017-09-01-scotland 2017-09-01 2017-09-01-scotland-ben-neigh-a 2017-09-01 2017-09-01-scotland-ben-neigh-b 2017-09-01 2017-09-01-scotland-ben-neigh-other-side 2017-09-01 2017-09-01-scotland-museum-stairs 2017-09-01 2017-09-01-scotland-red-skyline 2017-09-01 2017-09-01-scotland-sunset 2017-09-01 Building a spreadsheet with formulas in javascript The first crack at trying to write a spreadsheet engine in typescript & javascript. Parser and grammars were mostly written by hand or converted from other OSS, which made this a lot of fun to write, but probably filled with all sorts of errors. Building a spreadsheet with formulas in javascript 2017-04-26 A guesser's guide to Google Spreadsheets Stumbling through types, formulas, and errors in Google Sheets. I wrote this long before I had a firm grasp of spreadsheets, and their inner-workings, so this might best be described as my interior monologue when trying to figure out how and why spreadsheets sometimes do weird and interesting things. A guesser's guide to Google Spreadsheets 2017-04-04 2017-01-01-shark-bowl 2017-01-01 Procedural terrain generation Using procedural algorithms to generate terrain maps. Procedural terrain generation 2016-11-30 From IDE to binary: writing Go in InteliJ Getting the plug-in right, and living in the IDE. This was written before Goland came out, but here for posterity. From IDE to binary: writing Go in InteliJ 2016-11-05 2016-10-10-utah-a 2016-10-10 2016-10-10-utah-b 2016-10-10 2016-10-10-utah-c 2016-10-10 2016-05-01-chicago-above 2016-05-01 2016-02-01-cables 2016-02-01 Captain's Log: a timestamped note taking app An electron app that uses a command-line like log to keep track of what you're doing and working on, saving it to a YAML file. I used this for a while at work to track some trial-and-error performance tuning of Java apps. Not being able to go back and change your text frees you from the desire to make each sentence perfect. Captain's Log: a timestamped note taking app 2015-09-26 2014-10-01-cabin 2014-10-01 Hexcraft: a Minecraft-like hexagonal tile editor Hexagonal tiles that you can edit like a voxel-explorer game. Hexcraft: a Minecraft-like hexagonal tile editor 2014-03-06 Live special effects for theatre performance with the Kinect Shakespeare's Hamlet opens with a scene of two sentries discovering the Ghost of King Hamlet. More often than not, the part of the ghost is played by an actor in white makeup walking on stage to deliver his lines. I approached this project with the idea that through live motion capture and replay, theatre visual effects can serve to strengthen a performance, and breath new life to dead characters, even the ghosts. Live special effects for theatre performance with the Kinect 2013-12-06 2013-07-01-dad-cabin 2013-07-01
You can also browse by tags, or months, or archived.