<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Rahul Mohandas Articles</title><description>Writing about software engineering, distributed systems, cloud infrastructure, and developer tooling.</description><link>https://www.rahulmohandas.com/</link><language>en-us</language><item><title>Duplication Is Cheaper Than the Wrong Abstraction</title><link>https://www.rahulmohandas.com/blog/2026-08-17-duplication-vs-coupling/</link><guid isPermaLink="true">https://www.rahulmohandas.com/blog/2026-08-17-duplication-vs-coupling/</guid><description>DRY reduces repetition, but the wrong abstraction couples concepts that should be free to change independently.</description><pubDate>Mon, 17 Aug 2026 00:00:00 GMT</pubDate><category>Process</category><category>software</category><category>development</category><category>design</category><category>refactoring</category></item><item><title>How to use Git effectively</title><link>https://www.rahulmohandas.com/blog/2019-05-16-how-to-use-git-effectively/</link><guid isPermaLink="true">https://www.rahulmohandas.com/blog/2019-05-16-how-to-use-git-effectively/</guid><description>A practical overview of GitFlow and the roles of master, develop, feature, and release branches.</description><pubDate>Thu, 16 May 2019 00:00:00 GMT</pubDate><category>Process</category><category>software</category><category>development</category><category>git</category></item><item><title>Code Reviews</title><link>https://www.rahulmohandas.com/blog/2018-10-08-peer-reviews/</link><guid isPermaLink="true">https://www.rahulmohandas.com/blog/2018-10-08-peer-reviews/</guid><description>A living guide to reviewing code with clarity, consistency, and constructive feedback.</description><pubDate>Mon, 08 Oct 2018 00:00:00 GMT</pubDate><category>Process</category><category>software</category><category>development</category><category>code</category><category>review</category></item><item><title>Algorithm Detection in Assembly</title><link>https://www.rahulmohandas.com/blog/2013-05-01-algorithm-detection-in-assembly/</link><guid isPermaLink="true">https://www.rahulmohandas.com/blog/2013-05-01-algorithm-detection-in-assembly/</guid><description>Research into recognizing known algorithms within binaries using IDA Pro plugins and program analysis.</description><pubDate>Wed, 01 May 2013 00:00:00 GMT</pubDate><category>Projects</category><category>assembly</category><category>algorithm</category><category>nsa</category></item><item><title>Learning Racetrack</title><link>https://www.rahulmohandas.com/blog/2013-04-01-learning-racetrack/</link><guid isPermaLink="true">https://www.rahulmohandas.com/blog/2013-04-01-learning-racetrack/</guid><description>Rebuilding an interactive racetrack to help middle-school students learn through hands-on play.</description><pubDate>Mon, 01 Apr 2013 00:00:00 GMT</pubDate><category>Projects</category><category>community service</category><category>raspberry pi</category></item><item><title>TCP Keep-Alive</title><link>https://www.rahulmohandas.com/blog/2012-11-01-tcp-keepalive/</link><guid isPermaLink="true">https://www.rahulmohandas.com/blog/2012-11-01-tcp-keepalive/</guid><description>Research into TCP keep-alive behavior across operating systems and network failures.</description><pubDate>Thu, 01 Nov 2012 00:00:00 GMT</pubDate><category>Projects</category><category>networking</category><category>tcp</category><category>research</category></item></channel></rss>