41554 blogs · [ { "id": "01a0875f-f827-7061-9fc6-1388dab54707", "title": "Git on pkarr", "url": "http://chriswarbo.net/blog/2026-05-15-git_on_pkarr.html", "published_at": "2026-05-15T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388db973c8b", "title": "DNSLink on pkarr", "url": "http://chriswarbo.net/blog/2026-05-08-pkdnslink.html", "published_at": "2026-05-08T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388dc1f9e36", "title": "PKDNS", "url": "http://chriswarbo.net/blog/2026-05-07-pkdns.html", "published_at": "2026-05-07T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388dccd6279", "title": "SHA on the fly", "url": "http://chriswarbo.net/blog/2026-04-30-sha_on_the_fly.html", "published_at": "2026-04-30T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388dd6dc323", "title": "content-link", "url": "http://chriswarbo.net/blog/2026-03-24-content_link.html", "published_at": "2026-03-24T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388de4e3151", "title": "Multibase CLI", "url": "http://chriswarbo.net/blog/2025-12-07-multibase_cli.html", "published_at": "2025-12-07T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388deb2498e", "title": "Rationalising Denominators 6: Rationalising Denominators", "url": "http://chriswarbo.net/blog/2025-09-26-rationalising_denominators_6_rationalising_denominators.html", "published_at": "2025-09-26T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388dec3cbf3", "title": "Rationalising Denominators 5: Roots of Unity", "url": "http://chriswarbo.net/blog/2025-09-25-rationalising_denominators_5_roots_of_unity.html", "published_at": "2025-09-25T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388df5f9fd8", "title": "Mobile NixOS on PinePhone", "url": "http://chriswarbo.net/blog/2025-06-25_mobile-nixos.html", "published_at": "2025-06-25T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e05aa6f1", "title": "Finite-choice logic programming", "url": "http://chriswarbo.net/blog/2025-04-23-finite_choice_logic_programming.html", "published_at": "2025-04-23T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e0e7774a", "title": "Upgrading Ubuntu’s Nix", "url": "http://chriswarbo.net/blog/2025-04-16-upgrading_ubuntu_nix.html", "published_at": "2025-04-16T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e13c84e7", "title": "Git in Nix via IPFS", "url": "http://chriswarbo.net/blog/2025-03-16-nix_ipfs.html", "published_at": "2025-03-16T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e1c8a310", "title": "Turing machine tapes", "url": "http://chriswarbo.net/blog/2025-02-05-turing_machine_tapes.html", "published_at": "2025-02-05T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e25ccaad", "title": "Rationalising Denominators 4: Ratios", "url": "http://chriswarbo.net/blog/2024-11-13-rationalising_denominators_4_ratios.html", "published_at": "2024-11-13T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e29d99b4", "title": "Rationalising Denominators 3: Sums", "url": "http://chriswarbo.net/blog/2024-11-08-rationalising_denominators_3_sums.html", "published_at": "2024-11-08T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e3597baa", "title": "Rationalising Denominators 2: Products", "url": "http://chriswarbo.net/blog/2024-11-05-rationalising_denominators_2_products.html", "published_at": "2024-11-05T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e38663e0", "title": "Rationalising Denominators 1: Fractional Powers", "url": "http://chriswarbo.net/blog/2024-11-03-rationalising_denominators_1_powers.html", "published_at": "2024-11-03T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e45c20d5", "title": "Determinism", "url": "http://chriswarbo.net/blog/2024-06-29-determinism.html", "published_at": "2024-06-29T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e5468195", "title": "Nix is a build system", "url": "http://chriswarbo.net/blog/2024-05-24-nix_build_system.html", "published_at": "2024-05-24T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e5bb3ed5", "title": "Lock Files Considered Harmful", "url": "http://chriswarbo.net/blog/2024-05-17-lock_files_considered_harmful.html", "published_at": "2024-05-17T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e6298eb7", "title": "Spigot, and rational approximations", "url": "http://chriswarbo.net/blog/2024-05-14-spigot.html", "published_at": "2024-05-14T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e6649e0f", "title": "SK in egglog: part 4, extensional equality", "url": "http://chriswarbo.net/blog/2024-05-10-sk_logic_in_egglog_4.html", "published_at": "2024-05-10T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e7632785", "title": "Unlocking the GNOME keyring", "url": "http://chriswarbo.net/blog/2024-04-08-unlocking_gnome_keyring.html", "published_at": "2024-04-08T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e7983369", "title": "SK logic in egglog: part 3, falsifying myself", "url": "http://chriswarbo.net/blog/2024-04-02-sk_logic_in_egglog_3.html", "published_at": "2024-04-02T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e83549cc", "title": "SK logic in egglog: part 2, property-checking extensionality", "url": "http://chriswarbo.net/blog/2024-03-17-sk_logic_in_egglog_2.html", "published_at": "2024-03-17T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e92169c1", "title": "SK logic in egglog: part 1, encoding and reduction", "url": "http://chriswarbo.net/blog/2024-02-25-sk_logic_in_egglog_1.html", "published_at": "2024-02-25T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388e9bc64ca", "title": "Git pages update", "url": "http://chriswarbo.net/blog/2024-02-21-git_pages_update.html", "published_at": "2024-02-21T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388ea86fc5f", "title": "Dependency solving in Nix", "url": "http://chriswarbo.net/blog/2024-02-15-nix_dependencies.html", "published_at": "2024-02-15T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388eac96608", "title": "Renaming files inside tarballs", "url": "http://chriswarbo.net/blog/2024-01-31-renaming_in-tarballs.html", "published_at": "2024-01-31T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388eaf1b673", "title": "Nix caching on a LAN", "url": "http://chriswarbo.net/blog/2024-01-23-nix_cache_on_lan.html", "published_at": "2024-01-23T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388ebdd36cd", "title": "Lazy Test Generators", "url": "http://chriswarbo.net/blog/2024-01-19-lazy_test_generators.html", "published_at": "2024-01-19T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388ebe61f81", "title": "The Backwards Compatibility of Text", "url": "http://chriswarbo.net/blog/2024-01-15-backwards_compatibility.html", "published_at": "2024-01-15T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388ec71a96e", "title": "Nix from the bottom up", "url": "http://chriswarbo.net/blog/2024-01-14-nix_bottom_up.html", "published_at": "2024-01-14T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388eccbd94b", "title": "Boltzmann RAM", "url": "http://chriswarbo.net/blog/2024-01-13-boltzmann_ram.html", "published_at": "2024-01-13T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388ed39108f", "title": "Haskell Parsing", "url": "http://chriswarbo.net/blog/2024-01-11-haskell_parsing.html", "published_at": "2024-01-11T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388edf842a9", "title": "Playing with MathML", "url": "http://chriswarbo.net/blog/2024-01-08_mathml.html", "published_at": "2024-01-08T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388ee512843", "title": "Useful info I learned from playing with GSM", "url": "http://chriswarbo.net/blog/2023-10-27-playing_with_gsm.html", "published_at": "2023-10-27T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388eec97a8a", "title": "Environment Variables are Dynamically Scoped Keyword Arguments", "url": "http://chriswarbo.net/blog/2021-04-08-env_vars.html", "published_at": "2021-04-08T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388eef8a5d8", "title": "More Testing Terminology", "url": "http://chriswarbo.net/blog/2020-07-07-more_testing_terminology.html", "published_at": "2020-07-07T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388efdadfb5", "title": "Haskell Strings", "url": "http://chriswarbo.net/blog/2020-06-08-haskell_strings.html", "published_at": "2020-06-08T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f0a2c8ed", "title": "The Metric Red Herring", "url": "http://chriswarbo.net/blog/2020-05-22-metric_red_herring.html", "published_at": "2020-05-22T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f0ea4e55", "title": "Improving our Units", "url": "http://chriswarbo.net/blog/2020-05-22-improving_our_units.html", "published_at": "2020-05-22T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f155cd8b", "title": "GADT Casting", "url": "http://chriswarbo.net/blog/2020-05-20-gadt_casting.html", "published_at": "2020-05-20T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f1d3bf80", "title": "Bottom, Null, Unit and Void", "url": "http://chriswarbo.net/blog/2020-02-09-bottom.html", "published_at": "2020-02-09T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f267e1d0", "title": "Clever Code", "url": "http://chriswarbo.net/blog/2020-02-08-clever_code.html", "published_at": "2020-02-08T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f2e28bcd", "title": "Effective Property Checking", "url": "http://chriswarbo.net/blog/2019-12-06-property_checking.html", "published_at": "2019-12-06T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f38093f5", "title": "Paths of Least Resistance", "url": "http://chriswarbo.net/blog/2019-12-06-path_of_least_resistance.html", "published_at": "2019-12-06T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f3fe4cdf", "title": "Deleting SMS from SIM on OpenMoko", "url": "http://chriswarbo.net/blog/2019-11-29-openmoko_sms_deletion.html", "published_at": "2019-11-29T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f489bc15", "title": "Switching Browser", "url": "http://chriswarbo.net/blog/2019-11-17-switching_browser.html", "published_at": "2019-11-17T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f54b2084", "title": "Benchmarking", "url": "http://chriswarbo.net/blog/2019-05-27-benchmarking.html", "published_at": "2019-05-27T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f5fe0070", "title": "Quantum Encryption", "url": "http://chriswarbo.net/blog/2019-05-12-encryption.html", "published_at": "2019-05-12T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f66d534d", "title": "Self-Organising Lists", "url": "http://chriswarbo.net/blog/2018-05-10-self_organising_lists.html", "published_at": "2018-05-10T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f6c1f174", "title": "Fixing leveldb", "url": "http://chriswarbo.net/blog/2018-05-02-fixing_leveldb.html", "published_at": "2018-05-02T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f76ed787", "title": "Curry Your Calls, Uncurry Your Returns", "url": "http://chriswarbo.net/blog/2018-01-24-curry_your_calls_uncurry_your_returns.html", "published_at": "2018-01-24T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f829f633", "title": "Unit Testing Terminology", "url": "http://chriswarbo.net/blog/2017-11-10-unit_testing_terminology.html", "published_at": "2017-11-10T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f88e9481", "title": "Compile-time I/O", "url": "http://chriswarbo.net/blog/2017-11-10-compile_time_io.html", "published_at": "2017-11-10T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f8a3ccd4", "title": "Capabilities Example", "url": "http://chriswarbo.net/blog/2017-11-10-capabilities_example.html", "published_at": "2017-11-10T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388f98685a9", "title": "Haskell Theory Exploration scripts", "url": "http://chriswarbo.net/blog/2017-11-09-haskell_theory_exploration_scripts.html", "published_at": "2017-11-09T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fa1d8bd4", "title": "Dependent Function Types", "url": "http://chriswarbo.net/blog/2017-11-03-dependent_function_types.html", "published_at": "2017-11-03T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fabda46f", "title": "del in Python", "url": "http://chriswarbo.net/blog/2017-09-06-del_in_python.html", "published_at": "2017-09-06T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fb8a0643", "title": "PHP Types", "url": "http://chriswarbo.net/blog/2017-09-05_php_types.html", "published_at": "2017-09-05T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fba9c682", "title": "S-expressions", "url": "http://chriswarbo.net/blog/2017-08-29-s_expressions.html", "published_at": "2017-08-29T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fc73e108", "title": "A Personal Opinion On PHP", "url": "http://chriswarbo.net/blog/2017-08-20-a_personal_opinion_on_php.html", "published_at": "2017-08-20T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fc895e62", "title": "Small Functions", "url": "http://chriswarbo.net/blog/2017-08-11-small_functions.html", "published_at": "2017-08-11T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fd07aab2", "title": "Nix Hacks", "url": "http://chriswarbo.net/blog/2017-08-02-nix_hacks.html", "published_at": "2017-08-02T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fd3b96b0", "title": "Git Repo Pages", "url": "http://chriswarbo.net/blog/2017-07-22-git_repo_pages.html", "published_at": "2017-07-22T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fd85cd71", "title": "State, Effects and Monads in Functional Programming and Haskell", "url": "http://chriswarbo.net/blog/2017-07-13-state_in_fp.html", "published_at": "2017-07-13T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fdd9d403", "title": "Artemis", "url": "http://chriswarbo.net/blog/2017-06-14-artemis.html", "published_at": "2017-06-14T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388fe755aa0", "title": "Computer Science is a Natural Science", "url": "http://chriswarbo.net/blog/2017-05-23-computer_science_is_a_natural_science.html", "published_at": "2017-05-23T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388ff0106c0", "title": "Active Code Updates", "url": "http://chriswarbo.net/blog/2017-05-17-active_code_updates.html", "published_at": "2017-05-17T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1388ff4efb09", "title": "GUIs", "url": "http://chriswarbo.net/blog/2017-05-09-guis.html", "published_at": "2017-05-09T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890011fb0b", "title": "Web Hosting With IPFS and Nix", "url": "http://chriswarbo.net/blog/2017-03-20-web_hosting_with_ipfs_and_nix.html", "published_at": "2017-03-20T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-138901072b11", "title": "Free Elves", "url": "http://chriswarbo.net/blog/2017-03-03-free_elves.html", "published_at": "2017-03-03T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1389014fb930", "title": "Listing Things", "url": "http://chriswarbo.net/blog/2017-02-27-listing_things.html", "published_at": "2017-02-27T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1389022faf47", "title": "What I Would Like", "url": "http://chriswarbo.net/blog/2017-02-13-what_i_would_like_in_nix.html", "published_at": "2017-02-13T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-138902c53494", "title": "Urbit", "url": "http://chriswarbo.net/blog/2017-02-10-urbit.html", "published_at": "2017-02-10T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1389036e98f7", "title": "Algorithmic Information Theory", "url": "http://chriswarbo.net/blog/2017-02-10-algorithmic_information_theory.html", "published_at": "2017-02-10T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1389046c10f6", "title": "Standard Syntax Trees", "url": "http://chriswarbo.net/blog/2017-01-31-syntax_trees.html", "published_at": "2017-01-31T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890542e331", "title": "Querying Impurities", "url": "http://chriswarbo.net/blog/2017-01-31-Querying_impurities.html", "published_at": "2017-01-31T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-138906230569", "title": "Deleting files", "url": "http://chriswarbo.net/blog/2017-01-31-deleting_files.html", "published_at": "2017-01-31T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1389062899de", "title": "Dodgy Chargers", "url": "http://chriswarbo.net/blog/2017-01-28-dodgy_chargers.html", "published_at": "2017-01-28T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1389067a447a", "title": "Converting Feeds (RSS/Atom/etc.) to Maildir", "url": "http://chriswarbo.net/blog/2017-01-14-rss_to_maildir.html", "published_at": "2017-01-14T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1389071c5a2c", "title": "Perspective", "url": "http://chriswarbo.net/blog/2016-12-20-perspective.html", "published_at": "2016-12-20T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1389072f3248", "title": "KISS", "url": "http://chriswarbo.net/blog/2016-09-24-kiss.html", "published_at": "2016-09-24T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-138907614441", "title": "Site Changes", "url": "http://chriswarbo.net/blog/2016-09-14-site_changes.html", "published_at": "2016-09-14T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890782845f", "title": "Work log 2016-09-05", "url": "http://chriswarbo.net/blog/2016-09-05-work_log.html", "published_at": "2016-09-05T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890830fb7e", "title": "Work log 2016-09-02", "url": "http://chriswarbo.net/blog/2016-09-02-work_log.html", "published_at": "2016-09-02T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-138908a71102", "title": "Work log 2016-09-01", "url": "http://chriswarbo.net/blog/2016-09-01-work_log.html", "published_at": "2016-09-01T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-1389096797dd", "title": "Work log 2016-08-31", "url": "http://chriswarbo.net/blog/2016-08-31-work_log.html", "published_at": "2016-08-31T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890a51a7a9", "title": "Work log 2016-08-25", "url": "http://chriswarbo.net/blog/2016-08-25-work_log.html", "published_at": "2016-08-25T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890aef3855", "title": "Work log 2016-08-24", "url": "http://chriswarbo.net/blog/2016-08-24-work_log.html", "published_at": "2016-08-24T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890ba024b3", "title": "Work log 2016-08-23", "url": "http://chriswarbo.net/blog/2016-08-23-work_log.html", "published_at": "2016-08-23T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890bc52e6a", "title": "Work log 2016-08-22", "url": "http://chriswarbo.net/blog/2016-08-22-work_log.html", "published_at": "2016-08-22T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890c2e410b", "title": "Work log 2016-08-19", "url": "http://chriswarbo.net/blog/2016-08-19-work_log.html", "published_at": "2016-08-19T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890d152b0b", "title": "Work log 2016-08-18", "url": "http://chriswarbo.net/blog/2016-08-18-work_log.html", "published_at": "2016-08-18T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890dbb9400", "title": "Work log 2016-08-17", "url": "http://chriswarbo.net/blog/2016-08-17-work_log.html", "published_at": "2016-08-17T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890dc4d5bf", "title": "Work log 2016-08-16", "url": "http://chriswarbo.net/blog/2016-08-16-work_log.html", "published_at": "2016-08-16T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890e52f52d", "title": "Work log 2016-08-15", "url": "http://chriswarbo.net/blog/2016-08-15-work_log.html", "published_at": "2016-08-15T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890e9120cc", "title": "Work log 2016-08-12", "url": "http://chriswarbo.net/blog/2016-08-12-work_log.html", "published_at": "2016-08-12T00:00:00+00:00" }, { "id": "01a0875f-f827-7061-9fc6-13890f68a00f", "title": "Work log 2016-08-11", "url": "http://chriswarbo.net/blog/2016-08-11-work_log.html", "published_at": "2016-08-11T00:00:00+00:00" } ] posts Claim your blog
Back to chriswarbo.net
Blog · corpus.blog/blogs/chriswarbo.net/posts

chriswarbo.net

chriswarbo.net

2026

2025

2024

2023

2021

2020

2019

2018

2017

2016

24 Sept 2016