<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Software Design on cloudmato.com</title><link>https://cloudmato.com/tags/software-design/</link><description>Recent content in Software Design on cloudmato.com</description><generator>Hugo -- gohugo.io</generator><language>en</language><managingEditor>cloudmato.com</managingEditor><webMaster>cloudmato.com</webMaster><lastBuildDate>Sun, 07 Jun 2026 15:51:49 +0530</lastBuildDate><atom:link href="https://cloudmato.com/tags/software-design/index.xml" rel="self" type="application/rss+xml"/><item><title>Why SOLID Principles Matter &amp; Why Developers Skip Them</title><link>https://cloudmato.com/posts/solid-principles-real-world-examples/</link><pubDate>Sun, 07 Jun 2026 15:51:49 +0530</pubDate><author>cloudmato.com</author><guid>https://cloudmato.com/posts/solid-principles-real-world-examples/</guid><description>&lt;p&gt;Everyone talks about SOLID principles. Your senior dev mentions them in code review. Your architecture docs reference them. But why do actual projects become unmaintainable garbage despite teams &amp;ldquo;knowing&amp;rdquo; SOLID? The answer: understanding SOLID and actually building with it are two completely different things [1].&lt;/p&gt;
&lt;p&gt;Most developers learn about SOLID early, nod along, then immediately violate these principles the moment a deadline hits. Let me show you where the rubber meets the road — and why it&amp;rsquo;s harder than it sounds.&lt;/p&gt;</description></item><item><title>Why Use Functional Programming When OOP Exists?</title><link>https://cloudmato.com/posts/functional-programming-vs-oop-do-you-need-both/</link><pubDate>Thu, 04 Jun 2026 16:32:06 +0530</pubDate><author>cloudmato.com</author><guid>https://cloudmato.com/posts/functional-programming-vs-oop-do-you-need-both/</guid><description>&lt;p&gt;OOP is 50+ years old. Classes, objects, inheritance — it works, everyone knows it, almost every popular language supports it. So why are people talking about functional programming like it&amp;rsquo;s some revelation? Because OOP is great at modelling &lt;em&gt;things&lt;/em&gt;. FP is great at modelling &lt;em&gt;transformations&lt;/em&gt;. Most real software has both, and conflating the two is where the confusion starts.&lt;/p&gt;
&lt;h2 class="header-anchor-wrapper"&gt;What Is Functional Programming, Actually?
&lt;a href="#what-is-functional-programming-actually" class="header-anchor-link"&gt;
&lt;svg
xmlns="http://www.w3.org/2000/svg"
width="1rem" height="1rem" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round"&gt;
&lt;line x1="4" y1="9" x2="20" y2="9"&gt;&lt;/line&gt;&lt;line x1="4" y1="15" x2="20" y2="15"&gt;&lt;/line&gt;&lt;line x1="10" y1="3" x2="8" y2="21"&gt;&lt;/line&gt;&lt;line x1="16" y1="3" x2="14" y2="21"&gt;&lt;/line&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Not &amp;ldquo;functions inside a class.&amp;rdquo; That&amp;rsquo;s just OOP with functions.&lt;/p&gt;</description></item><item><title>OOP Mistakes Programmers Keep Making</title><link>https://cloudmato.com/posts/oop-mistakes-programmers-make/</link><pubDate>Tue, 02 Jun 2026 18:48:23 +0530</pubDate><author>cloudmato.com</author><guid>https://cloudmato.com/posts/oop-mistakes-programmers-make/</guid><description>&lt;p&gt;OOP has been around for fifty years. Everyone in software has taken a course on it. Most have read about SOLID, inheritance, encapsulation, polymorphism. And yet — I keep seeing the same design mistakes in codebase after codebase, from startups to enterprise projects.&lt;/p&gt;
&lt;p&gt;Knowing the theory is not the same as writing good OOP. Here&amp;rsquo;s where it actually goes wrong.&lt;/p&gt;
&lt;h2 class="header-anchor-wrapper"&gt;The God Object
&lt;a href="#the-god-object" class="header-anchor-link"&gt;
&lt;svg
xmlns="http://www.w3.org/2000/svg"
width="1rem" height="1rem" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round"&gt;
&lt;line x1="4" y1="9" x2="20" y2="9"&gt;&lt;/line&gt;&lt;line x1="4" y1="15" x2="20" y2="15"&gt;&lt;/line&gt;&lt;line x1="10" y1="3" x2="8" y2="21"&gt;&lt;/line&gt;&lt;line x1="16" y1="3" x2="14" y2="21"&gt;&lt;/line&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Start a project, create a &lt;code&gt;UserService&lt;/code&gt; class. Someone adds payment logic to it. Then notification handling. Then authentication checks. Six months later: a 2000-line file that does everything, depends on everything, and breaks every time anyone touches it.&lt;/p&gt;</description></item></channel></rss>