<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Ruby on Yeah, I Made a Website</title><link>https://site.aaronhsyong.com/categories/ruby/</link><description>Recent content in Ruby on Yeah, I Made a Website</description><generator>Hugo -- gohugo.io</generator><language>en</language><managingEditor>aaronhsyong2@gmail.com (Aaron Yong)</managingEditor><webMaster>aaronhsyong2@gmail.com (Aaron Yong)</webMaster><copyright>© 2026 Aaron Yong</copyright><lastBuildDate>Mon, 06 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://site.aaronhsyong.com/categories/ruby/index.xml" rel="self" type="application/rss+xml"/><item><title>The Full Test Suite</title><link>https://site.aaronhsyong.com/posts/the-full-test-suite/</link><pubDate>Mon, 06 Apr 2026 00:00:00 +0000</pubDate><author>aaronhsyong2@gmail.com (Aaron Yong)</author><guid>https://site.aaronhsyong.com/posts/the-full-test-suite/</guid><description>System specs with Capybara, Shoulda Matchers one-liners, SimpleCov enforcement, and why the testing pyramid isn&amp;rsquo;t just a diagram</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://site.aaronhsyong.com/posts/the-full-test-suite/featured.jpg"/></item><item><title>The Switching Cost</title><link>https://site.aaronhsyong.com/posts/the-switching-cost/</link><pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate><author>aaronhsyong2@gmail.com (Aaron Yong)</author><guid>https://site.aaronhsyong.com/posts/the-switching-cost/</guid><description>What was harder than expected, what was easier, and what I&amp;rsquo;d tell myself before learning Rails</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://site.aaronhsyong.com/posts/the-switching-cost/featured.jpg"/></item><item><title>Testing in a New Language</title><link>https://site.aaronhsyong.com/posts/testing-in-a-new-language/</link><pubDate>Sun, 22 Mar 2026 00:00:00 +0000</pubDate><author>aaronhsyong2@gmail.com (Aaron Yong)</author><guid>https://site.aaronhsyong.com/posts/testing-in-a-new-language/</guid><description>RSpec vs Jest, FactoryBot vs fixtures, and Rails security that comes free</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://site.aaronhsyong.com/posts/testing-in-a-new-language/featured.jpg"/></item><item><title>The Rails Way</title><link>https://site.aaronhsyong.com/posts/the-rails-way/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><author>aaronhsyong2@gmail.com (Aaron Yong)</author><guid>https://site.aaronhsyong.com/posts/the-rails-way/</guid><description>Service objects, Hotwire, ERB, and where Rails and Node.js disagree about how web apps should work</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://site.aaronhsyong.com/posts/the-rails-way/featured.jpg"/></item><item><title>Convention Over Configuration</title><link>https://site.aaronhsyong.com/posts/convention-over-configuration/</link><pubDate>Sun, 08 Mar 2026 00:00:00 +0000</pubDate><author>aaronhsyong2@gmail.com (Aaron Yong)</author><guid>https://site.aaronhsyong.com/posts/convention-over-configuration/</guid><description>Rails MVC, ActiveRecord, and why the framework makes decisions so you don&amp;rsquo;t have to</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://site.aaronhsyong.com/posts/convention-over-configuration/featured.jpg"/></item><item><title>Everything Is an Object</title><link>https://site.aaronhsyong.com/posts/everything-is-an-object/</link><pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate><author>aaronhsyong2@gmail.com (Aaron Yong)</author><guid>https://site.aaronhsyong.com/posts/everything-is-an-object/</guid><description>Ruby syntax through TypeScript eyes — implicit returns, truthiness gotchas, and why 0 is truthy</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://site.aaronhsyong.com/posts/everything-is-an-object/featured.jpg"/></item></channel></rss>