<?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[Where Chris Write]]></title><description><![CDATA[I’m a Machine Learning Engineer exploring the edges of what’s possible with AI and modern systems. After a season of standing still, I’m finding my pace again.]]></description><link>https://ibearu.com</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Apr 2026 11:44:24 GMT</lastBuildDate><atom:link href="https://ibearu.com/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Claude Code Just Works With Basic Tools]]></title><description><![CDATA[I have been using Cursor for more than a year, so I consider myself deeply into vibe coding. I never thought there would be a better tool than Cursor for vibe coding, without a question, I am doomed to be wrong.
Claude Code has been on my radar for a...]]></description><link>https://ibearu.com/claude-code-just-works-with-basic-tools</link><guid isPermaLink="true">https://ibearu.com/claude-code-just-works-with-basic-tools</guid><category><![CDATA[vector embeddings]]></category><category><![CDATA[vibe coding]]></category><category><![CDATA[llm]]></category><dc:creator><![CDATA[Chris Liu]]></dc:creator><pubDate>Sun, 28 Sep 2025 12:11:53 GMT</pubDate><content:encoded><![CDATA[<p>I have been using <strong>Cursor</strong> for more than a year, so I consider myself deeply into vibe coding. I never thought there would be a better tool than <strong>Cursor</strong> for vibe coding, without a question, I am doomed to be wrong.</p>
<p><strong>Claude Code</strong> has been on my radar for a while, but I have always been skeptical about the combo of CLI + vibe coding. I mean, come on, what if it make a mistake and you want to change just a line. So I stay with <strong>Cursor</strong> until mid of August (little did I know model degrading was happening), and I decided to give <strong>Claude Code</strong> a go.</p>
<h2 id="heading-it-just-works">It just works</h2>
<p>I was surprised by how effective <strong>Claude Code</strong> approach is compared other coding tools. While <strong>Curosr</strong> relies on <strong>vector indexing</strong> and <strong>embeddings</strong> to search and retrieve code context, Claude Code often just uses basic tools like <code>grep</code> — then feeds the raw matched code directly back into the LLM.</p>
<p>And unexpectedly, this “primitive” approach often <em>feels better</em> than advanced indexing.</p>
<h2 id="heading-why-this-might-work-better">Why This Might Work Better</h2>
<ol>
<li><p><strong>Zero Setup vs. Heavy Preprocessing</strong><br /> Vector indexing and embedding pipelines require time and infrastructure, generating embeddings → storing them → updating them when code changes. Meanwhile, <code>grep</code> is instant and works out of the box.</p>
</li>
<li><p><strong>Uncertainty in Embeddings</strong><br /> Embeddings are fuzzy by design. They can retrieve semantically similar but irrelevant code. That’s a core limitation of LLM-driven search: you add another probabilistic layer before the model even sees the code. <code>grep</code> is deterministic, it finds exactly what matches.</p>
</li>
<li><p><strong>Fewer Points of Failure</strong><br /> Every extra system (embedding model choice, vector DB reliability, sync jobs) adds an extra layer of potential failure.</p>
</li>
<li><p><strong>Privacy &amp; Transparency</strong><br /> With vector search, the code gets processed by another model and stored somewhere. <strong>Claude Code</strong>’s straightforward approach means no hidden vector stores and fewer unknowns about where your data lives.</p>
</li>
</ol>
<h2 id="heading-the-cost-trade-off">The Cost Trade-Off</h2>
<p>One obvious drawback: sending large chunks of code directly to the LLM burns <strong>tokens</strong>. At first, I thought maybe this was a way for Anthropic to charge more, but that’s unlikely. Claude Code comes bundled with the subscription, if the goal were to upsell API usage, they wouldn’t have made it unlimited in the first place.</p>
<p>Still, token usage is the main technical trade-off here, you still reach your limit faster.</p>
<h2 id="heading-less-is-more">Less Is More</h2>
<p>This all circles back to an old engineering principle: <em>Less is more.</em></p>
]]></content:encoded></item><item><title><![CDATA[Reboot]]></title><description><![CDATA[It has been almost sixteen years since I wrote my last blog post—back on Blogspot (nostalgia!). Since then I tried Facebook, Instagram, and WeChat. A lot happened. Period.
Some years felt wasted, and I stood still longer than I wanted. But I also ear...]]></description><link>https://ibearu.com/reboot</link><guid isPermaLink="true">https://ibearu.com/reboot</guid><category><![CDATA[personal]]></category><category><![CDATA[life]]></category><dc:creator><![CDATA[Chris Liu]]></dc:creator><pubDate>Sun, 28 Sep 2025 09:18:23 GMT</pubDate><content:encoded><![CDATA[<p>It has been almost sixteen years since I wrote my last blog post—back on Blogspot (nostalgia!). Since then I tried Facebook, Instagram, and WeChat. A lot happened. Period.</p>
<p>Some years felt wasted, and I stood still longer than I wanted. But I also earned a master’s in statistics, moved away from a miserable accounting/finance path back into computing, and rode the waves of Big Data and Data Science. I moved to a new city, moved back, moved again. Then COVID arrived and life reshuffled once more.</p>
<p>Looking back, much of the last decade felt like treading water. The good news is I’ve caught the AI wave and something clicked this year. I don’t want to drift anymore. I’m pressing the reset button.</p>
<p>This blog is my reboot.</p>
]]></content:encoded></item></channel></rss>