<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss/styles.xsl" type="text/xsl"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Roma Glushko&apos;s Blog</title><description>Learn about software engineering, architecture, distributed systems with Roma 📚</description><link>https://www.romaglushko.com/</link><atom:link href="https://www.romaglushko.com/rss.xml" rel="self" type="application/rss+xml"/><language>en</language><item><title>Kubernetes Gateway API</title><link>https://www.romaglushko.com/blog/k8s-gateway-api/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/k8s-gateway-api/</guid><description>Why Ingress Is Being Replaced and Which Gateway Controller to Pick</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate><category>kubernetes</category><category>api gateway</category><category>security</category><category>networking</category><category>ingress controller</category><category>gateway api</category><author>Roman Glushko</author></item><item><title>What&apos;s OAuth2 Anyway?</title><link>https://www.romaglushko.com/blog/whats-aouth2/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/whats-aouth2/</guid><description>Why the OAuth2 protocol was designed the way it is and how it works.</description><pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate><category>authorization</category><category>security</category><category>standards</category><author>Roman Glushko</author></item><item><title>Papercups: Customer Service Platform</title><link>https://www.romaglushko.com/blog/papercups/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/papercups/</guid><description>Designing a customer support platform with live chat features similar to Zendesk or Intercom.</description><pubDate>Mon, 30 Sep 2024 00:00:00 GMT</pubDate><category>open source</category><category>architecture</category><category>platform</category><category>communication</category><category>javascript</category><category>elixir</category><author>Roman Glushko</author></item><item><title>OTel Collector</title><link>https://www.romaglushko.com/blog/opentelemetry-collector/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/opentelemetry-collector/</guid><description>Telemetry Processing as a Service with OTel Collector</description><pubDate>Sun, 16 Jun 2024 00:00:00 GMT</pubDate><category>open source</category><category>architecture</category><category>observability</category><category>golang</category><author>Roman Glushko</author></item><item><title>OTel SDK</title><link>https://www.romaglushko.com/blog/opentelemetry-sdk/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/opentelemetry-sdk/</guid><description>Logs, metrics, traces collection in OTel SDK</description><pubDate>Thu, 25 Apr 2024 00:00:00 GMT</pubDate><category>open source</category><category>architecture</category><category>observability</category><category>python</category><author>Roman Glushko</author></item><item><title>Jupyter Kernel Architecture</title><link>https://www.romaglushko.com/blog/jupyter-kernel-architecture/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/jupyter-kernel-architecture/</guid><description>How Jupyter executes, inspects, completes, and debugs code</description><pubDate>Thu, 24 Aug 2023 00:00:00 GMT</pubDate><category>open source</category><category>architecture</category><category>jupyter</category><author>Roman Glushko</author></item><item><title>Buy, Open Source, Build</title><link>https://www.romaglushko.com/thoughts/buy-opensource-build/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/buy-opensource-build/</guid><description>When to buy, build or use open source solutions?</description><pubDate>Mon, 10 Jul 2023 00:00:00 GMT</pubDate><category>strategy</category><author>Roman Glushko</author></item><item><title>React Hooks</title><link>https://www.romaglushko.com/blog/react-hooks/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/react-hooks/</guid><description>How I learned about hooks by upgrading this website</description><pubDate>Fri, 01 Jul 2022 00:00:00 GMT</pubDate><category>UI engineering</category><category>software engineering</category><category>javascript</category><author>Roman Glushko</author></item><item><title>Communicate Through Code</title><link>https://www.romaglushko.com/blog/communicate-through-code/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/communicate-through-code/</guid><description>Learn to communicate your ideas clearly while coding</description><pubDate>Fri, 27 May 2022 00:00:00 GMT</pubDate><category>software engineering</category><category>python</category><author>Roman Glushko</author></item><item><title>Promotion Paradoxes</title><link>https://www.romaglushko.com/thoughts/promotion-paradoxes/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/promotion-paradoxes/</guid><description>Every promotion makes you closer to being a low performer</description><pubDate>Sun, 31 Oct 2021 00:00:00 GMT</pubDate><category>psychology</category><category>corporate life</category><author>Roman Glushko</author></item><item><title>The Nature of Distributed Systems</title><link>https://www.romaglushko.com/blog/nature-of-distributed-systems/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/nature-of-distributed-systems/</guid><description>How distributed systems differ from single-node setups</description><pubDate>Tue, 20 Jul 2021 00:00:00 GMT</pubDate><category>system design</category><author>Roman Glushko</author></item><item><title>Sunday Morning Problem</title><link>https://www.romaglushko.com/thoughts/sunday-morning-problem/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/sunday-morning-problem/</guid><description>How a lazy Sunday morning reveals whether your habits are working for you or against you</description><pubDate>Sun, 04 Jul 2021 00:00:00 GMT</pubDate><category>psychology</category><category>life exploring</category><category>self-improvement</category><author>Roman Glushko</author></item><item><title>360 Review is Dead</title><link>https://www.romaglushko.com/thoughts/360-review-is-dead/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/360-review-is-dead/</guid><description>About the inefficiency of 360 reviews and how you could do better</description><pubDate>Sat, 26 Jun 2021 00:00:00 GMT</pubDate><category>management</category><author>Roman Glushko</author></item><item><title>Design LRU Cache</title><link>https://www.romaglushko.com/blog/design-lru-cache/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/design-lru-cache/</guid><description>Have fun designing least-recently-used cache in Python</description><pubDate>Wed, 16 Jun 2021 00:00:00 GMT</pubDate><category>algorithmic coding</category><category>data structures</category><category>python</category><author>Roman Glushko</author></item><item><title>Heapify ✌️</title><link>https://www.romaglushko.com/blog/heapify/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/heapify/</guid><description>How the priority queue and heap work: theory, implementation, complexity. Heap sort and other applications.</description><pubDate>Sun, 16 May 2021 00:00:00 GMT</pubDate><category>algorithmic coding</category><category>data structures</category><category>python</category><author>Roman Glushko</author></item><item><title>How I built my ML workstation 🔬</title><link>https://www.romaglushko.com/blog/how-i-built-my-ml-workstation/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/how-i-built-my-ml-workstation/</guid><description>A full story about building a custom ML workstation. From picking parts to installing and using software.</description><pubDate>Sun, 18 Apr 2021 00:00:00 GMT</pubDate><category>machine learning</category><category>computer engineering</category><author>Roman Glushko</author></item><item><title>K-Nearest Neighbors 👨‍👩‍👧‍👦</title><link>https://www.romaglushko.com/blog/k-nearest-neighbors/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/k-nearest-neighbors/</guid><description>Theoretical aspects of the KNN algorithm. Where it can be applied and when it fails.</description><pubDate>Mon, 05 Apr 2021 00:00:00 GMT</pubDate><category>machine learning</category><author>Roman Glushko</author></item><item><title>Rock, Paper, Scissors</title><link>https://www.romaglushko.com/blog/rock-paper-scissors/</link><guid isPermaLink="true">https://www.romaglushko.com/blog/rock-paper-scissors/</guid><description>Play rock, paper, scissors game powered by computer vision</description><pubDate>Sun, 31 Jan 2021 00:00:00 GMT</pubDate><category>computer vision</category><author>Roman Glushko</author></item><item><title>Power of No Action</title><link>https://www.romaglushko.com/thoughts/power-of-no-action/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/power-of-no-action/</guid><description>Sometimes the best move is no move - why acting under uncertainty can do more harm than waiting</description><pubDate>Tue, 29 Dec 2020 00:00:00 GMT</pubDate><category>psychology</category><category>life exploring</category><category>decision-making</category><category>statistics</category><author>Roman Glushko</author></item><item><title>Factors Affecting Decision Making</title><link>https://www.romaglushko.com/thoughts/factors-affecting-decision-making/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/factors-affecting-decision-making/</guid><description>A few rules to keep in mind when making decisions</description><pubDate>Sun, 31 May 2020 00:00:00 GMT</pubDate><category>psychology</category><category>life exploring</category><category>decision making</category><category>decisions</category><author>Roman Glushko</author></item><item><title>Disadvantages are everywhere</title><link>https://www.romaglushko.com/thoughts/disadvantages-are-everywhere/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/disadvantages-are-everywhere/</guid><description>Every choice comes with trade-offs - learning to see and accept them is what makes decisions stick</description><pubDate>Fri, 01 May 2020 00:00:00 GMT</pubDate><category>psychology</category><category>life exploring</category><category>life style</category><author>Roman Glushko</author></item><item><title>Measure and Improve</title><link>https://www.romaglushko.com/thoughts/measure-and-improve/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/measure-and-improve/</guid><description>Improve yourself by measuring where you are right now</description><pubDate>Sun, 15 Mar 2020 00:00:00 GMT</pubDate><category>psychology</category><category>life exploring</category><author>Roman Glushko</author></item><item><title>Just Ask</title><link>https://www.romaglushko.com/thoughts/just-ask/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/just-ask/</guid><description>We often underestimate the power of simply asking - why we hesitate and what happens when we don&apos;t</description><pubDate>Sun, 02 Feb 2020 00:00:00 GMT</pubDate><category>psychology</category><category>life exploring</category><category>life style</category><author>Roman Glushko</author></item><item><title>The Normal Life</title><link>https://www.romaglushko.com/thoughts/normal-life/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/normal-life/</guid><description>The comfortable, predictable life you imagine isn&apos;t what growth looks like - and that&apos;s okay</description><pubDate>Wed, 08 Jan 2020 00:00:00 GMT</pubDate><category>psychology</category><category>life exploring</category><author>Roman Glushko</author></item><item><title>Focus on solutions, not on problems</title><link>https://www.romaglushko.com/thoughts/focus-on-solutions-not-on-problems/</link><guid isPermaLink="true">https://www.romaglushko.com/thoughts/focus-on-solutions-not-on-problems/</guid><description>Proactivity will make you version 2.0</description><pubDate>Thu, 26 Dec 2019 00:00:00 GMT</pubDate><category>problem solving</category><category>dealing with challenges</category><category>psychology</category><category>life exploring</category><author>Roman Glushko</author></item></channel></rss>