<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: yawaramin</title><link>https://news.ycombinator.com/user?id=yawaramin</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 06 Sep 2026 11:39:58 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=yawaramin" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by yawaramin in ".gitignore Everything by Default"]]></title><description><![CDATA[
<p>You’re not wrong. I’ve used tig, a git TUI that renders very nice views of the diffs, for many years: <a href="https://jonas.github.io/tig/" rel="nofollow">https://jonas.github.io/tig/</a><p>Fun fact: Jonas, the creator of tig, is an ex-colleague of mine. It’s cool working with people while using dev tools they wrote!</p>
]]></description><pubDate>Sun, 06 Sep 2026 00:26:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=49582149</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49582149</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49582149</guid></item><item><title><![CDATA[New comment by yawaramin in "Learn Programming with OCaml"]]></title><description><![CDATA[
<p>What language and framework do you use for GUI programming?</p>
]]></description><pubDate>Sat, 05 Sep 2026 23:23:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=49581726</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49581726</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49581726</guid></item><item><title><![CDATA[New comment by yawaramin in "Learn Programming with OCaml"]]></title><description><![CDATA[
<p>Posting 'why should we learn' a programming language on Hacker News is top-quality ragebait :-D</p>
]]></description><pubDate>Sat, 05 Sep 2026 21:39:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=49580955</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49580955</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49580955</guid></item><item><title><![CDATA[New comment by yawaramin in "Learn Programming with OCaml"]]></title><description><![CDATA[
<p>1. Compile times. OCaml compiles very quickly (think Go) and this gives you a fast feedback loop. It lets the LLM rip through the implementation.<p>2. OCaml has an idiomatic approach of using interface files for all modules that can be accessed outside their libraries, and interface files give LLMs a great précis of exactly what is wanted. They then just have to follow the types and fill in the blanks to get the implementation. It's nearly the perfect use case.</p>
]]></description><pubDate>Sat, 05 Sep 2026 20:54:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=49580558</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49580558</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49580558</guid></item><item><title><![CDATA[New comment by yawaramin in "Learn Programming with OCaml"]]></title><description><![CDATA[
<p>I'd be very interested to read this paper when it comes out.</p>
]]></description><pubDate>Sat, 05 Sep 2026 20:51:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=49580527</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49580527</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49580527</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>Haha, good one. You said ‘the creator is stuck in 2012 as I said’. Except that was said by a different user account ;-)</p>
]]></description><pubDate>Wed, 02 Sep 2026 14:32:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=49536883</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49536883</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49536883</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>It’s not really decentralized in that way. If you’re loading a bunch of pages in your mobile browser, your device is paying the power consumption cost of deserializing, parsing, and running all that JS. It doesn’t save on that because some other user also did it.</p>
]]></description><pubDate>Wed, 02 Sep 2026 14:31:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=49536857</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49536857</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49536857</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>Oh ok, in that case see here <a href="https://developer.mozilla.org/en-US/docs/Learn_web_development/Getting_started" rel="nofollow">https://developer.mozilla.org/en-US/docs/Learn_web_developme...</a></p>
]]></description><pubDate>Mon, 31 Aug 2026 17:00:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=49512026</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49512026</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49512026</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>Are you sock-puppeting two different user accounts in this discussion? <a href="https://news.ycombinator.com/user?id=asdfsa32">https://news.ycombinator.com/user?id=asdfsa32</a><p>I didn’t realize that was allowed.<p>What do HN mods think of that, dang?</p>
]]></description><pubDate>Mon, 31 Aug 2026 16:52:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=49511923</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49511923</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49511923</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>Parsing and processing several megabytes of JS for each page you visit can get expensive quickly. <a href="https://tonsky.me/blog/js-bloat/" rel="nofollow">https://tonsky.me/blog/js-bloat/</a></p>
]]></description><pubDate>Mon, 31 Aug 2026 16:49:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=49511879</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49511879</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49511879</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>The client pays it.<p>- If the server is responding with JSON, the client has to parse, decode, and validate the JSON. Then it has to transform it into HTML DOM nodes. Finally, it can inject them into the DOM.<p>- If the server is responding with a bespoke non-JSON data structure, it's the same situation as above except even more work because a third-party, non-standard library has to decode this structure into something (most likely JSON) and then transform the JSON into HTML nodes, etc. etc.<p>- If the server is responding with straight-up HTML, the client uses the browser's HTML parser to directly transform it into HTML nodes and inject it into the page. And by the way, the browser engine is essentially a function that is highly optimized for exactly this use case–parsing bytes into DOM nodes.<p>'We' might use the same API but it's widely accepted that generally the same API doesn't work for all contexts. See <a href="https://samnewman.io/patterns/architectural/bff/#general" rel="nofollow">https://samnewman.io/patterns/architectural/bff/#general</a> which details the many well-known problems with having a single API for different contexts.</p>
]]></description><pubDate>Mon, 31 Aug 2026 04:59:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=49505778</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49505778</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49505778</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>That's super simple, it's your favourite backend web framework. Rails, Spring Boot, Laravel, Django, Flask, FastAPI...really whatever you like.</p>
]]></description><pubDate>Mon, 31 Aug 2026 01:02:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=49504486</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49504486</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49504486</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>Yeah but when you're reading the actual source code you're not thinking in terms of bytes, you're looking and files and line counts. Htmx is deliberately maintained as a single, no-dependency file of about 5000loc. The maintainers are of the opinion that it reduces complexity, and I tend to agree.</p>
]]></description><pubDate>Mon, 31 Aug 2026 00:58:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=49504469</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49504469</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49504469</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>The htmx creator has made similar things for a long time, if anything htmx has <i>diverged</i> from those ideas by taking Intercooler.js and stripping out the bundled jQuery to simplify it and create htmx. See <a href="https://news.ycombinator.com/item?id=49496634">https://news.ycombinator.com/item?id=49496634</a></p>
]]></description><pubDate>Mon, 31 Aug 2026 00:43:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=49504385</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49504385</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49504385</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>I’m talking about auth, like a session cookie. What do you use for auth?</p>
]]></description><pubDate>Sun, 30 Aug 2026 23:10:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=49503741</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49503741</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49503741</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>Htmx is a direct descendant of Intercooler.js, which has been around since circa 2013, more than a decade. Intercooler still exists and is used in production, and you can clearly see that it works almost exactly the same way as htmx does today, it just bundles jQuery together.<p>The creator has been working on these ideas for a long time, but the core idea–swapping HTML from the server into the DOM–has been constant throughout.<p>It's exactly because he followed the past two decades of web dev that htmx avoids almost everything about it. Fixi and htmx extensions follow the 80/20 principle and can work by just being dropped in with a script tag. You don't need an elaborate npm setup, same as everything else in the htmx ecosystem.</p>
]]></description><pubDate>Sun, 30 Aug 2026 07:53:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=49496634</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49496634</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49496634</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>What part of the Fixi project is building something like React?</p>
]]></description><pubDate>Sat, 29 Aug 2026 22:44:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=49493977</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49493977</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49493977</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>You’ve misunderstood the reason for v4; see <a href="https://news.ycombinator.com/item?id=49493929">https://news.ycombinator.com/item?id=49493929</a></p>
]]></description><pubDate>Sat, 29 Aug 2026 22:39:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=49493933</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49493933</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49493933</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>Correction: they didn’t ‘realize they needed to make a breaking change’, they got excited by the improvements they could unlock by using the Fetch API and <i>wanted</i> to make a breaking change.<p>The upgrade is completely voluntary: it won’t even be set as the default version in npm till next year, and there are no known security issues that would force anyone to upgrade. People happy with v2 can just stay on it for the foreseeable future.</p>
]]></description><pubDate>Sat, 29 Aug 2026 22:38:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=49493929</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49493929</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49493929</guid></item><item><title><![CDATA[New comment by yawaramin in "Htmx 4.0"]]></title><description><![CDATA[
<p>Where does it say that exactly?</p>
]]></description><pubDate>Sat, 29 Aug 2026 22:33:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=49493893</link><dc:creator>yawaramin</dc:creator><comments>https://news.ycombinator.com/item?id=49493893</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49493893</guid></item></channel></rss>