41554 blogs · [ { "id": "01a08784-cc20-7062-8aa7-4d8c1148046a", "title": "Cinematography: safe frame rates for PWM LEDs", "url": "https://hunsley.io/posts/2026/cinematography-pwm-leds-safe-frame-rates/", "published_at": "2026-09-06T19:12:17+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c118c88bd", "title": "SFX electronics: LED skin prosthetic Plan B", "url": "https://hunsley.io/posts/2026/sfx-electronics-remote-led-skin-prosthetic-plan-b/", "published_at": "2026-09-02T09:24:10+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c11f23b34", "title": "Git: from ten thousand feet", "url": "https://hunsley.io/posts/2026/git-from-ten-thousand-feet/", "published_at": "2026-08-11T09:24:52+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1228171e", "title": "SFX electronics: remote-controlled LED skin prosthetic", "url": "https://hunsley.io/posts/2026/sfx-electronics-remote-led-skin-prosthetic/", "published_at": "2026-05-11T07:37:46+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c12505b68", "title": "OpenSCAD: things to remember", "url": "https://hunsley.io/posts/2025/openscad-tips-3d-printing/", "published_at": "2025-12-09T10:15:00+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c12c4a055", "title": "Change ringing miscellany", "url": "https://hunsley.io/posts/2025/change-ringing-misc/", "published_at": "2025-10-21T08:55:56+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c132fcae8", "title": "Change ringing: extensions to place notation", "url": "https://hunsley.io/posts/2025/change-ringing-extending-place-notation/", "published_at": "2025-10-08T07:18:00+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c13e645ac", "title": "Million Point Sculptures: an exploration tool written in Metal", "url": "https://hunsley.io/posts/2025/million-point-sculptures-in-apple-metal/", "published_at": "2025-08-27T07:43:03+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c149c6323", "title": "Swift Testing: an ergonomic combination helper", "url": "https://hunsley.io/posts/2025/swift-testing-ergonomic-combination-helper/", "published_at": "2025-07-29T07:41:46+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c14e91a3c", "title": "Graphics & geometry: the orth function in 3D", "url": "https://hunsley.io/posts/2025/graphics-geometry-orth-function-in-3d/", "published_at": "2025-07-15T20:29:35+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c15c8af61", "title": "Ohmaps: AC/DC walkabout (part 1)", "url": "https://hunsley.io/posts/2025/ohmaps-acdc-walkabout-and-extending-to-impedence/", "published_at": "2025-06-18T07:59:06+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c169a43e4", "title": "Ohmaps: crossing the Wheatstone bridge", "url": "https://hunsley.io/posts/2025/ohmaps-crossing-the-wheatstone-bridge/", "published_at": "2025-06-12T09:12:24+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1734bd4b", "title": "Electronics: cap-fun PCB fabrication results", "url": "https://hunsley.io/posts/2025/electronics-cap-fun-pcb-fabrication-result-jlcpcb/", "published_at": "2025-06-05T14:55:57+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c17c86026", "title": "Electronics: KiCad PCB fabrication and the cap-fun project", "url": "https://hunsley.io/posts/2025/electronics-kicad-pcb-fabrication-cap-fun/", "published_at": "2025-05-20T09:02:37+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c18849f66", "title": "My radio kit (2M0LBH)", "url": "https://hunsley.io/posts/2025/2m0lbh-radio-kit/", "published_at": "2025-04-29T07:09:27+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1941aaab", "title": "Foothills of Bayesian Analysis", "url": "https://hunsley.io/posts/2025/bayesian-probability/", "published_at": "2025-04-13T09:43:13+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c19c9e772", "title": "Tesselation project (and a simple concave polygon hit test algorithm)", "url": "https://hunsley.io/posts/2025/tessel25-simple-concave-polygon-hit-test-algorithm/", "published_at": "2025-03-28T10:48:21+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1aa96142", "title": "Drumming: Snare technique fundamentals", "url": "https://hunsley.io/posts/2025/snare-technique-fundamentals-drumming/", "published_at": "2025-03-22T09:56:09+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1ba714b9", "title": "Graphics and projective geometry: equation reference", "url": "https://hunsley.io/posts/2025/graphics-and-projective-geometry-equation-reference/", "published_at": "2025-03-20T20:59:37+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1ba822d0", "title": "Getting into 3D printing", "url": "https://hunsley.io/posts/2025/3d-printing-brief-introduction/", "published_at": "2025-03-15T08:51:53+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1c56d63a", "title": "Swift Testing: ready for prime time?", "url": "https://hunsley.io/posts/2025/swift-testing-framework-not-ready-for-prime-time/", "published_at": "2025-03-09T20:37:38+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1cbd8d62", "title": "Tip: quicker cable recognition", "url": "https://hunsley.io/posts/2025/cable-recognition-scheme-with-colour-markers/", "published_at": "2025-03-04T13:19:22+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1cc49295", "title": "Interview home coding tasks: my policy", "url": "https://hunsley.io/posts/2025/interviews-home-coding-tasks/", "published_at": "2025-02-25T10:25:51+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1d2e2063", "title": "Functional Swift: Currying", "url": "https://hunsley.io/posts/2025/functional-swift-currying/", "published_at": "2025-02-25T09:00:27+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1e1257f4", "title": "How’s your greenfield project game?", "url": "https://hunsley.io/posts/2025/hows-your-greenfield-project-game/", "published_at": "2025-02-14T09:27:48+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1ef3689f", "title": "jdupes: file de-duplication tool", "url": "https://hunsley.io/posts/2025/jdupes-file-deduplication-tool/", "published_at": "2025-02-05T10:55:31+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c1f69bcb4", "title": "Orthogonal flight path intersection: my own solution", "url": "https://hunsley.io/posts/2025/chatgpt-dazzle-2/orthogonal-flight-path-intersection-code-rewritten/", "published_at": "2025-02-01T09:02:15+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c20574c26", "title": "Beware of ChatGPT dazzle", "url": "https://hunsley.io/posts/2025/chatgpt-dazzle/beware-chatgpt-tinsel-slop/", "published_at": "2025-01-30T09:27:10+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c2103569d", "title": "How this site is built and published", "url": "https://hunsley.io/posts/2024/about-this-static-blog-hosting-hugo-plausible/", "published_at": "2024-12-19T09:24:37+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c22027b44", "title": "Artisan bread and pizza iOS app: details", "url": "https://hunsley.io/posts/2024/bread-dough-pizza-app-hydration-mixing-equations/", "published_at": "2024-12-15T21:28:01+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c22e3a6ea", "title": "The Lost Clock Emporium: details", "url": "https://hunsley.io/posts/2024/novel-clocks-details/", "published_at": "2024-12-11T09:58:12+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c237c2209", "title": "The Lost Clock Emporium", "url": "https://hunsley.io/posts/2024/novel-clocks/", "published_at": "2024-12-03T11:11:05+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c23bfc492", "title": "Xor Xor Gabor", "url": "https://hunsley.io/posts/2024/xor-xor-gabor/", "published_at": "2024-11-15T08:19:49+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c249abcaa", "title": "Ohmaps (part 2)", "url": "https://hunsley.io/posts/2024/image-montage-is-resistor-network-pt-2/", "published_at": "2024-11-08T19:26:43+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c249c5b3d", "title": "Ohmaps: your image montage is a resistor network", "url": "https://hunsley.io/posts/2024/image-montage-is-resistor-network/", "published_at": "2024-11-07T09:33:06+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c257a77c9", "title": "Foothills of Combinatorics (part 2)", "url": "https://hunsley.io/posts/2024/foothills-of-combinatorics-pt-2/", "published_at": "2024-11-06T18:41:38+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c25a1663c", "title": "Foothills of Combinatorics (part 1)", "url": "https://hunsley.io/posts/2024/foothills-of-combinatorics/", "published_at": "2024-11-03T10:44:08+00:00" }, { "id": "01a08784-cc20-7062-8aa7-4d8c25d5b417", "title": null, "url": "https://hunsley.io/clock/", "published_at": null }, { "id": "01a08784-cc20-7062-8aa7-4d8c26bcc5fa", "title": null, "url": "https://hunsley.io/clock2/", "published_at": null }, { "id": "01a08784-cc20-7062-8aa7-4d8c272ec215", "title": "3D Prints", "url": "https://hunsley.io/pages/prints/", "published_at": null }, { "id": "01a08784-cc20-7062-8aa7-4d8c27f2c241", "title": "Alex Hunsley", "url": "https://hunsley.io/pages/about/", "published_at": null }, { "id": "01a08784-cc20-7062-8aa7-4d8c2892868c", "title": "Contents", "url": "https://hunsley.io/pages/contents/", "published_at": null }, { "id": "01a08784-cc20-7062-8aa7-4d8c2898c2cc", "title": "Interactive Toys", "url": "https://hunsley.io/pages/jams/", "published_at": null }, { "id": "01a08784-cc20-7062-8aa7-4d8c2944a273", "title": "Touches: Grandsire Doubles", "url": "https://hunsley.io/pages/ringing/gandsire_doubles/", "published_at": null }, { "id": "01a08784-cc20-7062-8aa7-4d8c2a241be9", "title": "Touches: Little Bob Minor", "url": "https://hunsley.io/pages/ringing/little_bob_minor/", "published_at": null } ] posts Claim your blog
Back to hunsley.io
Blog · corpus.blog/blogs/hunsley.io/posts

hunsley.io

hunsley.io

2026

2025

2024

Undated