<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Vlad Sabev</title><description>Essays on software, freelancing, and AI</description><link>https://vdsabev.github.io/</link><item><title>Smoothing the Path with AI</title><link>https://vdsabev.github.io/smoothing-the-path-with-ai/</link><guid isPermaLink="true">https://vdsabev.github.io/smoothing-the-path-with-ai/</guid><description>My favorite use of AI - not vibe-coding toy apps, but smoothing over the path - like driving a car down the highway instead of going on a cross-country hike.</description><pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/smoothing-the-path-with-ai.md"/></item><item><title>The Economics of Self-Hosting AI</title><link>https://vdsabev.github.io/the-economics-of-self-hosting-ai/</link><guid isPermaLink="true">https://vdsabev.github.io/the-economics-of-self-hosting-ai/</guid><description>Enthusiasts want to self-host models but can&apos;t justify the hardware. Marketplaces for spare compute could enable the economics for individuals, while privacy already makes it a no-brainer for companies.</description><pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/the-economics-of-self-hosting-ai.md"/></item><item><title>cmless: Seamless Blogging with GitHub Issues</title><link>https://vdsabev.github.io/cmless-seamless-blogging-with-github-issues/</link><guid isPermaLink="true">https://vdsabev.github.io/cmless-seamless-blogging-with-github-issues/</guid><description>I&apos;ve tried to maintain a blog for years, but every tool had too much friction. So I made cmless: turn a GitHub repo into a blog with Issues as the CMS and GitHub Pages for hosting.</description><pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/cmless-seamless-blogging-with-github-issues.md"/></item><item><title>The AI Casino</title><link>https://vdsabev.github.io/the-ai-casino/</link><guid isPermaLink="true">https://vdsabev.github.io/the-ai-casino/</guid><description>How variable rewards and prompt routing could be turning LLMs into digital slot machines</description><pubDate>Tue, 17 Feb 2026 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/the-ai-casino.md"/></item><item><title>The Spiritual Cost of the Nanny State</title><link>https://vdsabev.github.io/the-spiritual-cost-of-the-nanny-state/</link><guid isPermaLink="true">https://vdsabev.github.io/the-spiritual-cost-of-the-nanny-state/</guid><description>The shift from personal responsibility toward government paternalism and human self-domestication.</description><pubDate>Sat, 07 Feb 2026 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/the-spiritual-cost-of-the-nanny-state.md"/></item><item><title>Overtherapizing Men&apos;s Mental Health</title><link>https://vdsabev.github.io/overtherapizing-mens-mental-health/</link><guid isPermaLink="true">https://vdsabev.github.io/overtherapizing-mens-mental-health/</guid><description>Talking about emotions isn&apos;t enough for men&apos;s mental health - finding meaning through Function, Family, and Faith offers a better path.</description><pubDate>Mon, 02 Feb 2026 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/overtherapizing-mens-mental-health.md"/></item><item><title>Rich Storytelling with AI World Models</title><link>https://vdsabev.github.io/rich-storytelling-with-ai-world-models/</link><guid isPermaLink="true">https://vdsabev.github.io/rich-storytelling-with-ai-world-models/</guid><description>How AI world models like Genie 3 could revolutionize storytelling, democratize game development, and let creators build immersive worlds from imagination.</description><pubDate>Mon, 02 Feb 2026 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/rich-storytelling-with-ai-world-models.md"/></item><item><title>Effective Code Reviews</title><link>https://vdsabev.github.io/effective-code-reviews/</link><guid isPermaLink="true">https://vdsabev.github.io/effective-code-reviews/</guid><description>How to foster a culture of learning through code review.</description><pubDate>Tue, 26 Sep 2023 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/effective-code-reviews.md"/></item><item><title>On Alphabetically Ordering CSS Properties</title><link>https://vdsabev.github.io/on-alphabetically-ordering-css-properties/</link><guid isPermaLink="true">https://vdsabev.github.io/on-alphabetically-ordering-css-properties/</guid><description>And other properties, really</description><pubDate>Wed, 02 Dec 2020 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/on-alphabetically-ordering-css-properties.md"/></item><item><title>Writing Reliable Unit Tests for Our Components</title><link>https://vdsabev.github.io/writing-reliable-unit-tests-for-our-components/</link><guid isPermaLink="true">https://vdsabev.github.io/writing-reliable-unit-tests-for-our-components/</guid><description>Three common pitfalls when writing component unit tests and how to write more reliable tests that focus on the component&apos;s public interface.</description><pubDate>Sun, 08 Nov 2020 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/writing-reliable-unit-tests-for-our-components.md"/></item><item><title>Simple Naming Tips for Event Handlers</title><link>https://vdsabev.github.io/simple-naming-tips-for-event-handlers/</link><guid isPermaLink="true">https://vdsabev.github.io/simple-naming-tips-for-event-handlers/</guid><description>Helping our team (and ourselves) write more meaningful and robust code.</description><pubDate>Sun, 23 Dec 2018 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/simple-naming-tips-for-event-handlers.md"/></item><item><title>Learning Form Management in React</title><link>https://vdsabev.github.io/learning-form-management-in-react/</link><guid isPermaLink="true">https://vdsabev.github.io/learning-form-management-in-react/</guid><description>By building our own reusable component from first principles.</description><pubDate>Mon, 08 Oct 2018 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/learning-form-management-in-react.md"/></item><item><title>Using Angular&apos;s Dependency Injection Sparingly</title><link>https://vdsabev.github.io/using-angulars-dependency-injection-sparingly/</link><guid isPermaLink="true">https://vdsabev.github.io/using-angulars-dependency-injection-sparingly/</guid><description>How excessive abstraction slowed down our unit tests to a crawl.</description><pubDate>Mon, 01 Oct 2018 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/using-angulars-dependency-injection-sparingly.md"/></item><item><title>Giving Credit and Taking Responsibility in a Team</title><link>https://vdsabev.github.io/giving-credit-and-taking-responsibility-in-a-team/</link><guid isPermaLink="true">https://vdsabev.github.io/giving-credit-and-taking-responsibility-in-a-team/</guid><description>Whether we succeed or fail, it helps to know how to best represent our team in front of upper management or clients.</description><pubDate>Wed, 12 Sep 2018 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/giving-credit-and-taking-responsibility-in-a-team.md"/></item><item><title>React: Injecting Component Props with ES7 Decorators</title><link>https://vdsabev.github.io/react-injecting-component-props-with-es7-decorators/</link><guid isPermaLink="true">https://vdsabev.github.io/react-injecting-component-props-with-es7-decorators/</guid><description>Experimenting with decorators to make writing and maintaining React components more ergonomic (subjectively).</description><pubDate>Mon, 20 Aug 2018 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/react-injecting-component-props-with-es7-decorators.md"/></item><item><title>Dribbble Designs in Code (part 2 — Editorial Exploration)</title><link>https://vdsabev.github.io/dribbble-designs-in-code-part-2-editorial-exploration/</link><guid isPermaLink="true">https://vdsabev.github.io/dribbble-designs-in-code-part-2-editorial-exploration/</guid><description>This is the second in a series of posts on coding designs from Dribbble.</description><pubDate>Thu, 28 Jun 2018 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/dribbble-designs-in-code-part-2-editorial-exploration.md"/></item><item><title>Dribbble Designs in Code (part 1 — Venue Landing Page)</title><link>https://vdsabev.github.io/dribbble-designs-in-code-part-1-venue-landing-page/</link><guid isPermaLink="true">https://vdsabev.github.io/dribbble-designs-in-code-part-1-venue-landing-page/</guid><description>This is the first in a series of posts on coding designs from Dribbble.</description><pubDate>Thu, 14 Jun 2018 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/dribbble-designs-in-code-part-1-venue-landing-page.md"/></item><item><title>How I (Foolishly) Gave Up My Google Account Password</title><link>https://vdsabev.github.io/how-i-foolishly-gave-up-my-google-account-password/</link><guid isPermaLink="true">https://vdsabev.github.io/how-i-foolishly-gave-up-my-google-account-password/</guid><description>I received a convincing phishing attack on my personal email and gave up my Google password. Here&apos;s how it happened, and how to be more careful about it.</description><pubDate>Fri, 06 Apr 2018 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/how-i-foolishly-gave-up-my-google-account-password.md"/></item><item><title>The Simple Difference Between RxJS switchMap and mergeMap</title><link>https://vdsabev.github.io/the-simple-difference-between-rxjs-switchmap-and-mergemap/</link><guid isPermaLink="true">https://vdsabev.github.io/the-simple-difference-between-rxjs-switchmap-and-mergemap/</guid><description>Trying to figure out whether to use switchMap or mergeMap for a simple HTTP request? I only understood the difference once I tried it out for myself.</description><pubDate>Mon, 19 Mar 2018 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/the-simple-difference-between-rxjs-switchmap-and-mergemap.md"/></item><item><title>Preparing a Freelance Offer: From 0 to 100%</title><link>https://vdsabev.github.io/preparing-a-freelance-offer-from-0-to-100/</link><guid isPermaLink="true">https://vdsabev.github.io/preparing-a-freelance-offer-from-0-to-100/</guid><description>A step-by-step guide to preparing a professional freelance offer - from initial client conversations and market research through feature estimation, pricing packages, and presenting the final document.</description><pubDate>Mon, 23 Oct 2017 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/preparing-a-freelance-offer-from-0-to-100.md"/></item><item><title>Exploring Unidirectional Components in Mithril (part 2 — Redux)</title><link>https://vdsabev.github.io/exploring-unidirectional-components-in-mithril-part-2-redux/</link><guid isPermaLink="true">https://vdsabev.github.io/exploring-unidirectional-components-in-mithril-part-2-redux/</guid><description>Continuing the experiment from part 1, this time using Redux and the reducer pattern for unidirectional data flow in Mithril, and comparing it to Hyperapp.</description><pubDate>Mon, 09 Oct 2017 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/exploring-unidirectional-components-in-mithril-part-2-redux.md"/></item><item><title>Simplify Your Layout (And Your Life) With CSS Grid</title><link>https://vdsabev.github.io/simplify-your-layout-and-your-life-with-css-grid/</link><guid isPermaLink="true">https://vdsabev.github.io/simplify-your-layout-and-your-life-with-css-grid/</guid><description>Doing layout in CSS is really hard. After years of fighting it, here&apos;s how CSS Grid changed the way I approach design and made layouts far simpler.</description><pubDate>Thu, 31 Aug 2017 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/simplify-your-layout-and-your-life-with-css-grid.md"/></item><item><title>Exploring Unidirectional Components in Mithril (part 1 — Hyperapp)</title><link>https://vdsabev.github.io/exploring-unidirectional-components-in-mithril-part-1-hyperapp/</link><guid isPermaLink="true">https://vdsabev.github.io/exploring-unidirectional-components-in-mithril-part-1-hyperapp/</guid><description>An experiment in writing Mithril components with a unidirectional data flow, borrowing ideas from Hyperapp instead of the usual component classes.</description><pubDate>Fri, 18 Aug 2017 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/exploring-unidirectional-components-in-mithril-part-1-hyperapp.md"/></item><item><title>How to Price Your Time and Work as a Freelancer</title><link>https://vdsabev.github.io/how-to-price-your-time-and-work-as-a-freelancer/</link><guid isPermaLink="true">https://vdsabev.github.io/how-to-price-your-time-and-work-as-a-freelancer/</guid><description>A practical guide to pricing freelance services — moving beyond hourly billing toward value-based pricing.</description><pubDate>Mon, 24 Jul 2017 00:00:00 GMT</pubDate><atom:link rel="alternate" type="text/markdown" href="https://vdsabev.github.io/how-to-price-your-time-and-work-as-a-freelancer.md"/></item></channel></rss>