<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: maleldil</title><link>https://news.ycombinator.com/user?id=maleldil</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 14 Apr 2026 20:23:02 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=maleldil" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by maleldil in "jj – the CLI for Jujutsu"]]></title><description><![CDATA[
<p>You're confusing mixing git and jj in your local copy of the repo vs what it looks like to other people. You can use jj locally, and it interoperates perfectly with any git remote, and no one has to know you're even using it. From the point of view of other people, it doesn't matter.</p>
]]></description><pubDate>Tue, 14 Apr 2026 19:43:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=47770479</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47770479</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47770479</guid></item><item><title><![CDATA[New comment by maleldil in "What is jj and why should I care?"]]></title><description><![CDATA[
<p>It is definitely worth a try. Just being able to squash changes to earlier commits without having to fiddle with fixups and interactive rebases is worth it for me. jj absorb is great too.</p>
]]></description><pubDate>Tue, 14 Apr 2026 13:41:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=47765543</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47765543</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47765543</guid></item><item><title><![CDATA[New comment by maleldil in "jj – the CLI for Jujutsu"]]></title><description><![CDATA[
<p>If you constantly switch between the two, you're going to have a hard time, but you can take a git repo, try jj for a while, and if you decide to go back, you don't lose anything.</p>
]]></description><pubDate>Tue, 14 Apr 2026 13:39:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=47765519</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47765519</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47765519</guid></item><item><title><![CDATA[New comment by maleldil in "Make tmux pretty and usable (2024)"]]></title><description><![CDATA[
<p>You can use vi copy mode. It makes selection a lot easier.</p>
]]></description><pubDate>Mon, 13 Apr 2026 21:24:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=47758010</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47758010</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47758010</guid></item><item><title><![CDATA[New comment by maleldil in "Building a CLI for All of Cloudflare"]]></title><description><![CDATA[
<p>Jujutsu does it, and it's quite nice.</p>
]]></description><pubDate>Mon, 13 Apr 2026 20:46:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=47757602</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47757602</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47757602</guid></item><item><title><![CDATA[New comment by maleldil in "The AI Great Leap Forward"]]></title><description><![CDATA[
<p>A human has taste. They learn over time from codebase patterns and develop a sense of when an abstraction can be reused, improved or refactored. Agents often generate repeated code because the original file wasn't added to the context, and it's up to a human reviewer to recognise this.<p>In my experience, an agent will rarely recognise a common pattern and lift it into a new abstraction. It requires a human with taste and experience to do it. For example, an agent will happily add a big amount if branches in different places of the codebase where a strategy pattern or enum would be better (depending on the language).<p>If you have a working prompt or harness that ameliorates this, I'd be glad to see it.</p>
]]></description><pubDate>Thu, 09 Apr 2026 16:13:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47705537</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47705537</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47705537</guid></item><item><title><![CDATA[New comment by maleldil in "The AI Great Leap Forward"]]></title><description><![CDATA[
<p>> Unit and end-to-end tests are free now.<p>Not free because agents have a big tendency towards useless tests, so you need to verify them and make sure they're testing real things and the things that matter. I'll agree that it's a lot easier to generate thorough tests matching a spec, though.</p>
]]></description><pubDate>Thu, 09 Apr 2026 16:09:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47705470</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47705470</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47705470</guid></item><item><title><![CDATA[New comment by maleldil in "Git commands I run before reading any code"]]></title><description><![CDATA[
<p>It's really not that bad, although the jq comparison might be apt. You have such primitives you need to understand, and then everything just fits together nicely. I find this much easier to write and understand than git's cryptic format strings.<p>Disclaimer: I love jq too :)</p>
]]></description><pubDate>Wed, 08 Apr 2026 14:46:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=47690992</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47690992</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47690992</guid></item><item><title><![CDATA[New comment by maleldil in "Identify a London Underground Line just by listening to it"]]></title><description><![CDATA[
<p>Nice name ;)</p>
]]></description><pubDate>Tue, 07 Apr 2026 21:07:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=47681386</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47681386</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47681386</guid></item><item><title><![CDATA[New comment by maleldil in "Got kicked out of uni and had the cops called for a social media website I made"]]></title><description><![CDATA[
<p>> Do you feel you learned from your mistakes?<p>Look at their posts in this thread. They're doubling down _hard_.</p>
]]></description><pubDate>Tue, 07 Apr 2026 13:16:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=47674916</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47674916</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47674916</guid></item><item><title><![CDATA[New comment by maleldil in "Identify a London Underground Line just by listening to it"]]></title><description><![CDATA[
<p>Technically, not an underground line.</p>
]]></description><pubDate>Tue, 07 Apr 2026 12:11:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47674017</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47674017</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47674017</guid></item><item><title><![CDATA[New comment by maleldil in "Nvim-treesitter (13K+ Stars) is Archived"]]></title><description><![CDATA[
<p>tree-sitter still works. Many features are implemented in neovim itself. This project provides an easy way to set up parsers for various languages (including installation and retrieval of necessary queries), along with some quality-of-life features. You can just fork it, and it will work perfectly fine for the 0.12 cycle (barring any underlying parser changes), or you can fork the previous version on the master branch if you want to keep using 0.11.<p>Considering this is a very common plugin in the neovim ecosystem, it will probably get forked and maintained by someone else, like null-ls was forked into none-ls.</p>
]]></description><pubDate>Sun, 05 Apr 2026 19:06:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=47652773</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47652773</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47652773</guid></item><item><title><![CDATA[New comment by maleldil in "Nvim-treesitter (13K+ Stars) is Archived"]]></title><description><![CDATA[
<p>It's not one person. The maintainer's been getting abuse over their decision to rewrite the plugin for quite some time now, despite being very clear about what they're doing. It's fine for users to be upset, but not to treat the author like this.</p>
]]></description><pubDate>Sun, 05 Apr 2026 19:01:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=47652724</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47652724</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47652724</guid></item><item><title><![CDATA[New comment by maleldil in "Nvim-treesitter (13K+ Stars) is Archived"]]></title><description><![CDATA[
<p>You could probably make things work without nvim-treesitter, but it's an additional maintenance burden you're taking on. As the repo itself says, it's an abstraction layer. You don't _need_ it, but it's nice to have.</p>
]]></description><pubDate>Sun, 05 Apr 2026 18:54:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=47652641</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47652641</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47652641</guid></item><item><title><![CDATA[New comment by maleldil in "F-15E jet shot down over Iran"]]></title><description><![CDATA[
<p>That would require Starmer having anything resembling a spine.</p>
]]></description><pubDate>Sat, 04 Apr 2026 15:42:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=47640016</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47640016</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47640016</guid></item><item><title><![CDATA[New comment by maleldil in "Improving my focus by giving up my big monitor"]]></title><description><![CDATA[
<p>If you were using a maximised app per workspace, I recommend setting up Hammerspoon for quick app switching. I have hyper + J for terminal, hyper + K for browser and so on. No space switching, but since each app occupies the full screen, it doesn't matter.</p>
]]></description><pubDate>Sat, 04 Apr 2026 11:54:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47638227</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47638227</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47638227</guid></item><item><title><![CDATA[New comment by maleldil in "Neovim 0.12.0"]]></title><description><![CDATA[
<p>Yes, I found out about that after my comment. It's a little unfortunate that I need to remap `van` itself instead of a function/command, but it works, and there's a PR to expose the function publicly.<p>Note that this might conflict with some text-object plugins, such as mini.ai, which define an/in by default.</p>
]]></description><pubDate>Mon, 30 Mar 2026 16:50:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47576706</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47576706</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47576706</guid></item><item><title><![CDATA[New comment by maleldil in "Neovim 0.12.0"]]></title><description><![CDATA[
<p>Upgrading from 0.11 was relatively painless, except for nvim-treesitter, which pretty much became a new plugin. The previous version lives in the master branch, but doesn't support 0.12 at all, so you need to use the main branch when updating.<p>Most of the previous features are replicable with new code, except for incremental selection. treesitter-modules[1] serves as a good bridge between old and new APIs.<p>[1] <a href="https://github.com/MeanderingProgrammer/treesitter-modules.nvim" rel="nofollow">https://github.com/MeanderingProgrammer/treesitter-modules.n...</a></p>
]]></description><pubDate>Mon, 30 Mar 2026 02:56:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=47569912</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47569912</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47569912</guid></item><item><title><![CDATA[New comment by maleldil in "Neovim 0.12.0"]]></title><description><![CDATA[
<p>OP specifically mentioned "using keyboard to navigate". If that's all you need, then VSCodeVim can get you pretty far.</p>
]]></description><pubDate>Sun, 29 Mar 2026 21:59:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=47567836</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47567836</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47567836</guid></item><item><title><![CDATA[New comment by maleldil in "Show HN: Create a full language server in Go with 3.17 spec support"]]></title><description><![CDATA[
<p>Every public item should have a docstring, even if it's just to indicate that there's nothing special about the item.</p>
]]></description><pubDate>Sun, 29 Mar 2026 21:51:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=47567773</link><dc:creator>maleldil</dc:creator><comments>https://news.ycombinator.com/item?id=47567773</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47567773</guid></item></channel></rss>