<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: theogravity</title><link>https://news.ycombinator.com/user?id=theogravity</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 30 Jun 2026 08:50:57 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=theogravity" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by theogravity in "Microsoft 0-day feud escalates as researcher threatens another exploit dump"]]></title><description><![CDATA[
<p>Short via Hyperliquid or some other crypto exchange that tokenizes stock? HL does have a trading pair for MSFT and trades 24/7.</p>
]]></description><pubDate>Fri, 29 May 2026 22:56:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48330428</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=48330428</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48330428</guid></item><item><title><![CDATA[New comment by theogravity in "CJIT: C, Just in Time"]]></title><description><![CDATA[
<p>The site visually feels "compressed" due to the font used? It's a bit jarring. The tutorial link in the header nav doesn't go anywhere.</p>
]]></description><pubDate>Tue, 28 Apr 2026 21:15:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47940894</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=47940894</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47940894</guid></item><item><title><![CDATA[Is my blue your blue? (2024)]]></title><description><![CDATA[
<p>Article URL: <a href="https://ismy.blue/">https://ismy.blue/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47926861">https://news.ycombinator.com/item?id=47926861</a></p>
<p>Points: 694</p>
<p># Comments: 469</p>
]]></description><pubDate>Mon, 27 Apr 2026 20:24:33 +0000</pubDate><link>https://ismy.blue/</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=47926861</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47926861</guid></item><item><title><![CDATA[New comment by theogravity in "I bought Friendster for $30k – Here's what I'm doing with it"]]></title><description><![CDATA[
<p>When you're building a social networking site like this, when do you need to start to worry about laws from different states and countries (eg age bans, data export, etc)?</p>
]]></description><pubDate>Sun, 26 Apr 2026 23:30:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=47915958</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=47915958</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47915958</guid></item><item><title><![CDATA[New comment by theogravity in "Be intentional about how AI changes your codebase"]]></title><description><![CDATA[
<p>Site renders extremely poorly on mobile safari that it is completely unreadable.</p>
]]></description><pubDate>Fri, 20 Mar 2026 20:55:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=47460460</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=47460460</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47460460</guid></item><item><title><![CDATA[New comment by theogravity in "Show HN: WebTiles – create a tiny 250x250 website with neighbors around you"]]></title><description><![CDATA[
<p>This is really cool! How are you sandboxing the tiles and allowing limited JS execution?</p>
]]></description><pubDate>Wed, 14 Jan 2026 21:44:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=46624049</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=46624049</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46624049</guid></item><item><title><![CDATA[New comment by theogravity in "Apple Withdraws iOS 18 Security Updates"]]></title><description><![CDATA[
<p>If I'm on 18.7.1, do I still need to upgrade?<p><a href="https://www.cvedetails.com/version/2021355/Apple-Iphone-Os-18.7.1.html" rel="nofollow">https://www.cvedetails.com/version/2021355/Apple-Iphone-Os-1...</a><p>seems to be the same as 18.7.2<p><a href="https://www.cvedetails.com/version/2037518/Apple-Iphone-Os-18.7.2.html" rel="nofollow">https://www.cvedetails.com/version/2037518/Apple-Iphone-Os-1...</a></p>
]]></description><pubDate>Sun, 11 Jan 2026 19:12:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=46578781</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=46578781</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46578781</guid></item><item><title><![CDATA[After 20 Years, This Scientist Proved Birds Can Talk and Use Grammar [video]]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.youtube.com/watch?v=jmys2abx4co">https://www.youtube.com/watch?v=jmys2abx4co</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46573518">https://news.ycombinator.com/item?id=46573518</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Sun, 11 Jan 2026 07:48:43 +0000</pubDate><link>https://www.youtube.com/watch?v=jmys2abx4co</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=46573518</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46573518</guid></item><item><title><![CDATA[New comment by theogravity in "Warner Bros to rebuff $108B Paramount hostile offer"]]></title><description><![CDATA[
<p>Paywalled.</p>
]]></description><pubDate>Tue, 16 Dec 2025 22:24:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=46295466</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=46295466</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46295466</guid></item><item><title><![CDATA[New comment by theogravity in "Denial of service and source code exposure in React Server Components"]]></title><description><![CDATA[
<p>You need to update again.</p>
]]></description><pubDate>Thu, 11 Dec 2025 22:43:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=46238360</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=46238360</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46238360</guid></item><item><title><![CDATA[New comment by theogravity in "`satisfies` is my favorite TypeScript keyword (2024)"]]></title><description><![CDATA[
<p>The second example confuses me. The Person type has isCool: boolean, not an explicit true. How does using satisfies here pass coolPeopleOnly?</p>
]]></description><pubDate>Sat, 22 Nov 2025 21:56:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=46018598</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=46018598</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46018598</guid></item><item><title><![CDATA[New comment by theogravity in "Show HN: Wealthfolio 2.0- Open source investment tracker. Now Mobile and Docker"]]></title><description><![CDATA[
<p>Really interested in how you do this. When I as looking into building my own finance-related app, you have to pay a ton to get market data (stocks, crypto, ETFs, options) and connecting bank accounts if it's not for individual use (you still have to pay for individual use, but not significantly as much).</p>
]]></description><pubDate>Fri, 21 Nov 2025 17:08:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=46006349</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=46006349</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46006349</guid></item><item><title><![CDATA[Show HN: LogLayer v7 now with StatsD support]]></title><description><![CDATA[
<p>I'm the author of LogLayer, a TypeScript abstraction layer for logging libraries with the ability to send logs to cloud providers like DataDog.<p>It's made for outputting structured logs, and I've designed the logging APIs to reflect that:<p><pre><code>  log.withMetadata({ userId: 123 })
     .withError(new Error())
     .error("Something's wrong!")
</code></pre>
Depending on the logging library you're using with LogLayer, it might look like:<p><pre><code>  {
    "msg": "Something's wrong!",
    "metadata": {
      "userId": 123
    },
    "err":{
      "type": "Error",
      "message": "test",
    }
  }
</code></pre>
The idea is if you decide the logging library isn't fulfilling your needs, you can easily swap out the library where LogLayer is initialized without having to change the code you've already written around logs.<p>This weekend, I launched v7 of LogLayer, which adds support for mixins. I wanted to keep LogLayer's API focused solely on logging, but also have the ability to extend it if needed.<p>The use-case that came up is my workplace wants better metrics. We do have auto-instrumentation for our systems, but there are times where we want more pin-pointed metrics. I've noticed in some cases, metrics and logging goes hand-in-hand, and thought that it'd be really nice if I could access the same logging client and be able to send metrics to StatsD as I write my logs.<p>In node.js land, I believe "hot-shots" is <i>the</i> StatsD client most would use, and created a mixin with it, which adds the hot-shots methods to the LogLayer API. So now you have the ability to send metrics + logs at the same time if you wanted this functionality:<p><pre><code>  log.statsIncrement("error.count")
     .withMetadata({ userId: 123 })
     .withError(new Error())
     .error("Something's wrong!")
  </code></pre>
This will now send an increment call to StatsD in addition to shipping out your log to your logging library / cloud provider.<p>I'm hoping with this DX, thinking about metrics won't be an afterthought because you now have easy access to send it while writing logs.<p>(You can also send metrics without sending logs with the mixin.)</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=45794883">https://news.ycombinator.com/item?id=45794883</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 03 Nov 2025 00:59:14 +0000</pubDate><link>https://loglayer.dev/mixins/hot-shots.html</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=45794883</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45794883</guid></item><item><title><![CDATA[New comment by theogravity in "Ask HN: What are you working on? (October 2025)"]]></title><description><![CDATA[
<p>Adding new transports and documentation to my Typescript logging library (MIT licensed), LogLayer (<a href="https://loglayer.dev" rel="nofollow">https://loglayer.dev</a>). Just added documentation for Bun and Deno support added some new logging library transports (LogTape), and finishing up Logflare and Betterstack transports so you can send logs to their logging APIs.</p>
]]></description><pubDate>Sun, 12 Oct 2025 21:17:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=45561988</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=45561988</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45561988</guid></item><item><title><![CDATA[New comment by theogravity in "Why did Crunchyroll's subtitles just get worse?"]]></title><description><![CDATA[
<p>It's already happening. There are visual novel groups that take pateron sponsorship to run the script through machine translation. It's now done in giant batches. They're released for free and I am not able to speak of the quality as I've never tried them, but when I see reviews on steam for a VN that has been machine translated, it never results in a good review.</p>
]]></description><pubDate>Tue, 07 Oct 2025 01:46:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=45498556</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=45498556</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45498556</guid></item><item><title><![CDATA[New comment by theogravity in "Why did Crunchyroll's subtitles just get worse?"]]></title><description><![CDATA[
<p>Yes</p>
]]></description><pubDate>Tue, 07 Oct 2025 01:43:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=45498533</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=45498533</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45498533</guid></item><item><title><![CDATA[New comment by theogravity in "Why did Crunchyroll's subtitles just get worse?"]]></title><description><![CDATA[
<p>My first thought would be consistency in localization / typesetting. Groups have their own ways of localizing and typesetting content and most likely would not want to share their style guide when they lost out on something they recently translated to a lower bidder.</p>
]]></description><pubDate>Tue, 07 Oct 2025 00:46:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=45498106</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=45498106</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45498106</guid></item><item><title><![CDATA[New comment by theogravity in "Quicksort explained IKEA-style"]]></title><description><![CDATA[
<p>This surprisingly made this easy to remember for me.<p>Unfortunately, the merge sort instructions doesn't make sense to me, specifically step 3.</p>
]]></description><pubDate>Wed, 24 Sep 2025 20:54:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=45365819</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=45365819</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45365819</guid></item><item><title><![CDATA[New comment by theogravity in "Next.js is infuriating"]]></title><description><![CDATA[
<p>I also had similar issues and wrote a guide on how to use LogLayer + pino to get server-side logs working properly.<p><a href="https://loglayer.dev/example-integrations/nextjs.html" rel="nofollow">https://loglayer.dev/example-integrations/nextjs.html</a><p>Overall, the logging experience in Next.js is terrible, and not being able to chain middleware, even more so.</p>
]]></description><pubDate>Tue, 02 Sep 2025 17:27:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=45106225</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=45106225</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45106225</guid></item><item><title><![CDATA[New comment by theogravity in "EconTeen – Financial literacy lessons and tools for teens"]]></title><description><![CDATA[
<p>Really love the idea! I tried going to the FAQ on mobile safari on iOS and can't scroll on the answer sections, so the text is cut off.</p>
]]></description><pubDate>Tue, 05 Aug 2025 00:48:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=44793108</link><dc:creator>theogravity</dc:creator><comments>https://news.ycombinator.com/item?id=44793108</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44793108</guid></item></channel></rss>