41554 blogs · [ { "id": "01a08c56-a5be-7094-a632-74937f13aed4", "title": "Nix on Sailfish X (Sailfish OS for Sony Xperia): Drowning in software from Nixpkgs, the largest software package set", "url": "https://toast.al/posts/techlore/2026-05-30_nix-on-sailfish-os/", "published_at": "2026-05-30T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74937f9f83c1", "title": "Nixtamal cast on Full Time Nix", "url": "https://toast.al/posts/softwarecraft/2026-02-19_nixtamal-episode-on-full-time-nix/", "published_at": "2026-02-19T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-7493807aab46", "title": "Thaiger Sprint 2025 2: Hacking on a Nix Pinning Software", "url": "https://toast.al/posts/softwarecraft/2025-11-22_thaiger-sprint-2025-2-nixtamal/", "published_at": "2025-11-22T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749380dae604", "title": "Applying for a Thai Marriage Non-Immigrant O Visa: Ð Falsehoods, ð Bad, & ð Ugly", "url": "https://toast.al/posts/thailandishlore/2025-07-21_thai-marriage-visa-woes/", "published_at": "2025-07-21T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-7493818eb6b4", "title": "Nix Development Setup for Factor: Not Too Cold for Velociraptors", "url": "https://toast.al/posts/softwarecraft/2025-06-24_factor-nix-dev-environment/", "published_at": "2025-06-24T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749381fef0a1", "title": "“Overlaying” NixOS modules: How to use disabledModules to override default modules", "url": "https://toast.al/posts/softwarecraft/2025-03-25_overlaying-nixos-modules/", "published_at": "2025-03-25T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749382052a69", "title": "Thaiger Sprint 2025: Starring H2O, the HTTP server (& dropping Nginx)", "url": "https://toast.al/posts/softwarecraft/2025-03-04_thaiger-sprint-2025-starring-h2o/", "published_at": "2025-03-04T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749382ced41e", "title": "3 Shifted 3 Shapes: Making a w3m Logo", "url": "https://toast.al/posts/visuallayout/2024-12-30_w3m-logo/", "published_at": "2024-12-30T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749382fa15c9", "title": "Home Base Chanthaburi: Why I Chose This Sleepy Province (& You Might Too?)", "url": "https://toast.al/posts/thailandishlore/2024-08-12_home-base-%E0%B8%88%E0%B8%B1%E0%B8%99%E0%B8%97%E0%B8%9A%E0%B8%B8%E0%B8%A3%E0%B8%B5/", "published_at": "2024-08-12T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938398ef62", "title": "How to Loop Hero on NixOS: A Janky Way to Deal wiþ Deprecated Libraries", "url": "https://toast.al/posts/techlore/2024-06-11_loop-hero-on-nixos/", "published_at": "2024-06-11T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749383df3aa2", "title": "Was Courier Important‽: How to Mess up System Fonts in a Web Application", "url": "https://toast.al/posts/visuallayout/2024-05-22_how-to-mess-up-system-fonts/", "published_at": "2024-05-22T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938494daf0", "title": "Berkeley Mono on LineageOS for microG: How to Add a Custom Font to Android for Now", "url": "https://toast.al/posts/techlore/2024-04-19_berkeley-mono-on-lineageos-for-microg/", "published_at": "2024-04-19T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749384f9f21c", "title": "Berkeley Mono on NixOS: How to Add to & Use Proprietary Software from Your Nix Store", "url": "https://toast.al/posts/techlore/2024-04-17_berkeley-mono-on-nixos/", "published_at": "2024-04-17T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-7493854d2c82", "title": "Cute-but-flawed Audio Apparatus: A review of ð Shanling Q1 DAC/DAP", "url": "https://toast.al/posts/techlore/2024-01-30_shanling-q1-review/", "published_at": "2024-01-30T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749386203785", "title": "Knowing When To Say No to Front-end Optimization Advice: Following Website Performance Tools to a T Leads to Headaches, False Positives, & Complexity", "url": "https://toast.al/posts/softwarecraft/2023-12-20_knowing-when-to-say-no-to-front-end-optimization-advice/", "published_at": "2023-12-20T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-7493869794ab", "title": "Notes on Pijul: Wiþ Rough Edges", "url": "https://toast.al/posts/softwarecraft/2023-11-23_notes-on-pijul/", "published_at": "2023-11-23T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749386df545d", "title": "New Phone Xperience: Why I chose a Sony Xperia 5 & what I choose to run on it", "url": "https://toast.al/posts/techlore/2023-10-29_new-phone-xperience/", "published_at": "2023-10-29T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-749387cb161b", "title": "OCaml Tabbed & Formatted wiþ Topiary: Bringing more accessible indentation to ð ML dialect", "url": "https://toast.al/posts/softwarecraft/2023-09-24_ocaml-tabbed-&-formatted/", "published_at": "2023-09-24T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938841f632", "title": "Yearly Backregistering ð Þunderhorse: When Your Motorbike Registration Ends", "url": "https://toast.al/posts/thailandishlore/2023-09-18_yearly-backregistering-%C3%B0-%C3%BEunderhorse/", "published_at": "2023-09-18T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-7493892370ec", "title": "Semantic Markup for Callouts: A Not-Quite-RFC for Admonitions in HTML", "url": "https://toast.al/posts/softwarecraft/2023-08-29_semantic-markup-for-callouts/", "published_at": "2023-08-29T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938a091ad4", "title": "Is highlight.js Harmful for Your Site?: Syntax highlighting on the client side is bad for users & the web", "url": "https://toast.al/posts/softwarecraft/2023-07-28_client-side-syntax-highlighting-must-stop/", "published_at": "2023-07-28T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938a2bdf49", "title": "Be Open to Black: A Digital Design Tip", "url": "https://toast.al/posts/visuallayout/2023-07-06_be-open-to-black/", "published_at": "2023-07-06T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938a520a58", "title": "Weblog Rebuilt: New Build System, Host, Practices & Ideas", "url": "https://toast.al/posts/techlore/2023-07-03_weblog-rebuilt/", "published_at": "2023-07-03T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938ad4195c", "title": "Dreaming of a Laptop: Am I too niche?", "url": "https://toast.al/posts/techlore/2020-01-23_dream-laptop/", "published_at": "2020-01-23T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938b83db55", "title": "The State of Social Photo Publishing Rounding Out 2019: Why Instagram is Trash & Why the Fediverse is Good", "url": "https://toast.al/posts/techlore/2019-12-04_photo-publishing/", "published_at": "2019-12-04T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938c2d1898", "title": "How To Publish a PureScript Package (2017): I Wanna Be Pursuit Famous!", "url": "https://toast.al/posts/softwarecraft/2017-12-31_how-to-publish-a-purescript-package/", "published_at": "2017-12-31T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938c7bb655", "title": "Playing With Prisms: For the Not-So-Isomorphic", "url": "https://toast.al/posts/softwarecraft/2017-01-13_playing-wi%C3%BE-prisms-for-%C3%B0-not-so-isomorphic/", "published_at": "2017-01-13T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938d76791f", "title": "Anatomy of Maybe — Part II — Functor: Understanding Functional Programming Thru Optionality", "url": "https://toast.al/posts/softwarecraft/2017-01-01_anatomy-of-maybe-part-ii-functor/", "published_at": "2017-01-01T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938de4c1e0", "title": "Anatomy of Maybe — Part I — Introduction: Understanding Functional Programming Thru Optionality", "url": "https://toast.al/posts/softwarecraft/2016-12-30_anatomy-of-maybe-part-i-introduction/", "published_at": "2016-12-30T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938ea3229a", "title": "Tup the Magic Build Tool: A Dumb Builder With Guarantees", "url": "https://toast.al/posts/softwarecraft/2016-12-23_tup-%C3%B0-magic-build-tool/", "published_at": "2016-12-23T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938f44b5df", "title": "Rewriting React & Releasing Elm Into the Wild: A Reflection on the Experience", "url": "https://toast.al/posts/softwarecraft/2016-12-01_rewriting-react-&-releasing-elm-into-%C3%B0-wild/", "published_at": "2016-12-01T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-74938f8515e7", "title": "Crocodiles & Alligators: Practical Lenses for Fun & Profit in Elm", "url": "https://toast.al/posts/softwarecraft/2016-10-30_crocodiles-&-alligators/", "published_at": "2016-10-30T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-7493907bad98", "title": "Optical Swordplay With Components: Using Lenses & Monads to Refract the Elm Update", "url": "https://toast.al/posts/softwarecraft/2016-10-20_optical-swordplay-wi%C3%BE-components/", "published_at": "2016-10-20T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-7493909c48d8", "title": "Seer Stones: Translations Using Unions in Elm", "url": "https://toast.al/posts/softwarecraft/2016-08-20_seer-stones-translations-using-unions-in-elm/", "published_at": "2016-08-20T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-7493911ba9ab", "title": "Getting Ourselves Organized: File & Folder Structure for an Elm SPA", "url": "https://toast.al/posts/softwarecraft/2016-08-14_file-structure-for-an-elm-spa/", "published_at": "2016-08-14T00:00:00+00:00" }, { "id": "01a08c56-a5be-7094-a632-7493918a895a", "title": "Elm Applicatives & JSON Decoders: Mapping & Applying Our Way to Deserialization Victory", "url": "https://toast.al/posts/softwarecraft/2016-08-12_elm-applicatives-&-json-decoders/", "published_at": "2016-08-12T00:00:00+00:00" } ] posts Claim your blog
Back to Functional Front-End & Feelings | toastal
Blog · corpus.blog/blogs/toast.al/posts

Functional Front-End & Feelings | toastal

toast.al

2026

2025

2024

2023

2020

2019

2017

2016