<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: sirwhinesalot</title><link>https://news.ycombinator.com/user?id=sirwhinesalot</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 09 Apr 2026 09:34:10 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=sirwhinesalot" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by sirwhinesalot in "Swift 6.3"]]></title><description><![CDATA[
<p>> Swift 6.3 introduces the @c attribute, which lets you expose Swift functions and enums to C code in your project. Annotating a function or enum with @c prompts Swift to include a corresponding declaration in the generated C header that you can include in your C/C++ files<p>Why did this take so long to be added? Such strange priorities. Adding an entire C++ compiler for C++ interoperability before adding... C exports. Bizarre.</p>
]]></description><pubDate>Thu, 26 Mar 2026 09:48:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=47528443</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=47528443</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47528443</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Claude is an Electron App because we've lost native"]]></title><description><![CDATA[
<p>Then why are the APIs they provide such turds?<p>Cocoa is excellent but who knows when Apple will deprecate it for SwiftUI (which is not very good yet, if it ever will be)?<p>Windows is a disaster of half-finished APIs. Win32 doesn't even support dark mode. Windows Forms was on life support for ages and only now is getting some love, but it doesn't have a native look despite being built on Win32. WPF is stuck on DirectX 9 and was also on life support for a long time. UWP is dead, effectively. WinUI3 requires bundling 38MB worth of DLLs (many DLLs), is a pain to install and setup a project with and somehow performs worse than electron apps (don't look at the callstack when you click a button, it is scarier than RE9).<p>And Linux... well there's Qt which really wants you to drop QtWidgets and use QtQuick instead that nobody likes, and GTK is actively developer hostile with a severe disdain for backwards compatibility.</p>
]]></description><pubDate>Wed, 04 Mar 2026 11:54:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=47246201</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=47246201</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47246201</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Winapp, the Windows App Development CLI"]]></title><description><![CDATA[
<p>I remember the problems with the WinRT APIs being tied to specific Windows versions (still are, just a smaller surface area, so less of an issue). With the old service pack model it wouldn't be an issue but with constant OS releases it was too much churn.<p>I thought they had solved the worst problem with WinUI2, a bit like the compatibility library in Android, so you only had to bundle the more "volatile" bits while still delegating most things to the OS.<p>But then they went and threw all that out the windows (pun intended) with WinUI3 which even has its own separate implementation of DirectWrite for some god forsaken reason.<p>Unlike the DirectX redistributables of old it's not even backwards compatible so you can't tell people "just download the WinAppSDK runtime", they have to install the specific version you used when developing your app.<p>You get that download "for free" if you use a .appx, but with a regular installer you're on your own. Even the way apps link to the WindowsAppSDK is a mess with a weird bootstrapping process.<p>Not worth the headache.</p>
]]></description><pubDate>Thu, 29 Jan 2026 22:19:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=46817587</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46817587</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46817587</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Winapp, the Windows App Development CLI"]]></title><description><![CDATA[
<p>If you use classic unstyled Win32 controls (Windows 95-2000 style) then you can do that. If you use uxthemed Win32 controls (Windows XP onwards) then there's no official dark theme support.</p>
]]></description><pubDate>Thu, 29 Jan 2026 14:30:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=46810672</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46810672</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46810672</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Winapp, the Windows App Development CLI"]]></title><description><![CDATA[
<p>For those unaware, the current recommended way to develop "native" apps for Windows is to use WinUI3, distributed with the WindowsAppSDK.<p>Unlike regular Windows SDK, which lets you make use of the functionality provided by the OS, the WindowsAppSDK is entirely separate from the OS and requires the installation of a separate runtime on the user's machine. It also requires installing nuget packages on your machine to use it so good luck if you'd rather use straight CMake instead of Visual Studio.<p>As far as I can tell, there's no backwards or forwards compatibility, so the end user has to install the specific version of the SDK your app uses, or you need to bundle all the hundreds of DLLs with your app yourself.<p>A sane person might ask why not just use Qt (smaller distribution!) or Electron (about the same size) at that point, since they're cross platform and you can easily get fluent themes that look the same as WinUI3?<p>As far as I can tell there's no sane negative answer to this question. It's not like your app's "fluent theme" will be updated alongside the OS, it's no different from Qt or Electron in this regard.<p>There's no reason to do "native" windows development anymore, unless you mean using raw Win32 with no dark theme or a custom UI built on Direct2D/3D/Write. And if you are doing that, there's absolutely 0 reason to use this CLI.</p>
]]></description><pubDate>Thu, 29 Jan 2026 13:40:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=46810058</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46810058</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46810058</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Second Win11 emergency out of band update to address disastrous Patch Tuesday"]]></title><description><![CDATA[
<p>They exist but are rare and don't hire often. I know a guy (self taught programmer) who got his first major a job at a company doing native ui (not even using OS frameworks, straight GPU stuff).<p>The company does highly complex simulation software used by movie studios for explosions and other effects.<p>He got hired by word of mouth recommendation from someone at the company that had met him.<p>It takes as much luck as it takes skill to get these sorts of jobs, sadly.</p>
]]></description><pubDate>Mon, 26 Jan 2026 08:29:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=46763150</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46763150</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46763150</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Kotlin's rich errors: Native, typed errors without exceptions"]]></title><description><![CDATA[
<p>Exceptions are cheap on the happy path and super expensive on the error path.<p>Checked exceptions only make sense for errors that are relatively common (i.e., they aren't really exceptional), which calls for a different implementation entirely where both the happy path and the error path have around the same cost.<p>This is what modern languages like Rust and Go do as well (and I think Swift as well though don't quote me on that) where only actually exceptional situations (like accessing an array out of bounds) trigger stack unwinding. Rust and Go call these panics but they are implemented like exceptions.<p>Other errors are just values. They have no special treatment besides syntax sugar. They are a return value like any other and have the same cost. As they aren't exceptional (you need to check them for a reason), it makes no sense to use the exception handling mechanism for them which has massively skewed costs.</p>
]]></description><pubDate>Fri, 23 Jan 2026 19:01:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=46736338</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46736338</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46736338</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Ask HN: Do you have any evidence that agentic coding works?"]]></title><description><![CDATA[
<p>Yeah, CLAUDE.md. Sometimes it just ignores what was in there after the context window gets big enough (as it tends to with planning mode).</p>
]]></description><pubDate>Wed, 21 Jan 2026 11:01:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=46703862</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46703862</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46703862</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Ask HN: Do you have any evidence that agentic coding works?"]]></title><description><![CDATA[
<p>The only approach I've tried that seems to work reasonably well, and consistently, was the following:<p>Make a commit.<p>Give Claude a task that's not particularly open ended, the closer to pure "monkey work" boilerplate nonsense the task is, the better (which is also the sort of code I don't want do deal with myself).<p>Preferably it should be something that only touches a file or two in the codebase unless it is a trivial refactor (like changing the same method call all over the place)<p>Make sure it is set to planning mode and let it come up with a plan.<p>Review the plan.<p>Let it implement the plan.<p>If it works, great, move on to review. I've seen it one-shot some pretty annoying tasks like porting code from one platform to another.<p>If there are obvious mistakes (program doesn't build, tests don't pass, etc.) then a few more iterations usually fix the issue.<p>If there are subtle mistakes, make a branch and have it try again. If it fails, then this is beyond what it can do, abort the branch and solve the issue myself.<p>Review and cleanup the code it wrote, it's usually a lot messier than it needs to be. This also allows me to take ownership of the code. I now know what it does and how it works.<p>I don't bother giving it guidelines or guardrails or anything of the sort, it can't follow them reliably. Even something as simple as "This project uses CMake, build it like this" was repeatedly ignored as it kept trying to invoke the makefile directly and in the wrong folder.<p>This doesn't save me all that much time since the review and cleanup can take long, but it serves a great unblocker.<p>I also use it as a rubber duck that can talk back and documentation source. It's pretty good for that.<p>This idea of having an army of agents all working together on the codebase is hilarious to me. Replace "agents" with "juniors I hired on fiverr with anterograde amnesia" and it's about how well it goes.</p>
]]></description><pubDate>Tue, 20 Jan 2026 15:05:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=46692521</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46692521</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46692521</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Launching the Handmade Software Foundation"]]></title><description><![CDATA[
<p>Better can be argued. More performant though? Yes, massively so.<p>Turns out spending some time understanding what your CPU and GPU are actually doing when running your app, and how to make them do less work, leads to pretty speedy software.<p>Then it also turns out that this does not seem to impede most of the features of the software it is competing with, meaning that software is by definition <i>wasteful</i>.<p>It can't even be argued that the other software made better use of human resources since it's a large team vs one guy who is often not even getting paid, and the guy is the one with the fast software.</p>
]]></description><pubDate>Sun, 18 Jan 2026 08:34:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=46665935</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46665935</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46665935</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Apple Creator Studio"]]></title><description><![CDATA[
<p>For now.</p>
]]></description><pubDate>Tue, 13 Jan 2026 14:26:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=46601342</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46601342</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46601342</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Apple Creator Studio"]]></title><description><![CDATA[
<p>And here's the ruining of Pixelmator Pro everyone was waiting for. I paid <i>one time</i> 20 euros for it (discounted). And I would gladly pay again even full price for a new major version.<p>I don't want yet another subscription.<p>I see that they can still be bought (for now) but I wonder how long that will last.</p>
]]></description><pubDate>Tue, 13 Jan 2026 14:24:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=46601290</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46601290</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46601290</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "macOS 26's Cut Corners"]]></title><description><![CDATA[
<p>It's a pun, look up Alan Dye :)</p>
]]></description><pubDate>Tue, 13 Jan 2026 13:47:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=46600862</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46600862</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46600862</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "The struggle of resizing windows on macOS Tahoe"]]></title><description><![CDATA[
<p>Nobody in their right mind should be touching any Microsoft provided API that isn't already well established (like Win32 and Direct3D).<p>I'm happy they're at least maintaining (to a limited extent) Windows Forms and WPF and updating their styles to fit with their fancy Fluent design.<p>But even that is a pretty sad state of affairs, since Windows Forms should be able to get that info from uxtheme (which Microsoft fumbled) and WPF should be able to get that info from the style distributed with the system-installed .NET framework (which Microsoft fumbled and now only exists for backcompat).<p>For the company with the best track record for backwards compatibility (with Windows), they sure suck at developing and evolving the same API for long.</p>
]]></description><pubDate>Tue, 13 Jan 2026 13:23:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=46600630</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46600630</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46600630</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "The struggle of resizing windows on macOS Tahoe"]]></title><description><![CDATA[
<p>I had friends use those exact words but replaced with "Windows Phone" and "Windows 8 Computer".</p>
]]></description><pubDate>Mon, 12 Jan 2026 09:03:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=46585888</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46585888</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46585888</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "The struggle of resizing windows on macOS Tahoe"]]></title><description><![CDATA[
<p>That's not what they mean. As a developer, the API you used to develop your app was now deprecated with no migration path. That meant your app was deprecated, with no migration path.<p>For an app platform already a distant third place and struggling to attract developers, pissing off the few devs you do have TWICE was not a smart move.</p>
]]></description><pubDate>Mon, 12 Jan 2026 07:32:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=46585255</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46585255</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46585255</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "Vector graphics on GPU"]]></title><description><![CDATA[
<p>So what is the right way that Skia uses? Why is there still discussion on how to do vector graphics on the GPU right if Skia's approach is good enough?<p>Not being sarcastic, genuinely curious.</p>
]]></description><pubDate>Wed, 07 Jan 2026 10:30:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=46524709</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46524709</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46524709</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "It's hard to justify Tahoe icons"]]></title><description><![CDATA[
<p>Even on mobile it took a few iterations from when the design was first introduced for it to be <i>usable</i>. Not good mind you,  just usable.<p>Even Apple's own marketing material had screenshots where text was near impossible to read, even for someone with good eyesight: grey text on top of highly transparent glass... what were they thinking!?</p>
]]></description><pubDate>Mon, 05 Jan 2026 14:57:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=46499476</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46499476</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46499476</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "It's hard to justify Tahoe icons"]]></title><description><![CDATA[
<p>Really? Same guy? OUFF. What a track record...</p>
]]></description><pubDate>Mon, 05 Jan 2026 14:21:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=46499029</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46499029</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46499029</guid></item><item><title><![CDATA[New comment by sirwhinesalot in "It's hard to justify Tahoe icons"]]></title><description><![CDATA[
<p>It's hard to justify Liquid Glass in general. The wastefulness of flat design (in terms of space) married with the visual excess of skeuomorphism, but without even providing any affordances (does the sidebar being raised give you any new information on how to use a sidebar? No).<p>If you're a designer at a top 10 S&P 500 company making 6 figures, you owe it to yourself to have some love for your craft. If a PM tells you to shove a UI style meant for an unsuccessful VR device onto desktop and mobile platforms, say no. Get your colleagues to say no. Make that PM read everything the Nielsen Norman group has ever written. Read it too.</p>
]]></description><pubDate>Mon, 05 Jan 2026 14:02:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=46498820</link><dc:creator>sirwhinesalot</dc:creator><comments>https://news.ycombinator.com/item?id=46498820</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46498820</guid></item></channel></rss>