<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Volodymyr&apos;s website</title><description>Welcome to my personal website!</description><link>https://chornonoh-vova.com/</link><item><title>ORMs vs query builders vs raw SQL</title><link>https://chornonoh-vova.com/blog/orms-vs-query-builders-vs-raw-sql/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/orms-vs-query-builders-vs-raw-sql/</guid><description>Short story discussing each approach</description><pubDate>Sun, 25 Jan 2026 00:00:00 GMT</pubDate></item><item><title>JSON + metadata = useful logs</title><link>https://chornonoh-vova.com/blog/json-structured-logging/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/json-structured-logging/</guid><description>Improvements in the observability of the system</description><pubDate>Sun, 18 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Date parsing in JS</title><link>https://chornonoh-vova.com/blog/js-dates-bug/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/js-dates-bug/</guid><description>The Date parsing bug that lived in production for years</description><pubDate>Sat, 10 Jan 2026 00:00:00 GMT</pubDate></item><item><title>i18n-utils: CLI to simplify i18n file management</title><link>https://chornonoh-vova.com/blog/i18n-utils/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/i18n-utils/</guid><description>CLI utility to streamline operations on i18n files</description><pubDate>Sat, 03 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Advent of Code 2025, part 2</title><link>https://chornonoh-vova.com/blog/advent-of-code-2025-days-7-12/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/advent-of-code-2025-days-7-12/</guid><description>My journey through AoC 2025, days 7-12</description><pubDate>Sat, 13 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Advent of Code 2025, part 1</title><link>https://chornonoh-vova.com/blog/advent-of-code-2025-days-1-6/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/advent-of-code-2025-days-1-6/</guid><description>My journey through AoC 2025, days 1-6</description><pubDate>Sat, 06 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Bash &quot;strict&quot; mode</title><link>https://chornonoh-vova.com/blog/bash-strict-mode/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/bash-strict-mode/</guid><description>Essential options in bash scripts</description><pubDate>Sat, 29 Nov 2025 00:00:00 GMT</pubDate></item><item><title>XSS security vulnerability</title><link>https://chornonoh-vova.com/blog/xss-security-vulnerability/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/xss-security-vulnerability/</guid><description>A real-world example of a classic security mistake, and how I tracked it down and fixed it.</description><pubDate>Sat, 22 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Building local-first app with IndexedDB</title><link>https://chornonoh-vova.com/blog/building-local-first-app-with-indexed-db/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/building-local-first-app-with-indexed-db/</guid><description>Laying out the foundation for a robust app</description><pubDate>Sat, 15 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Storage in the browser</title><link>https://chornonoh-vova.com/blog/storage-in-the-browser/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/storage-in-the-browser/</guid><description>What are the ways to persist data in the browser?</description><pubDate>Sat, 08 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Exploring Drag and Drop API</title><link>https://chornonoh-vova.com/blog/exploring-drag-and-drop-api/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/exploring-drag-and-drop-api/</guid><description>Learning about web platform fundamentals and applying them on practice</description><pubDate>Sat, 01 Nov 2025 00:00:00 GMT</pubDate></item><item><title>inert HTML attribute</title><link>https://chornonoh-vova.com/blog/inert-html-attribute/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/inert-html-attribute/</guid><description>What is inert and what problem does it solve?</description><pubDate>Sat, 18 Oct 2025 00:00:00 GMT</pubDate></item><item><title>React performance hooks and compiler</title><link>https://chornonoh-vova.com/blog/react-performance-hooks-and-compiler/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/react-performance-hooks-and-compiler/</guid><description>Overview of React perf hooks and compiler</description><pubDate>Sat, 11 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Git Worktrees</title><link>https://chornonoh-vova.com/blog/git-worktrees/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/git-worktrees/</guid><description>Lesser-known but incredible Git feature</description><pubDate>Sat, 04 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Maze generation algorithms</title><link>https://chornonoh-vova.com/blog/maze-generation-algorithms/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/maze-generation-algorithms/</guid><description>Exploring different approaches to generate a maze</description><pubDate>Sat, 27 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Blog updates</title><link>https://chornonoh-vova.com/blog/blog-updates-1/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/blog-updates-1/</guid><description>New things on the website and in the blog</description><pubDate>Sat, 20 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Levenshtein distance algorithm</title><link>https://chornonoh-vova.com/blog/levenshtein-distance-algorithm/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/levenshtein-distance-algorithm/</guid><description>How do computers understand that two words are similar?</description><pubDate>Sat, 13 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Different line endings</title><link>https://chornonoh-vova.com/blog/different-line-endings/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/different-line-endings/</guid><description>A quick guide to line endings across operating systems</description><pubDate>Sat, 06 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Finally block not running - war story</title><link>https://chornonoh-vova.com/blog/finally-not-running-war-story/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/finally-not-running-war-story/</guid><description>What are the reasons when finally block might not run</description><pubDate>Sat, 30 Aug 2025 00:00:00 GMT</pubDate></item><item><title>The GitFrag challenge</title><link>https://chornonoh-vova.com/blog/gitfrag-challenge/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/gitfrag-challenge/</guid><description>A diary of the mini util that I&apos;ve built as a challenge</description><pubDate>Sat, 23 Aug 2025 00:00:00 GMT</pubDate></item><item><title>Pokémon MCP server</title><link>https://chornonoh-vova.com/blog/pokemon-mcp-server/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/pokemon-mcp-server/</guid><description>Exploring what MCP is and building an MCP server for fun</description><pubDate>Sat, 16 Aug 2025 00:00:00 GMT</pubDate></item><item><title>Building a wizard form</title><link>https://chornonoh-vova.com/blog/building-wizard-form/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/building-wizard-form/</guid><description>With react-hook-form, zod &amp; zustand</description><pubDate>Sat, 09 Aug 2025 00:00:00 GMT</pubDate></item><item><title>Trie data structure</title><link>https://chornonoh-vova.com/blog/trie-data-structure/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/trie-data-structure/</guid><description>Deep dive into what trie is and its applications</description><pubDate>Sat, 02 Aug 2025 00:00:00 GMT</pubDate></item><item><title>Making Sudoku game from scratch</title><link>https://chornonoh-vova.com/blog/making-sudoku-game/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/making-sudoku-game/</guid><description>Utilizing algorithms and data structures for fun</description><pubDate>Sat, 26 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Solving Sudoku</title><link>https://chornonoh-vova.com/blog/solving-sudoku/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/solving-sudoku/</guid><description>Algorithm to solve Sudoku and visualization</description><pubDate>Sat, 19 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Sudoku verification</title><link>https://chornonoh-vova.com/blog/sudoku-verification/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/sudoku-verification/</guid><description>Breaking down an algorithm to verify sudoku</description><pubDate>Sat, 12 Jul 2025 00:00:00 GMT</pubDate></item><item><title>UTF-8 encoding</title><link>https://chornonoh-vova.com/blog/utf-8-encoding/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/utf-8-encoding/</guid><description>How text is encoded in UTF-8, visualized</description><pubDate>Sat, 05 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Warehouse simulator from scratch: Part 2</title><link>https://chornonoh-vova.com/blog/warehouse-simulator-part-2/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/warehouse-simulator-part-2/</guid><description>Finishing up the simulator inspired by Advent of Code 2024, Day 15</description><pubDate>Sat, 28 Jun 2025 00:00:00 GMT</pubDate></item><item><title>Warehouse simulator from scratch: Part 1</title><link>https://chornonoh-vova.com/blog/warehouse-simulator-part-1/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/warehouse-simulator-part-1/</guid><description>Building a simulator inspired by Advent of Code 2024, Day 15</description><pubDate>Sat, 21 Jun 2025 00:00:00 GMT</pubDate></item><item><title>TypeScript vs JavaScript private</title><link>https://chornonoh-vova.com/blog/typescript-vs-javascript-private/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/typescript-vs-javascript-private/</guid><description>Deep dive into differences between TS private modifier and native JS #private fields</description><pubDate>Sat, 14 Jun 2025 00:00:00 GMT</pubDate></item><item><title>Flood fill algorithm</title><link>https://chornonoh-vova.com/blog/flood-fill-algorithm/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/flood-fill-algorithm/</guid><description>How flood fill algorithm works, visualized</description><pubDate>Sat, 07 Jun 2025 00:00:00 GMT</pubDate></item><item><title>One of my favorite Java interview questions</title><link>https://chornonoh-vova.com/blog/one-of-my-favorite-java-interview-questions/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/one-of-my-favorite-java-interview-questions/</guid><description>A deep dive into singleton implementation details</description><pubDate>Sat, 31 May 2025 00:00:00 GMT</pubDate></item><item><title>The hardest day of AoC 2024 (for me)</title><link>https://chornonoh-vova.com/blog/the-hardest-day-of-aoc-2024-for-me/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/the-hardest-day-of-aoc-2024-for-me/</guid><description>Or how I learned about the Bron-Kerbosh algorithm</description><pubDate>Sat, 24 May 2025 00:00:00 GMT</pubDate></item><item><title>LRU Cache: visualization &amp; implementation</title><link>https://chornonoh-vova.com/blog/lru-cache-visualization-implementation/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/lru-cache-visualization-implementation/</guid><description>What is LRU cache, hot to build it, and some visualizations for better understanding</description><pubDate>Sat, 17 May 2025 00:00:00 GMT</pubDate></item><item><title>Better approach to automated UI testing</title><link>https://chornonoh-vova.com/blog/better-approach-to-automated-ui-testing/</link><guid isPermaLink="true">https://chornonoh-vova.com/blog/better-approach-to-automated-ui-testing/</guid><description>Utilizing data-testid attributes to simplify automation</description><pubDate>Sat, 10 May 2025 00:00:00 GMT</pubDate></item></channel></rss>