<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Tiptopdesign</title><description>Full-stack AI consulting and practical engineering by Michał Gacek for business problems that need real execution.</description><link>https://www.tiptopdesign.pl/</link><item><title>Redis in Practice: A Case Study with Hono and TypeScript</title><link>https://www.tiptopdesign.pl/blog/redis-in-practice-hono-typescript/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/redis-in-practice-hono-typescript/</guid><description>A practical case study of using Redis in a small Hono + TypeScript API - caching, counters, rate limiting, and short-lived state. Patterns that solve real backend problems, not abstract SET foo bar tutorials.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate></item><item><title>How I Built an LLM Workflow That Stabilized E2E Tests in a Real Project</title><link>https://www.tiptopdesign.pl/blog/llm-workflow-e2e-tests/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/llm-workflow-e2e-tests/</guid><description>Flaky E2E tests are silent killers of team velocity. Here is how I turned an LLM from a code generator into a participant in a diagnostic process - using local skills, knowledge files, and anti-flake rules grounded in a real Playwright + Qase regression suite.</description><pubDate>Mon, 04 May 2026 00:00:00 GMT</pubDate></item><item><title>When to Use CPQ and the EAV Model - Lessons from Building a Prototype</title><link>https://www.tiptopdesign.pl/blog/cpq-and-eav-model/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/cpq-and-eav-model/</guid><description>CPQ and EAV are two of the most debated patterns in business systems. Here is when they actually make sense, when they are overkill, and why they so often end up in the same codebase.</description><pubDate>Mon, 20 Apr 2026 00:00:00 GMT</pubDate></item><item><title>How I Built an AI Agent From Scratch in TypeScript - No Frameworks, No Magic</title><link>https://www.tiptopdesign.pl/blog/ai-agent-from-scratch-typescript/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/ai-agent-from-scratch-typescript/</guid><description>A deep dive into building a real AI agent from scratch in TypeScript - no LangChain, no CrewAI, just a loop, the OpenAI API, and a few small libraries. Learn the architecture, the decisions, and the lessons that frameworks hide from you.</description><pubDate>Sat, 28 Mar 2026 00:00:00 GMT</pubDate></item><item><title>The End of Fast Coding: What Seniority Really Means in the Age of AI</title><link>https://www.tiptopdesign.pl/blog/end-of-fast-coding/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/end-of-fast-coding/</guid><description>In the age of AI, seniority is becoming less about writing code fast and more about making high-quality decisions in complex contexts.</description><pubDate>Thu, 19 Mar 2026 00:00:00 GMT</pubDate></item><item><title>MCP Is Not Dead. Most Teams Just Haven&apos;t Learned How to Evaluate It</title><link>https://www.tiptopdesign.pl/blog/mcp-vs-cli/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/mcp-vs-cli/</guid><description>A practical evaluation of MCP and CLI tooling for AI agents, covering centralization, security, observability, latency, and hybrid workflows.</description><pubDate>Sun, 15 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Hard Negative Mining: A Practical Guide for Senior Developers</title><link>https://www.tiptopdesign.pl/blog/hard-negative-mining/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/hard-negative-mining/</guid><description>A practical explanation of hard negative mining for embeddings, ranking, recommendation systems, contrastive learning, and model evaluation.</description><pubDate>Sat, 15 Nov 2025 00:00:00 GMT</pubDate></item><item><title>TypeScript&apos;s `satisfies` Operator: When and How to Use It</title><link>https://www.tiptopdesign.pl/blog/typescript-satisfies-operator/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/typescript-satisfies-operator/</guid><description>Learn how TypeScript&apos;s satisfies operator preserves literal inference while checking object shapes, mapped types, and safer configuration objects.</description><pubDate>Thu, 13 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Mastering Git: From Basics to Advanced Techniques</title><link>https://www.tiptopdesign.pl/blog/git/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/git/</guid><description>A practical Git guide covering setup, commits, branching, merging, remotes, rebasing, stashing, reflog recovery, and everyday workflow habits.</description><pubDate>Sat, 08 Jun 2024 00:00:00 GMT</pubDate></item><item><title>First post to start my journey</title><link>https://www.tiptopdesign.pl/blog/first-post/</link><guid isPermaLink="true">https://www.tiptopdesign.pl/blog/first-post/</guid><description>A short introductory note about starting a technical writing habit, learning in public, and documenting engineering experience.</description><pubDate>Tue, 02 Apr 2024 00:00:00 GMT</pubDate></item></channel></rss>