41554 blogs · [ { "id": "01a0875f-3ffe-7273-a1fd-07de5848299f", "title": "Code Is Cheap Now. Software Isn’t.", "url": "https://chrisgregori.dev/opinion/code-is-cheap-now-software-isnt", "published_at": "2026-01-10T12:00:00+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de58fa4d76", "title": "How I Stopped Paying £38/Month Per Database (and Got Microsecond Response Times)", "url": "https://chrisgregori.dev/opinion/how-I-stopped-paying-38-month-per-database", "published_at": "2025-12-29T12:00:00+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de59c4e060", "title": "Leveraging AI as an infinitely patient teacher", "url": "https://chrisgregori.dev/opinion/leveraging-ai-as-an-infinitely-patient-teacher", "published_at": "2025-12-22T11:04:53+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5a06fc5c", "title": "Stream Reddit Comments using Elixir, Pythonx and PRAW", "url": "https://chrisgregori.dev/opinion/stream-reddit-comments-using-elixir-pythonx-and-praw", "published_at": "2025-06-27T09:41:32+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5a61bf36", "title": "From Ephemeral Idea to Live SaaS Waitlist in 120 Minutes", "url": "https://chrisgregori.dev/opinion/from-ephemeral-idea-to-live-saas-waitlist-in-120-minutes", "published_at": "2025-06-18T17:02:51+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5a7368e3", "title": "Parsing PDFs (and more) in Elixir using Rust", "url": "https://chrisgregori.dev/opinion/parsing-pdfs-in-elixir-using-rust", "published_at": "2025-01-29T18:18:34+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5b698db0", "title": "Implementing Google Authentication in a LiveView Application", "url": "https://chrisgregori.dev/opinion/implementing-google-authentication-in-a-liveview-application", "published_at": "2024-05-08T20:33:39+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5c11cf52", "title": "Erlang/OTP 26 Highlights", "url": "https://chrisgregori.dev/opinion/erlang-otp-26-highlights", "published_at": "2023-05-16T21:54:09+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5c381251", "title": "Elixir hot code swapping to the rescue", "url": "https://chrisgregori.dev/opinion/elixir-hot-code-swapping-to-the-rescue", "published_at": "2023-05-10T16:33:59+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5d232e62", "title": "Burnout as an Indiehacker", "url": "https://chrisgregori.dev/opinion/burnout-as-an-indiehacker", "published_at": "2023-05-03T15:03:47+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5d3d171e", "title": "Setting up a Google Chrome shortcut to Elixir documentation in 30 seconds", "url": "https://chrisgregori.dev/opinion/setting-up-a-google-chrome-shortcut-to-elixir-documentation-in-30-seconds", "published_at": "2023-01-06T14:57:50+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5e0eae37", "title": "Using ETS to speed up database imports by almost 300%", "url": "https://chrisgregori.dev/opinion/using-ets-to-speed-up-database-imports-by-almost-300-percent", "published_at": "2022-08-08T11:10:40+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5e6e6d45", "title": "How to build the simplest feature flag system in Elixir & Phoenix apps", "url": "https://chrisgregori.dev/opinion/how-to-build-the-simplest-feature-flag-system-in-elixir-and-phoenix-apps", "published_at": "2022-08-03T10:32:36+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5ef42d9a", "title": "Triggering repeatable animations from the server in LiveView & Elixir", "url": "https://chrisgregori.dev/opinion/triggering-repeatable-animations-from-the-server-in-liveview-and-elixir", "published_at": "2022-07-22T13:47:31+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5f60d556", "title": "Custom JSON encoding for structs in Elixir with Jason", "url": "https://chrisgregori.dev/opinion/how-to-custom-jason-encoding-for-structs-in-elixir", "published_at": "2022-07-20T14:52:07+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de5fee71c5", "title": "10 tips for new Elixir developers", "url": "https://chrisgregori.dev/opinion/10-tips-for-new-elixir-developers", "published_at": "2022-07-02T10:28:23+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de60ec5afb", "title": "5 scary Git commands you'll eventually have use for", "url": "https://chrisgregori.dev/opinion/5-scary-git-commands-you'll-eventually-have-use-for", "published_at": "2022-06-30T09:51:51+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de61eb891c", "title": "Why do developers experience so much imposter syndrome?", "url": "https://chrisgregori.dev/opinion/why-do-developers-experience-so-much-imposter-syndrome", "published_at": "2022-06-29T11:52:31+00:00" }, { "id": "01a0875f-3ffe-7273-a1fd-07de62e62061", "title": "Embracing your own platform for blogging", "url": "https://chrisgregori.dev/opinion/embracing-your-own-platform-for-blogging", "published_at": "2022-06-24T13:53:28+00:00" } ] posts Claim your blog
Back to chrisgregori.dev
Blog · corpus.blog/blogs/chrisgregori.dev/posts

chrisgregori.dev

chrisgregori.dev

2026

2025

2024

2023

2022