41554 blogs · [ { "id": "01a087ad-4d8a-72cd-b0b1-4a4715ac2df5", "title": "I'm Allowing AI Use in my Libraries", "url": "https://www.neilhenning.dev/posts/using-ai-in-my-libraries/", "published_at": "2026-06-05T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadba727a1d", "title": "Five Stages of Grief With the Rise of AI", "url": "https://www.neilhenning.dev/posts/five-stages-grief/", "published_at": "2026-03-18T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadba91f416", "title": "I [[musttail]] You About a Tokenizer", "url": "https://www.neilhenning.dev/posts/musttail_you_about_a_tokenizer/", "published_at": "2025-02-13T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadbb53ce41", "title": "Custom asserts in LLVM", "url": "https://www.neilhenning.dev/posts/custom-asserts-in-llvm/", "published_at": "2024-11-16T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadbb8feb7c", "title": "Your Own Constant Folder in C/C++", "url": "https://www.neilhenning.dev/posts/yourownconstantfolder/", "published_at": "2024-03-21T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadbbfa78e9", "title": "Verse Transactional Memory", "url": "https://www.neilhenning.dev/posts/verse-transactional-memory/", "published_at": "2024-03-15T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadbbfe1f2a", "title": "Updating GitHub repos to Apple Silicon", "url": "https://www.neilhenning.dev/posts/github-apple-silicon/", "published_at": "2024-02-04T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadbcc89bbe", "title": "How long does it take to compile LLVM 17 on a Raspberry PI 5", "url": "https://www.neilhenning.dev/posts/how-long-to-compile-llvm-17-on-rpi5/", "published_at": "2023-11-25T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadbdbde7ae", "title": "How long does it take to compile LLVM 17 on a Raspberry PI 4", "url": "https://www.neilhenning.dev/posts/how-long-to-compile-llvm-17-on-rpi/", "published_at": "2023-10-03T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadbeb2a8c9", "title": "My Take On Return To Office and Remote Work", "url": "https://www.neilhenning.dev/posts/my-take-on-return-to-office-and-remote-work/", "published_at": "2023-09-12T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadbf651f2f", "title": "How costly is changing the hardware rounding mode?", "url": "https://www.neilhenning.dev/posts/howcostlyischangingroundingmode/", "published_at": "2023-04-23T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadbfdaa26e", "title": "New Web Domain & Mastodon Handle", "url": "https://www.neilhenning.dev/posts/new-domain-new-mastodon-handle/", "published_at": "2023-03-26T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc0450999", "title": "Using Fibonacci Hashing in hashmap.h", "url": "https://www.neilhenning.dev/posts/fibonacci-hashing/", "published_at": "2023-03-15T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc1332d4b", "title": "Making Hashing Faster in hashmap.h", "url": "https://www.neilhenning.dev/posts/making-hashing-faster/", "published_at": "2023-03-07T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc230b8d4", "title": "New Year Cleanup", "url": "https://www.neilhenning.dev/posts/2023-new-year-cleanup/", "published_at": "2023-01-22T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc2f6350a", "title": "I'm Pretty Much Done With Twitter", "url": "https://www.neilhenning.dev/posts/pretty-much-done-with-twitter/", "published_at": "2023-01-21T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc3b7173d", "title": "I've Joined Epic to Work on Verse", "url": "https://www.neilhenning.dev/posts/joined-epic/", "published_at": "2022-11-21T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc3e81ce9", "title": "Floating Point Compression Revisited", "url": "https://www.neilhenning.dev/posts/floating-point-compression-revisited/", "published_at": "2022-10-24T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc42fa3f7", "title": "I'm Leaving Unity", "url": "https://www.neilhenning.dev/posts/leaving-unity/", "published_at": "2022-10-21T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc439c3a6", "title": "Floating Point Compression - How Small Can We Get?", "url": "https://www.neilhenning.dev/posts/2022-09-17-floatingpointcompression/", "published_at": "2022-10-17T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc43c848d", "title": "LLVM 15 Compile Time With Burst", "url": "https://www.neilhenning.dev/posts/llvm-15-speed/", "published_at": "2022-09-21T00:00:00+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc527e99b", "title": "Adding UTEST_SKIP to utest.h", "url": "https://www.neilhenning.dev/posts/utest_skip/", "published_at": "2022-07-03T12:18:05+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc5ce005b", "title": "Making the LLVM Legacy Pass Manager 1.65x Faster", "url": "https://www.neilhenning.dev/posts/making-legacy-pass-manager-1_65x-faster/", "published_at": "2022-05-12T15:18:05+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc687b3c0", "title": "Switching subprocess.h to posix_spawn", "url": "https://www.neilhenning.dev/posts/posix_spawn/", "published_at": "2022-05-01T13:18:05+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc6dd63b3", "title": "Updated Website Theming", "url": "https://www.neilhenning.dev/posts/new-website-theming/", "published_at": "2022-03-16T11:16:05+00:00" }, { "id": "01a087ad-4d90-727a-a5c3-3cadc761b1e8", "title": "A Review of the Zig Programming Language (using Advent of Code 2021)", "url": "https://www.neilhenning.dev/posts/2021-aoc-zig/", "published_at": "2021-12-27T12:18:05+00:00" }, { "id": "01a087ad-4d91-7359-bade-65db04eaac30", "title": "Porting Burst to the New LLVM Pass Manager", "url": "https://www.neilhenning.dev/posts/llvm-new-pass-manager/", "published_at": "2021-05-27T14:59:05+00:00" }, { "id": "01a087ad-4d91-7359-bade-65db04f03dfc", "title": "Introducing envcache", "url": "https://www.neilhenning.dev/posts/introducing-envcache/", "published_at": "2021-03-27T07:59:05+00:00" }, { "id": "01a087ad-4d91-7359-bade-65db059c0280", "title": "Early 2021 Mega Update", "url": "https://www.neilhenning.dev/posts/early-2021-mega-update/", "published_at": "2021-02-08T19:30:39+00:00" }, { "id": "01a087ad-4d91-7359-bade-65db05a75302", "title": "How I Structure My Working Day", "url": "https://www.neilhenning.dev/posts/how-i-structure-my-working-day/", "published_at": "2021-02-08T19:30:39+00:00" }, { "id": "01a087ad-4d91-7359-bade-65db0671483c", "title": "Advent of Code 2020 - Review", "url": "https://www.neilhenning.dev/posts/aoc2020_in_review/", "published_at": "2020-12-31T19:50:39+00:00" }, { "id": "01a087ad-4d91-7359-bade-65db06e8adb5", "title": "Advent of Code 2020", "url": "https://www.neilhenning.dev/posts/aoc2020/", "published_at": "2020-12-01T18:50:39+00:00" }, { "id": "01a087ad-4d91-7359-bade-65db06f21681", "title": "Exploring Hourglass APIs in Rust", "url": "https://www.neilhenning.dev/posts/hourglass_apis_in_rust/", "published_at": "2020-10-24T07:08:47+00:00" }, { "id": "01a087ad-4d94-711f-b10d-622995d5c78d", "title": "Introducing hashmap.h", "url": "https://www.neilhenning.dev/posts/introducing-hashmap-h/", "published_at": "2020-06-28T15:28:45+00:00" }, { "id": "01a087ad-4d94-711f-b10d-622995d90eb5", "title": "Asynchronous Reading in subprocess.h", "url": "https://www.neilhenning.dev/posts/subprocess-h-async-reading/", "published_at": "2020-06-26T12:11:31+00:00" }, { "id": "01a087ad-4d94-711f-b10d-622996be1296", "title": "Adding fixtures to ubench.h", "url": "https://www.neilhenning.dev/posts/adding_fixtures_ubench_h/", "published_at": "2020-06-21T11:08:47+00:00" }, { "id": "01a087ad-4d94-711f-b10d-6229973f5dad", "title": "I'm now 99% Confident in ubench.h", "url": "https://www.neilhenning.dev/posts/switching_ubench_h_to_confidence_interval/", "published_at": "2020-06-20T18:21:42+00:00" }, { "id": "01a087ad-4d94-711f-b10d-62299784610a", "title": "White Guilt and Juneteenth", "url": "https://www.neilhenning.dev/posts/white_guilt_and_juneteenth/", "published_at": "2020-06-19T16:01:42+00:00" }, { "id": "01a087ad-4d94-711f-b10d-622997c6b906", "title": "Introducing ubench.h", "url": "https://www.neilhenning.dev/posts/introducing_ubench_h/", "published_at": "2020-06-15T18:21:42+00:00" }, { "id": "01a087ad-4d94-711f-b10d-6229983680d2", "title": "Simple C Command Line Parser", "url": "https://www.neilhenning.dev/posts/simple-c-command-line-parser/", "published_at": "2020-05-31T11:36:33+00:00" }, { "id": "01a087ad-4d94-711f-b10d-622998a245aa", "title": "utest.h Now Supports Whole Program Optimization", "url": "https://www.neilhenning.dev/posts/utest-h-supports-wpo/", "published_at": "2020-05-27T05:20:33+00:00" }, { "id": "01a087ad-4d94-711f-b10d-622998e3cf05", "title": "How to Test Rust Command Line Applications", "url": "https://www.neilhenning.dev/posts/rust-lit/", "published_at": "2020-04-26T12:44:14+00:00" }, { "id": "01a087ad-4d95-7346-8326-8614055f8482", "title": "Fixed Up RSS", "url": "https://www.neilhenning.dev/posts/fixed-up-rss/", "published_at": "2020-04-01T18:41:55+00:00" }, { "id": "01a087ad-4d95-7346-8326-8614056a477d", "title": "Lessons of a Remote Worker", "url": "https://www.neilhenning.dev/posts/lessons_of_a_remote_worker/", "published_at": "2020-03-15T00:00:00+00:00" }, { "id": "01a087ad-4d95-7346-8326-861405a5c2ee", "title": "Extracting the json.h README.md Code Samples For Compiling", "url": "https://www.neilhenning.dev/posts/json_h_readme_md/", "published_at": "2020-01-15T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c0439aa0", "title": "C89 & Single Header json.h", "url": "https://www.neilhenning.dev/posts/json-h-updates/", "published_at": "2020-01-02T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c07cfb0f", "title": "Some Miscellaneous Library Improvements", "url": "https://www.neilhenning.dev/posts/library-updates/", "published_at": "2020-01-01T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c10990d6", "title": "utest.h", "url": "https://www.neilhenning.dev/utest_h/", "published_at": "2020-01-01T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c1b6e542", "title": "FPSCEV - Improving the Range Analysis", "url": "https://www.neilhenning.dev/posts/fpscev-improved-range/", "published_at": "2019-06-29T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c2720250", "title": "Farewell AMD / Hello Unity", "url": "https://www.neilhenning.dev/posts/last-day-amd/", "published_at": "2019-06-21T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c35b545c", "title": "Using Floating-Point Scalar Evolution to Simplify Instructions", "url": "https://www.neilhenning.dev/posts/fpscev-inst-simplify/", "published_at": "2019-06-20T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c42091dc", "title": "Using Floating-Point Scalar Evolution to Propagate Fast-Math Flags", "url": "https://www.neilhenning.dev/posts/fpscev-fast-math-propagation/", "published_at": "2019-06-12T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c4859b4d", "title": "An Experimental Floating-Point Scalar Evolution", "url": "https://www.neilhenning.dev/posts/fpscev/", "published_at": "2019-06-09T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c54db8f5", "title": "Comparing utest.h against googletest and jctest", "url": "https://www.neilhenning.dev/posts/utest-h-performance/", "published_at": "2019-05-01T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c62c1488", "title": "Switching my blog to Hugo", "url": "https://www.neilhenning.dev/posts/switching-to-hugo/", "published_at": "2019-02-17T00:00:00+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c6f6e615", "title": "Introducing bump_alloc - my new Rust crate", "url": "https://www.neilhenning.dev/posts/introducing-bump_alloc-my-new-rust-crate/", "published_at": "2019-02-03T17:02:09+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c77c8053", "title": "2018 Review", "url": "https://www.neilhenning.dev/posts/2018-review/", "published_at": "2018-12-31T22:32:12+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c7f4b1fe", "title": "Baby's First Crate: cpp_new", "url": "https://www.neilhenning.dev/posts/babys-first-crate-cpp_new/", "published_at": "2018-12-04T21:57:20+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c8119620", "title": "So long Codeplay, thanks for all the fish!", "url": "https://www.neilhenning.dev/posts/so-long-codeplay-thanks-for-all-the-fish/", "published_at": "2018-06-01T09:22:26+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c87d1da1", "title": "1.22x Performance Improvements in json.h!", "url": "https://www.neilhenning.dev/posts/1-22x-performance-improvements-in-json-h/", "published_at": "2018-05-11T08:27:05+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c8bbe062", "title": "Optimizing LLVM IR from the C API", "url": "https://www.neilhenning.dev/posts/optimizing-llvm-ir-from-the-c-api/", "published_at": "2018-04-05T20:35:55+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1c998c091", "title": "How to read & write LLVM bitcode", "url": "https://www.neilhenning.dev/posts/how-to-read-write-llvm-bitcode/", "published_at": "2018-03-29T20:57:22+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1ca41ca02", "title": "Adding Latin and Greek support to utf8.h!", "url": "https://www.neilhenning.dev/posts/adding-latin-and-greek-support-to-utf8-h/", "published_at": "2018-02-11T22:37:06+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1ca683b5d", "title": "Introducing process.h!", "url": "https://www.neilhenning.dev/posts/introducing-process-h/", "published_at": "2017-12-24T16:45:36+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1cb0cbd22", "title": "Cross compiling Sollya to Windows with Emscripten", "url": "https://www.neilhenning.dev/posts/cross-compiling-sollya-to-windows-with-emscripten/", "published_at": "2017-11-13T10:31:51+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1cb92f67b", "title": "LLVM & CRT - auto-magically selecting the correct CRT", "url": "https://www.neilhenning.dev/posts/llvm-crt-auto-magically-selecting-the-correct-crt/", "published_at": "2017-11-06T12:14:03+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1cbc755fc", "title": "Slides from my Khronos Munich Chapter talk", "url": "https://www.neilhenning.dev/posts/slides-from-my-khronos-munich-chapter-talk/", "published_at": "2017-10-28T16:45:11+00:00" }, { "id": "01a087ad-4d98-7141-9f26-12a1cc4e561c", "title": "I'm speaking at the Munich Khronos Chapter Meeting 13th October 2017", "url": "https://www.neilhenning.dev/posts/im-speaking-at-the-munich-khronos-chapter-meeting-13th-october-2017/", "published_at": "2017-09-07T09:56:03+00:00" }, { "id": "01a087ad-4da3-717d-bac2-68546105b923", "title": "OpenCL -> Vulkan: A Porting Guide (#3)", "url": "https://www.neilhenning.dev/posts/opencl-vulkan-a-porting-guide-3/", "published_at": "2017-06-29T16:47:42+00:00" }, { "id": "01a087ad-4da3-717d-bac2-685461af6b9e", "title": "OpenCL -> Vulkan: A Porting Guide (#2)", "url": "https://www.neilhenning.dev/posts/opencl-vulkan-a-porting-guide-2/", "published_at": "2017-06-16T13:20:36+00:00" }, { "id": "01a087ad-4da3-717d-bac2-68546252f492", "title": "OpenCL -> Vulkan: A Porting Guide (#1)", "url": "https://www.neilhenning.dev/posts/opencl-vulkan-a-porting-guide-1/", "published_at": "2017-06-06T19:24:08+00:00" }, { "id": "01a087ad-4da3-717d-bac2-685463206c61", "title": "Adding JSON 5 to json.h", "url": "https://www.neilhenning.dev/posts/adding-json-5-to-json-h/", "published_at": "2017-03-11T19:49:48+00:00" }, { "id": "01a087ad-4da3-717d-bac2-685463f637ec", "title": "Adding loops (MPC -> LLVM for the Neil Language #5)", "url": "https://www.neilhenning.dev/posts/adding-loops-mpc-llvm-for-the-neil-language-5/", "published_at": "2016-10-16T18:45:24+00:00" }, { "id": "01a087ad-4da3-717d-bac2-685464d9b16c", "title": "Adding branching (MPC -> LLVM for the Neil Language #4)", "url": "https://www.neilhenning.dev/posts/adding-branching-mpc-llvm-for-the-neil-language-4/", "published_at": "2016-10-06T11:53:45+00:00" }, { "id": "01a087ad-4da3-717d-bac2-685464f501d8", "title": "Introducing YARI-V - an experiment on SPIR-V compression", "url": "https://www.neilhenning.dev/posts/introducing-yari-v-an-experiment-on-spir-v-compression/", "published_at": "2016-09-29T14:13:54+00:00" }, { "id": "01a087ad-4da3-717d-bac2-68546588ae95", "title": "spirv-stats update - exposing more information", "url": "https://www.neilhenning.dev/posts/spirv-stats-update-exposing-more-information/", "published_at": "2016-09-25T19:42:23+00:00" }, { "id": "01a087ad-4da3-717d-bac2-685465a543ab", "title": "spirv-stats - a tool to output statistics of your SPIR-V shader modules", "url": "https://www.neilhenning.dev/posts/spirv-stats-a-tool-to-output-statistics-of-your-spir-v-shader-modules/", "published_at": "2016-09-21T14:59:43+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00aac15722e", "title": "Adding type identifiers (MPC -> LLVM for the Neil Language #3)", "url": "https://www.neilhenning.dev/posts/adding-type-identifiers-mpc-llvm-for-the-neil-language-3/", "published_at": "2016-09-18T13:36:28+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00aac53e5e3", "title": "json.h update - fixing bugs found by nativejson-benchmark", "url": "https://www.neilhenning.dev/posts/json-h-update-fixing-bugs-found-by-nativejson-benchmark/", "published_at": "2016-09-15T14:41:02+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00aad22ed8f", "title": "Cleaning up the parser (MPC -> LLVM for the Neil Language #2)", "url": "https://www.neilhenning.dev/posts/cleaning-up-the-parser-mpc-llvm-for-the-neil-language-2/", "published_at": "2016-09-09T21:10:30+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00aadd043eb", "title": "Hooking up MPC & LLVM", "url": "https://www.neilhenning.dev/posts/hooking-up-mpc-llvm/", "published_at": "2016-08-28T20:47:41+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00aae721ec1", "title": "A simple Vulkan Compute example", "url": "https://www.neilhenning.dev/posts/a-simple-vulkan-compute-example/", "published_at": "2016-05-29T19:51:43+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00aaeaeba40", "title": "Allocators in json.h!", "url": "https://www.neilhenning.dev/posts/allocators-in-json-h/", "published_at": "2016-03-27T20:11:38+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00aaf14ba28", "title": "git pre-commit clang-format hook", "url": "https://www.neilhenning.dev/posts/git-pre-commit-clang-format-hook/", "published_at": "2016-01-11T11:54:15+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00aafb70b33", "title": "Full Simplified JSON support in json.h", "url": "https://www.neilhenning.dev/posts/full-simplified-json-support-in-json-h/", "published_at": "2015-12-23T17:28:07+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab0043569", "title": "Introducing utest.h!", "url": "https://www.neilhenning.dev/posts/introducing-utest-h/", "published_at": "2015-12-11T15:34:40+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab0b5ee28", "title": "(Partial) Simplified JSON support in json.h", "url": "https://www.neilhenning.dev/posts/partial-simplified-json-support-in-json-h/", "published_at": "2015-12-04T09:51:02+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab0c13b99", "title": "json.h performance (update!)", "url": "https://www.neilhenning.dev/posts/json-h-performance-update/", "published_at": "2015-09-14T14:41:51+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab10be232", "title": "json.h performance (vs other C/C++ JSON parsers)", "url": "https://www.neilhenning.dev/posts/json-h-performance-vs-other-cc-json-parsers/", "published_at": "2015-08-24T13:10:34+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab17e29c8", "title": "json.h", "url": "https://www.neilhenning.dev/posts/json-h/", "published_at": "2015-08-18T09:05:41+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab22f1359", "title": "utf8.h progress!", "url": "https://www.neilhenning.dev/posts/utf8-h-progress/", "published_at": "2015-07-23T15:14:15+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab3258a67", "title": "utf8.h", "url": "https://www.neilhenning.dev/posts/utf8-h/", "published_at": "2015-07-07T22:47:16+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab3990463", "title": "Length vs size for array dimensions", "url": "https://www.neilhenning.dev/posts/length-vs-size-for-array-dimensions/", "published_at": "2015-06-01T19:49:09+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab442861b", "title": "On the use and abuse of size_t", "url": "https://www.neilhenning.dev/posts/on-the-use-and-abuse-of-size_t/", "published_at": "2015-05-25T22:06:25+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab45c629d", "title": "Connecting a build node to Jenkins on Raspberry Pi 2", "url": "https://www.neilhenning.dev/posts/connecting-a-build-node-to-jenkins-on-raspberry-pi-2/", "published_at": "2015-05-21T22:13:30+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab53a7536", "title": "Running your first job on the Raspberry Pi 2 / Jenkins", "url": "https://www.neilhenning.dev/posts/running-your-first-job-on-the-raspberry-pi-2-jenkins/", "published_at": "2015-05-19T21:53:42+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab6109eae", "title": "Installing Jenkins on Raspberry Pi 2", "url": "https://www.neilhenning.dev/posts/installing-jenkins-on-raspberry-pi-2/", "published_at": "2015-05-15T22:11:14+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab6b7a4a7", "title": "Khronos/EuroLLVM talk - Why SPIR-V?", "url": "https://www.neilhenning.dev/posts/khronoseurollvm-talk-why-spir-v/", "published_at": "2015-04-17T08:32:30+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab7892021", "title": "Raspberry Pi 2 Dot Product Test", "url": "https://www.neilhenning.dev/raspberry-pi-2-dot-product-test/", "published_at": "2015-04-03T21:44:35+00:00" }, { "id": "01a087ad-4da4-7038-a8e0-a00ab7a77591", "title": "life log", "url": "https://www.neilhenning.dev/lifelog/", "published_at": null } ] posts Claim your blog
Back to neilhenning.dev
Blog · corpus.blog/blogs/neilhenning.dev/posts

neilhenning.dev

neilhenning.dev

2026

2025

2024

2023

2022

2021

2020

2019

2018

2017

2016

2015

Undated