<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: nithinbekal</title><link>https://news.ycombinator.com/user?id=nithinbekal</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 17 Apr 2026 13:10:39 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=nithinbekal" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by nithinbekal in "Ask HN: What Are You Working On? (April 2026)"]]></title><description><![CDATA[
<p>A Ruby-inspired typed programming language called Sapphire: <a href="https://github.com/sapphire-project/sapphire" rel="nofollow">https://github.com/sapphire-project/sapphire</a><p>I was reading the fantastic Crafting Interpreters book, and been wondering what it would be like to design a language from scratch. I really enjoy using Sorbet with Ruby, so wanted to design a small language with Ruby's object model, and a gradual type system.<p>Despite not knowing much programming language theory, I was able to make a surprising amount of progress over a couple of weekends using Claude Code, including building a simple version manager for the language - <a href="https://github.com/sapphire-project/facet" rel="nofollow">https://github.com/sapphire-project/facet</a></p>
]]></description><pubDate>Mon, 13 Apr 2026 02:35:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47746922</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=47746922</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47746922</guid></item><item><title><![CDATA[New comment by nithinbekal in "Ask HN: Share your personal website"]]></title><description><![CDATA[
<p>Thank you!</p>
]]></description><pubDate>Wed, 14 Jan 2026 21:50:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=46624145</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=46624145</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46624145</guid></item><item><title><![CDATA[New comment by nithinbekal in "Ask HN: Share your personal website"]]></title><description><![CDATA[
<p>Blog: <a href="https://nithinbekal.com/" rel="nofollow">https://nithinbekal.com/</a><p>Photography: <a href="https://photos.nithinbekal.com/" rel="nofollow">https://photos.nithinbekal.com/</a><p>Directory of free technical books: <a href="https://devlibrary.org/" rel="nofollow">https://devlibrary.org/</a></p>
]]></description><pubDate>Wed, 14 Jan 2026 21:44:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=46624043</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=46624043</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46624043</guid></item><item><title><![CDATA[New comment by nithinbekal in "Show HN: Vibe coding a bookshelf with Claude Code"]]></title><description><![CDATA[
<p>> Four hundred and sixty books is not a scale problem. Knowing when to delete working code is not something an AI can decide for you.<p>This is such a key thing I remind myself when I build apps like this for myself. I have a similar app that has a page with 900-odd ratings, and another with 550 owned books. I decided that I won't bother with infinite scroll or complex search and filtering until my browser can no longer handle rendering that data. "Find in page" works well enough for me for now.</p>
]]></description><pubDate>Mon, 29 Dec 2025 16:14:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=46422067</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=46422067</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46422067</guid></item><item><title><![CDATA[What's New in Ruby 4.0]]></title><description><![CDATA[
<p>Article URL: <a href="https://nithinbekal.com/posts/ruby-4-0/">https://nithinbekal.com/posts/ruby-4-0/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46382195">https://news.ycombinator.com/item?id=46382195</a></p>
<p>Points: 5</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 25 Dec 2025 05:03:27 +0000</pubDate><link>https://nithinbekal.com/posts/ruby-4-0/</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=46382195</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46382195</guid></item><item><title><![CDATA[What's New in Ruby 4.0]]></title><description><![CDATA[
<p>Article URL: <a href="https://nithinbekal.com/posts/ruby-4-0/">https://nithinbekal.com/posts/ruby-4-0/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46298753">https://news.ycombinator.com/item?id=46298753</a></p>
<p>Points: 5</p>
<p># Comments: 1</p>
]]></description><pubDate>Wed, 17 Dec 2025 06:02:13 +0000</pubDate><link>https://nithinbekal.com/posts/ruby-4-0/</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=46298753</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46298753</guid></item><item><title><![CDATA[New comment by nithinbekal in "Do I not like Ruby anymore? (2024)"]]></title><description><![CDATA[
<p>Sorbet now supports inline RBS signatures, which I find a lot more readable. If you use VS code with Ruby LSP, the syntax highlighting is pretty great for the signatures too.<p><a href="https://sorbet.org/docs/rbs-support" rel="nofollow">https://sorbet.org/docs/rbs-support</a></p>
]]></description><pubDate>Tue, 26 Aug 2025 12:54:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=45025878</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=45025878</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45025878</guid></item><item><title><![CDATA[New comment by nithinbekal in "Ask HN: What Pocket alternatives did you move to?"]]></title><description><![CDATA[
<p>I replaced it with a tiny app that I built for myself, that just has the features of Pocket that I was using.<p><a href="https://bukmark.me/" rel="nofollow">https://bukmark.me/</a></p>
]]></description><pubDate>Thu, 17 Jul 2025 21:51:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=44598640</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=44598640</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44598640</guid></item><item><title><![CDATA[What's New in Ruby 3.4]]></title><description><![CDATA[
<p>Article URL: <a href="https://nithinbekal.com/posts/ruby-3-4/">https://nithinbekal.com/posts/ruby-3-4/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42512729">https://news.ycombinator.com/item?id=42512729</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 26 Dec 2024 02:29:10 +0000</pubDate><link>https://nithinbekal.com/posts/ruby-3-4/</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=42512729</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42512729</guid></item><item><title><![CDATA[What's New in Ruby 3.4]]></title><description><![CDATA[
<p>Article URL: <a href="https://nithinbekal.com/posts/ruby-3-4/">https://nithinbekal.com/posts/ruby-3-4/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42450728">https://news.ycombinator.com/item?id=42450728</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 18 Dec 2024 14:35:34 +0000</pubDate><link>https://nithinbekal.com/posts/ruby-3-4/</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=42450728</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42450728</guid></item><item><title><![CDATA[Rails 8.0.0.beta1 Released]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/rails/rails/releases/tag/v8.0.0.beta1">https://github.com/rails/rails/releases/tag/v8.0.0.beta1</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41664683">https://news.ycombinator.com/item?id=41664683</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 26 Sep 2024 23:28:58 +0000</pubDate><link>https://github.com/rails/rails/releases/tag/v8.0.0.beta1</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=41664683</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41664683</guid></item><item><title><![CDATA[New comment by nithinbekal in "Abstract Methods and NotImplementedError in Ruby"]]></title><description><![CDATA[
<p>Wouldn't that be too similar to NoMethodError? I recently came across the idiom in Smalltalk, where you would call subclassResponsibility:<p><pre><code>    someMethod:
      self subclassResponsibility
</code></pre>
I've suggested the name in the ruby bug tracker issue here:<p><a href="https://bugs.ruby-lang.org/issues/18915" rel="nofollow">https://bugs.ruby-lang.org/issues/18915</a></p>
]]></description><pubDate>Fri, 12 Apr 2024 18:01:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=40015798</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=40015798</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40015798</guid></item><item><title><![CDATA[Abstract Methods and NotImplementedError in Ruby]]></title><description><![CDATA[
<p>Article URL: <a href="https://nithinbekal.com/posts/abstract-methods-notimplementederror-ruby/">https://nithinbekal.com/posts/abstract-methods-notimplementederror-ruby/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=40008934">https://news.ycombinator.com/item?id=40008934</a></p>
<p>Points: 52</p>
<p># Comments: 25</p>
]]></description><pubDate>Fri, 12 Apr 2024 02:44:58 +0000</pubDate><link>https://nithinbekal.com/posts/abstract-methods-notimplementederror-ruby/</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=40008934</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40008934</guid></item><item><title><![CDATA[Numeric operations on value objects in Ruby]]></title><description><![CDATA[
<p>Article URL: <a href="https://nithinbekal.com/posts/numeric-operations-value-objects/">https://nithinbekal.com/posts/numeric-operations-value-objects/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=39086701">https://news.ycombinator.com/item?id=39086701</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 22 Jan 2024 05:45:39 +0000</pubDate><link>https://nithinbekal.com/posts/numeric-operations-value-objects/</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=39086701</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39086701</guid></item><item><title><![CDATA[Long exposure images from videos]]></title><description><![CDATA[
<p>Article URL: <a href="https://nithinbekal.com/posts/long-exposure-video/">https://nithinbekal.com/posts/long-exposure-video/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=39005810">https://news.ycombinator.com/item?id=39005810</a></p>
<p>Points: 23</p>
<p># Comments: 3</p>
]]></description><pubDate>Mon, 15 Jan 2024 20:40:57 +0000</pubDate><link>https://nithinbekal.com/posts/long-exposure-video/</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=39005810</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39005810</guid></item><item><title><![CDATA[What's New in Ruby 3.3]]></title><description><![CDATA[
<p>Article URL: <a href="https://nithinbekal.com/posts/ruby-3-3/">https://nithinbekal.com/posts/ruby-3-3/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=38767769">https://news.ycombinator.com/item?id=38767769</a></p>
<p>Points: 5</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 26 Dec 2023 00:32:10 +0000</pubDate><link>https://nithinbekal.com/posts/ruby-3-3/</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=38767769</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38767769</guid></item><item><title><![CDATA[New comment by nithinbekal in "Shopify Ruby on Rails distributed monolith runs 19M queries per second on MySQL"]]></title><description><![CDATA[
<p>That's from 6 years ago. Shopify has used Rails' main branch since 2019.<p><a href="https://shopify.engineering/living-on-the-edge-of-rails" rel="nofollow noreferrer">https://shopify.engineering/living-on-the-edge-of-rails</a></p>
]]></description><pubDate>Sat, 02 Dec 2023 13:25:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=38498457</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=38498457</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38498457</guid></item><item><title><![CDATA[New comment by nithinbekal in "Ruby Tip – Interactive debugging without the need for gems"]]></title><description><![CDATA[
<p>Yes, you can with irb:debug, which you can enter by typing debug one you're inside a binding.irb session.</p>
]]></description><pubDate>Thu, 23 Nov 2023 07:21:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=38390298</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=38390298</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38390298</guid></item><item><title><![CDATA[New comment by nithinbekal in "Ruby Tip – Interactive debugging without the need for gems"]]></title><description><![CDATA[
<p>While this was true for a long time, Ruby's built in irb and debug gems have improved dramatically in the past couple of years. To the point that I've switched to them from pry+byebug that I've been using for years.</p>
]]></description><pubDate>Wed, 22 Nov 2023 15:25:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=38380498</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=38380498</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38380498</guid></item><item><title><![CDATA[Ruby 3.3's YJIT Runs Shopify's Production Code 15% Faster]]></title><description><![CDATA[
<p>Article URL: <a href="https://railsatscale.com/2023-09-18-ruby-3-3-s-yjit-runs-shopify-s-production-code-15-faster/">https://railsatscale.com/2023-09-18-ruby-3-3-s-yjit-runs-shopify-s-production-code-15-faster/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=37579926">https://news.ycombinator.com/item?id=37579926</a></p>
<p>Points: 175</p>
<p># Comments: 154</p>
]]></description><pubDate>Wed, 20 Sep 2023 02:57:08 +0000</pubDate><link>https://railsatscale.com/2023-09-18-ruby-3-3-s-yjit-runs-shopify-s-production-code-15-faster/</link><dc:creator>nithinbekal</dc:creator><comments>https://news.ycombinator.com/item?id=37579926</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37579926</guid></item></channel></rss>