<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: barrkel</title><link>https://news.ycombinator.com/user?id=barrkel</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 22 Aug 2026 00:33:22 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=barrkel" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by barrkel in "DeepSeek-v4-flash-vision-exp"]]></title><description><![CDATA[
<p>You'd expect a tool-enabled model to leverage crop and zoom tools to inspect and validate what it thinks it's seeing, though.</p>
]]></description><pubDate>Fri, 21 Aug 2026 11:32:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=49386555</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49386555</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49386555</guid></item><item><title><![CDATA[New comment by barrkel in "GIMP Development Update"]]></title><description><![CDATA[
<p>How do you do drop shadow layer mask effects with Pinta and KolourPaint?</p>
]]></description><pubDate>Thu, 20 Aug 2026 11:46:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=49373313</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49373313</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49373313</guid></item><item><title><![CDATA[New comment by barrkel in "GIMP Development Update"]]></title><description><![CDATA[
<p>I guess the idea is you can do edits via non-destructive layer effects and compositing a stack of layers, where somewhere amongst the stack is your original unmolested data. Though that has not been my experience with Gimp - it's far more likely to want to to commit to a rasterizing decision far earlier than Photoshop would.</p>
]]></description><pubDate>Mon, 17 Aug 2026 13:20:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=49330388</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49330388</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49330388</guid></item><item><title><![CDATA[New comment by barrkel in "GIMP Development Update"]]></title><description><![CDATA[
<p>I don't care. 99% of my uses of an image editor are for ad hoc edits. I never want to clutter my disk with project files on the off-chance I want to preserve layers or whatnot. I have zfs snapshots and cloud backups should I want to revert but the odds I want to revert an ad hoc image edit are approximately nil - I can never recall needing to do so.<p>I don't use Gimp as a 3D modeling software or a digital audio workstation. I use it to add text to a family photo. The primary storage medium is jpeg. I don't want or need anything else.<p>The real issues with Gimp start when you try to work with selections, transforms, cuts, crops and so on. Photoshop muscle memory doesn't transfer and it is so incredibly clunky.</p>
]]></description><pubDate>Mon, 17 Aug 2026 13:17:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=49330354</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49330354</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49330354</guid></item><item><title><![CDATA[New comment by barrkel in "How do I permanently disable random Google Photos popup to backup photos? (2024)"]]></title><description><![CDATA[
<p>If you run DNS at home (even just dnsmasq) and you bridge your home 192.whatever to tailscale, you can make the same domain name resolve both at home and via tailscale.</p>
]]></description><pubDate>Mon, 17 Aug 2026 13:03:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=49330167</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49330167</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49330167</guid></item><item><title><![CDATA[New comment by barrkel in "GIMP Development Update"]]></title><description><![CDATA[
<p>Export and Save As should be the same menu item with an option in the dialog.<p>There are many many more but start with the app having the overbearing assumption that it thinks you want save to its file format rather than make an ad hoc edit.</p>
]]></description><pubDate>Mon, 17 Aug 2026 10:52:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=49328960</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49328960</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49328960</guid></item><item><title><![CDATA[New comment by barrkel in "Why does Opus 5 feel worse to work with?"]]></title><description><![CDATA[
<p>It is not the literal example because I told it to rename the function, but the function had the form thisNotThat for a boolean predicate that had a far more conventional name.</p>
]]></description><pubDate>Fri, 14 Aug 2026 20:18:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=49304029</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49304029</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49304029</guid></item><item><title><![CDATA[New comment by barrkel in "Why does Opus 5 feel worse to work with?"]]></title><description><![CDATA[
<p>I naturally write half like Claude, but not the antithesis half - that's not me, that's Claude.</p>
]]></description><pubDate>Fri, 14 Aug 2026 16:23:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=49300920</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49300920</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49300920</guid></item><item><title><![CDATA[New comment by barrkel in "Why does Opus 5 feel worse to work with?"]]></title><description><![CDATA[
<p>I have a chunky bit of functionality in my hobby app using babylon.js to render 3D worlds using things like portals and LoD rendering to manage the visual load. I built it out with a combo of Fable and Opus 5.<p>I too got fed up with the prose of Opus in particular, and tried going back. Unfortunately, the previous models were less able to hack it. The prose was better but progress was worse.<p>It wasn't just conversation and comments. Some of the function names were wild. Like it instead of something like "isSolidWall(x)" it would write something like "weightyNotEphemeral(x)" or something - that's not quite it, but it really did embed overwrought antithesis into the identifier instead of a straightforward positive predicate.</p>
]]></description><pubDate>Fri, 14 Aug 2026 13:51:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=49298682</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49298682</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49298682</guid></item><item><title><![CDATA[New comment by barrkel in "For the love of god stop using CPU limits in Kubernetes"]]></title><description><![CDATA[
<p>Go is particularly hilarious because it will just go and create a thread for every hardware thread in your system (my home system has 192 hardware threads), just in case it needs to scale up. So tiny utilities, little network proxies and the like add up to thousands of threads + stacks etc. for very little load.</p>
]]></description><pubDate>Fri, 14 Aug 2026 11:26:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=49297323</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49297323</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49297323</guid></item><item><title><![CDATA[New comment by barrkel in "Why does Opus 5 feel worse to work with?"]]></title><description><![CDATA[
<p>The single biggest annoyance with Opus 5 is that it writes too elliptically.<p>Sentences that orbit a point, then jump to it like it's a revealed insight.<p>Unnecessarily abstract phraseology. Constantly using inanimate nouns as the subjects in sentences in order to unlock variety in verb choice, especially when it helps construct a sentence where the real action can 'land' like a surprise at the end.<p>It is definitely more capable, and yes, I've found it can make unwarranted decisions, but actually I've found Fable worse for that, particularly if it's off in a subagent somewhere out of sight.<p>And comments are out of control. I have a subsystem in my hobby app that I wrote over a couple of weekends with Opus + Fable. After ~30 or so commits it apparently started instructing subagents to copy the "existing verbose comment style of the codebase" - a verbose style it initiated. A review of the code showed it was approaching 3:1 comments to code ratio. I spent a day's worth of tokens (5x) rephrasing and eliminating comments.</p>
]]></description><pubDate>Fri, 14 Aug 2026 10:30:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=49296860</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49296860</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49296860</guid></item><item><title><![CDATA[New comment by barrkel in "Single log line is 49KB+ (ext4) / 110KB+ (btrfs) of systemd-journald disk writes"]]></title><description><![CDATA[
<p>journald is IMO the worst part of the systemd ecosystem. You're better off using it only as a router and not storing any logs in it. The indexing system it uses is slow and provides no control over chatty subsystems - you cannot truncate the logs for just a single identifier. For all the use indexing is doing you will get better performance out of a modern grep like ag or rg. Structure is worth something but it's better off somewhere other than journald.</p>
]]></description><pubDate>Thu, 13 Aug 2026 19:59:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=49291113</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49291113</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49291113</guid></item><item><title><![CDATA[New comment by barrkel in "Most tech revolutions made work worse for employees"]]></title><description><![CDATA[
<p>Printing money without backing is not deficit spending!<p>We're all well aware of the money supply, M1 / M2 / M3, velocity of money, etc. It's important for money to not get tight when the economy slows down, and it's important to tighten up the amount of money when the velocity increases again. But this is neither deficit spending nor printing money without backing!<p>Inflation is can come from a social psychological phenomenon around expectations. If the cost of living goes up in a surprising way, you feel the pinch. You want more money. Maybe your employer gives you a raise, and raises prices to compensate, reasoning that other things are also going up in price. The risk is this creates a self-propagating loop (which in turn does to a degree depend on accommodating institutions that don't restrict monetary supply).<p>You can trigger inflation through loose monetary policy, sure, and you can dampen the cycle by restricting the supply of money, and that's been the main function of independent central banks for most of the latter 20th and 21st century.<p>But inflation is literally just increase in the cost of living. It's a symptom, not a disease. It admits multiple explanations.</p>
]]></description><pubDate>Wed, 05 Aug 2026 22:36:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=49189994</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49189994</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49189994</guid></item><item><title><![CDATA[New comment by barrkel in "Most tech revolutions made work worse for employees"]]></title><description><![CDATA[
<p>Inflation <i>is</i> an increase in the cost of living.<p>It <i>can</i> be caused by deficit spending. It can also be caused by supply shocks. For example, if you restrict building new housing, the price of housing will increase, both rents and house prices. If you tariff imports, a basket including those goods will rise in price to the degree those imports are not substituable. If you start a war in the Middle East, oil prices will rise, and increased energy costs can feed into lots of different things, raising prices.</p>
]]></description><pubDate>Wed, 05 Aug 2026 00:42:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=49177215</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49177215</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49177215</guid></item><item><title><![CDATA[New comment by barrkel in "Rust project goals: Immobile types and guaranteed destructors"]]></title><description><![CDATA[
<p>Very similar to Windows Structured Exception Handling, which the Win32 implementation used, and also looks similar to Java, but without checked exceptions. try/except/end and try/finally/end blocks.<p>The major differences with C++:<p><pre><code>    * objects are references not values, cutting out all the copy constructor,
      assignment operator, destruction on out of scope etc.
    * objects are zero-initialized after allocation and before constructors run
    * constructors are run from most derived to least derived
    * calling Free method checks if Self is nil
    * this + zero init means that you can call '.Free' on all the objects you 
      reference in the destructor without checking if they're nil first, 
      handling partial construction
</code></pre>
It's not a memory safe language, but it does give you a bunch of idioms that, if you stick to them, you don't feel nearly as much pain as C++.</p>
]]></description><pubDate>Mon, 03 Aug 2026 17:35:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=49158948</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49158948</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49158948</guid></item><item><title><![CDATA[New comment by barrkel in "Rust project goals: Immobile types and guaranteed destructors"]]></title><description><![CDATA[
<p>The combination of exceptions and non-trivial {copy constructor, assignment operator, destructor} are what combine to make C++ a somewhat broken language when you try to use all the features. And also responsible for poisoning the well for exceptions as an error handling mechanism for native code.<p>Delphi did native exceptions much better IMO.</p>
]]></description><pubDate>Mon, 03 Aug 2026 15:54:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=49157459</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49157459</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49157459</guid></item><item><title><![CDATA[New comment by barrkel in "Let's make the worst Htmx"]]></title><description><![CDATA[
<p>As is well known, security is not a binary, it's a spectrum. It's why you add security in layers, and why it's generally a trade-off between risk and usability.<p>Your mileage may vary, but I sleep better with my own projects not having any node_modules in their build tree.</p>
]]></description><pubDate>Sat, 01 Aug 2026 06:01:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=49131504</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49131504</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49131504</guid></item><item><title><![CDATA[New comment by barrkel in "Elevators"]]></title><description><![CDATA[
<p>Load penalty is part of the Otis RSR algorithm, it's in the article.</p>
]]></description><pubDate>Fri, 31 Jul 2026 16:49:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=49125604</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49125604</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49125604</guid></item><item><title><![CDATA[New comment by barrkel in "Google fixed more Chrome bugs in June than over the past two years, thanks to AI"]]></title><description><![CDATA[
<p>If you run it in a sandbox with no internet access and a read-only role login for the database, and you supervise it, how big is the risk do you reckon?<p>Of course there's an issue if the data in the database is contractually restricted and you don't have a zero retention endpoint for inference, but the former usually comes with the budget to fund the latter.</p>
]]></description><pubDate>Fri, 31 Jul 2026 12:36:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=49122322</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49122322</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49122322</guid></item><item><title><![CDATA[New comment by barrkel in "Show HN: A local merge queue for parallel Claude Code agents"]]></title><description><![CDATA[
<p>JJ stacked changes are just a chain of git commits. To jj, a branch is just a pointer to a commit, like git. Code review is no different to whatever you normally do for git. Push to your review system and review commit by commit Gerrit style, or as a single unit, or as stacked PR (I have not done this however as I don't use GitHub any more).</p>
]]></description><pubDate>Thu, 30 Jul 2026 07:36:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=49107045</link><dc:creator>barrkel</dc:creator><comments>https://news.ycombinator.com/item?id=49107045</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49107045</guid></item></channel></rss>