<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Maintainability on Omid Farhang</title><link>https://omid.dev/tags/maintainability/</link><description>Recent content in Maintainability on Omid Farhang</description><image><title>Omid Farhang</title><url>https://omid.dev/images/bio-photo-150x150.jpg</url><link>https://omid.dev/images/bio-photo-150x150.jpg</link></image><generator>Hugo -- 0.163.3</generator><language>en-US</language><copyright>2026 Omid Farhang | All rights reserved.</copyright><lastBuildDate>Tue, 09 Jun 2026 01:50:00 +0330</lastBuildDate><atom:link href="https://omid.dev/tags/maintainability/index.xml" rel="self" type="application/rss+xml"/><atom:link href="https://pubsubhubbub.appspot.com/" rel="hub"/><item><title>How to Build a Frontend Testing Strategy That Actually Scales</title><link>https://omid.dev/2026/06/09/how-to-build-a-frontend-testing-strategy-that-actually-scales/</link><pubDate>Tue, 09 Jun 2026 01:50:00 +0330</pubDate><guid>https://omid.dev/2026/06/09/how-to-build-a-frontend-testing-strategy-that-actually-scales/</guid><description>A practical frontend testing strategy for large teams: how to choose between unit, integration, component, and end-to-end tests in a real Angular codebase without creating slow, fragile coverage.</description></item><item><title>Why Your Frontend Tests Flake and How to Fix Them for Good</title><link>https://omid.dev/2026/06/08/why-your-frontend-tests-flake-and-how-to-fix-them-for-good/</link><pubDate>Mon, 08 Jun 2026 02:00:00 +0330</pubDate><guid>https://omid.dev/2026/06/08/why-your-frontend-tests-flake-and-how-to-fix-them-for-good/</guid><description>A practical guide to reducing flaky frontend tests by improving isolation, waiting strategies, deterministic fixtures, test data, clocks, network control, and CI diagnostics.</description></item><item><title>Stop Modeling Angular Screens with Five Booleans</title><link>https://omid.dev/2026/06/02/stop-modeling-angular-screens-with-five-booleans/</link><pubDate>Tue, 02 Jun 2026 01:15:00 +0330</pubDate><guid>https://omid.dev/2026/06/02/stop-modeling-angular-screens-with-five-booleans/</guid><description>Most Angular UI bugs come from screens modeled as scattered flags. Replace loading, error, empty, and ready booleans with one explicit state model your templates and reviewers can trust.</description></item><item><title>The Hidden Cost of Nice Syntax: When Angular's New Template Features Make Code Harder to Reason About</title><link>https://omid.dev/2026/05/26/angular-template-syntax-hidden-cost/</link><pubDate>Tue, 26 May 2026 02:48:00 +0330</pubDate><guid>https://omid.dev/2026/05/26/angular-template-syntax-hidden-cost/</guid><description>Angular&amp;#39;s newer template syntax is powerful, but spread/rest, arrow functions, multi-case switches, and richer control flow need team rules before clever templates become maintenance debt.</description></item><item><title>Demystifying Software Architecture: Building the Backbone of Modern Applications</title><link>https://omid.dev/2024/05/28/software-architecture-and-design-principles/</link><pubDate>Tue, 28 May 2024 02:25:34 +0330</pubDate><guid>https://omid.dev/2024/05/28/software-architecture-and-design-principles/</guid><description>&lt;p&gt;In the ever-evolving world of software development, one term consistently stands out: &lt;strong&gt;software architecture&lt;/strong&gt;. Often likened to the architectural blueprint of a building, software architecture lays the foundational structure for an application, guiding its development, maintenance, and scalability. But what exactly is software architecture, and why is it so crucial? Let&amp;rsquo;s explore the intricacies of this pivotal aspect of software engineering.&lt;/p&gt;
&lt;h2 id="what-is-software-architecture"&gt;What is Software Architecture?&lt;/h2&gt;
&lt;p&gt;Software architecture refers to the high-level structure of a software system, encompassing the arrangement of components, their relationships, and the principles guiding their design and evolution. It&amp;rsquo;s not just about code; it&amp;rsquo;s about the big picture, ensuring that the software system is robust, maintainable, and scalable.&lt;/p&gt;</description></item></channel></rss>