<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Sushrant Blogs]]></title><description><![CDATA[Sushrant Blogs]]></description><link>https://sushrantrijal.com.np</link><generator>RSS for Node</generator><lastBuildDate>Mon, 18 May 2026 06:56:04 GMT</lastBuildDate><atom:link href="https://sushrantrijal.com.np/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Does Code Quality Matter in the AI Era?]]></title><description><![CDATA[We are officially in a new era of development.
AI is writing most of our code. Not just helping, not just autocompleting a function here and there. It is a driver now. Companies have automated workflo]]></description><link>https://sushrantrijal.com.np/does-code-quality-matter-in-the-ai-era</link><guid isPermaLink="true">https://sushrantrijal.com.np/does-code-quality-matter-in-the-ai-era</guid><dc:creator><![CDATA[Sushrant Rijal]]></dc:creator><pubDate>Fri, 17 Apr 2026 07:36:46 GMT</pubDate><content:encoded><![CDATA[<p>We are officially in a new era of development.</p>
<p>AI is writing most of our code. Not just helping, not just autocompleting a function here and there. It is a driver now. Companies have automated workflows where AI produces bug fixes for monitoring tools like Sentry alerts without a human ever touching it. Many bugs are being caught, diagnosed, and fixed by AI without a human ever spending even a second to worry about how to fix it.</p>
<p>People are building features with AI. Entire apps with AI. The human is becoming the reviewer, not the author.</p>
<p>So in this AI productivity era, does code quality still matter?</p>
<p>If yes, how much? If no, why not?</p>
<p>I think the discussion now circles back to what "clean code" even means. There was a popular saying: write code for humans, not for computers. The idea was that your future teammate, or your future self, would be the one reading it at 2am trying to figure out what went wrong.</p>
<p>But think about that now. Computers, agents, and systems are going to read and edit the majority of code going forward. They are the ones writing it, and they are the ones coming back to fix it. So does the old definition still hold? Does it even matter if the code is messy, as long as the machine can parse it?</p>
<p>That is the question worth sitting with.</p>
<p>Here is the honest answer: <strong>for most code being written today, quality probably does not matter as much as we used to think.</strong></p>
<p>And that is not a controversial take anymore. It is just reality.</p>
<p>The weekend project. The internal tool nobody outside your team will ever touch. The script that runs once and gets thrown away. Vibe code it, ship it, move on. If it works, it works. AI will probably rewrite it anyway the next time someone asks it to "<em><strong>improve this.</strong></em>"</p>
<p>But here is where it gets interesting.</p>
<p>Maybe the parts where quality does matter do not matter as much anymore either. And that is a strange thing to say out loud, but it might just be true.</p>
<p>Think about what is actually happening in production systems today. AI is autonomously patching code. It is building entire features. It is fixing its own bugs. It is writing code, maintaining it, and coming back to clean up after itself. Humans are not disappearing from the loop, they are just stepping further and further back from it.</p>
<p>Maybe clean code was always solving a human problem. And if humans are leaving the loop, the problem is leaving with them.</p>
<p>We honestly do not know yet. The codebases running on AI-generated and AI-maintained code are still young. The compounding effects, if there are any, have not fully shown up. Maybe they will. Maybe clean code will turn out to matter more than ever in those systems. Or maybe AI just gets better and the whole debate becomes irrelevant.</p>
<p>That is the part nobody can answer right now.</p>
<p>Clean code was a discipline built for a different era. Whether it survives this one or quietly becomes a relic, we are probably a few years away from knowing for sure.</p>
]]></content:encoded></item><item><title><![CDATA[Never fight a framework]]></title><description><![CDATA[We have already come a long way in development and engineering. There is tools for almost every repeated thing now. There are tools for protocols, there are tools for patterns, there are tools for integration—you get the gist.
And its very convenient...]]></description><link>https://sushrantrijal.com.np/never-fight-a-framework</link><guid isPermaLink="true">https://sushrantrijal.com.np/never-fight-a-framework</guid><category><![CDATA[Software Engineering]]></category><dc:creator><![CDATA[Sushrant Rijal]]></dc:creator><pubDate>Sat, 08 Feb 2025 22:14:31 GMT</pubDate><content:encoded><![CDATA[<p>We have already come a long way in development and engineering. There is tools for almost every <strong>repeated</strong> thing now. There are tools for protocols, there are tools for patterns, there are tools for integration—you get the gist.</p>
<p>And its very convenient to use them, and I am in full support of it (usually). But the problem comes when you pick a framework or tool to use to solve a particular problem. It can be anything - it can be as small as picking bootstrap to speed up your design, and it can be as complex as picking some platform libraries to support some protocol. It gives you great boost, its easy to begin with usually, it helps you solve the problem in hand, roll feature / things quicker, also maybe give you a discount for not knowing everything in depth yet achieving the result.</p>
<p>But it starts a rabbit hole as well; frameworks are, till some extent, generally opinionated, or I would say they have some prescribed patterns (many people call it best practices too). So if you start fighting it, that’s where things can get nasty. What does fighting it mean (it can mean overriding random things, not using the prescribed practices, trying to write one thing in another, and the list keeps going)? I would give few examples</p>
<ol>
<li><p>I have seen people using Fastapi because it supports Async really well and offers other benefits like having a micro framework, out-of-the-box support for Python, etc. But they try to use it as a Django. They will create unnecessary abstraction just to get some convenience they have in Django to have similarities here. By no means, I mean this is wrong, but will you be able to actually leverage what Fastapi offers you if you try to mould it as Django?</p>
</li>
<li><p>I see people using bootstrap but after some time start to override random classes and at one point they will start fighting with bootstrap with more css code overriding everything</p>
</li>
<li><p>Or anything else—let’s say someone picks a library that helps them to do authorisation and it only supports CSV format to add policies. Maybe they could just use an adapter pattern or some preprocessing to convert data to CSV, and the tool should take care of the rest? But I have seen people trying to override random methods inside the library to get things working weirdly. And at what cost later they get to the unique bugs , performance issue, hard-to-understand code, etc</p>
</li>
</ol>
<p>To summarise, I am by no means against enhancing an existing tool or moulding it to your pattern, but it should happen with careful planning and consideration and try to leverage the best offering from the tool you are using and not be shortsighted and only solve problems at hand because its so easy to think, Hey, why not?</p>
<p>So be careful next time you are fighting a framework :)</p>
<p><strong>PS: This blog is a WIP in some sense, as I wrote this raw. Maybe someday i will edit it to add more examples, follow best blogging practices (LOL, I am fighting the framework here), and maybe make it more easy to consume. But thanks for reading anyway. Happy to chat about anything in this if you have got different perspective. Thank you!</strong></p>
]]></content:encoded></item><item><title><![CDATA[First Step to write blogs/publish my thoughts]]></title><description><![CDATA[I am Sushrant Rijal from Kathmandu, Nepal. Professionally, I am a Software Engineer with multiple years of experience mostly in Full Stack Software Engineering and a bit of Tech Leadership too.
I always wanted to start writing and sharing about softw...]]></description><link>https://sushrantrijal.com.np/first-step-to-write-blogspublish-my-thoughts</link><guid isPermaLink="true">https://sushrantrijal.com.np/first-step-to-write-blogspublish-my-thoughts</guid><dc:creator><![CDATA[Sushrant Rijal]]></dc:creator><pubDate>Tue, 05 Dec 2023 18:22:35 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1701801368401/0d7302f5-2ff7-4963-95ad-986b060767a8.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I am Sushrant Rijal from Kathmandu, Nepal. Professionally, I am a Software Engineer with multiple years of experience mostly in Full Stack Software Engineering and a bit of Tech Leadership too.</p>
<p>I always wanted to start writing and sharing about software engineering, technical designs, trends, and other topics of life in general too. But it's always the first step that is hardest in anything you do. After some careful thought, I decided i would start writing - even if it is simple things at first, just to make me keep going.</p>
<p>I am looking forward to writing on different areas of software engineering and life along with a compilation of anything new I learn or even notes from my learning or new exploration.</p>
<p>Looking forward to publishing good content.</p>
<p>More About me -<br />Linkedin: <a target="_blank" href="https://www.linkedin.com/in/sushrantrijal/">https://www.linkedin.com/in/sushrantrijal/</a><br />www.sushrantrijal.com</p>
]]></content:encoded></item></channel></rss>