<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: jshier</title><link>https://news.ycombinator.com/user?id=jshier</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 11 Apr 2026 07:54:06 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=jshier" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by jshier in "FBI used iPhone notification data to retrieve deleted Signal messages"]]></title><description><![CDATA[
<p>No, the OS will not do that, nor is the developer able to trigger the system prompt again when they detect the user has notifications off. Only thing they can do is present their own prompt and link out to the Settings app for the app's settings. Can't even deep link to the app's notification settings.</p>
]]></description><pubDate>Fri, 10 Apr 2026 18:33:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47721940</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47721940</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47721940</guid></item><item><title><![CDATA[New comment by jshier in "FBI used iPhone notification data to retrieve deleted Signal messages"]]></title><description><![CDATA[
<p>There is no other way to send push notifications on iOS, you have to use APNS. When the app is active you can switch to your own local socket connection, but as soon as it goes into the background those connections are lost. Pushes can also start the app in the background if it hasn't been used in a while and has been evicted by the OS.<p>You can send push notifications with your own encryption on top, which I believe Signal does, so Apple can't see it on the APNS side, but your local extension to decrypt the content is still subject to the user's settings, and part of the notification history if you put message content in the notification.</p>
]]></description><pubDate>Fri, 10 Apr 2026 18:29:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=47721894</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47721894</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47721894</guid></item><item><title><![CDATA[New comment by jshier in "Netflix Prices Went Up Again – I Bought a DVD Player Instead"]]></title><description><![CDATA[
<p>Like dawnerd said, you can use MakeMKV to decrypt and rip the discs, ideally using a BR drive with an unlocked firmware (I have the Asus drive that MakeMKV ships a firmware for). Really the only annoying part is track identification, as there isn't an equivalent of CDDB for Blurays (or if there is, MakeMKV doesn't integrate it), so you have to identify content yourself. When you do that, make sure you do it in the same way that your media server will identify it. I had quite the issue trying to name my episodes as Plex expects them for things like two parters. And while Plex has "AI" credit identification, it isn't super accurate, and is another db service that should really exist but doesn't.</p>
]]></description><pubDate>Fri, 10 Apr 2026 18:21:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47721809</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47721809</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47721809</guid></item><item><title><![CDATA[New comment by jshier in "LittleSnitch for Linux"]]></title><description><![CDATA[
<p>I have, yes. Didn't bother to check the domains, just wanted to say they were visible.</p>
]]></description><pubDate>Thu, 09 Apr 2026 14:56:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=47704597</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47704597</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47704597</guid></item><item><title><![CDATA[New comment by jshier in "LittleSnitch for Linux"]]></title><description><![CDATA[
<p>Doesn't seem to be, I can see LittleSnitch itself connecting to yoyo.org and obdev.at. GP may be referencing a past bug, either in LittleSnitch or macOS.</p>
]]></description><pubDate>Thu, 09 Apr 2026 01:50:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=47698443</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47698443</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47698443</guid></item><item><title><![CDATA[New comment by jshier in "Microsoft hasn't had a coherent GUI strategy since Petzold"]]></title><description><![CDATA[
<p>Yeah, it's not bloated, there are just a lot of surprising and weird performance holes, especially on macOS. Even on iOS there's dumb things like, if your List cell's outer view isn't a specific type, List won't optimize for cell reuse, and it will start dequeuing cells for every item in the List eagerly. Wrap your actual cell type with a VStack or something and it will work properly, only dequeuing visible cells. It can be really nice to work with, but man, some of the implicit behavior, performance other otherwise, is shocking.</p>
]]></description><pubDate>Mon, 06 Apr 2026 14:53:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=47661719</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47661719</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47661719</guid></item><item><title><![CDATA[New comment by jshier in "LinkedIn Is Illegally Searching Your Computer"]]></title><description><![CDATA[
<p>There have been mobile Safari ad blockers for 10 years now, free or paid, and many of them can now be unified with desktop Safari. Many alternative iOS browsers include ad blocking directly, since they can't use the Safari plugins (despite all being powered by WebKit).</p>
]]></description><pubDate>Thu, 02 Apr 2026 15:14:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=47615574</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47615574</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47615574</guid></item><item><title><![CDATA[New comment by jshier in "Why the US Navy won't blast the Iranians and 'open' Strait of Hormuz"]]></title><description><![CDATA[
<p>Why would they need to arrest 150 million people? They'd let everyone in heavily Republican districts vote just fine, perhaps just a few random arrest at any precincts in Democratic areas. Their main focus would be urban areas, especially in blue states. And it wouldn't have to be everyone to get many, if not most people, to stay home. Early voting in your district? Great way to get ICE's arrests of people in line on the news before the big day, further driving down turnout. Filtering mail in ballots at the USPS not enough? Just happen to have some ICE agents drive by the drop boxes and oops, we saw an "illegal" voting, all these ballots are invalid, we'll be taking those. Local police try to step in (as if)? Insurrection Act, military deployed to all voting locations, ballots seized.<p>This shouldn't be hard to understand: there are any number of things an unfettered executive can do to turn the election that isn't simply cancelling them.</p>
]]></description><pubDate>Wed, 01 Apr 2026 02:38:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=47596115</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47596115</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47596115</guid></item><item><title><![CDATA[New comment by jshier in "Why the US Navy won't blast the Iranians and 'open' Strait of Hormuz"]]></title><description><![CDATA[
<p>He doesn't need to legally cancel the election. He simply needs to say it is and take action as if it was already. This allows him to combine interference before the election with the Republican insurrection tactics from 2020. Say he declares, through executive order, that the 2026 election is cancelled due to an emergency, and that the current Congress will stay in power until the emergency is over. This would allow, even if not actually legal, some combination of:<p>- Republican-led states voluntarily ending their elections.<p>- In the case where local election authorities refuse, allowing state governments to take action by arresting said local authorities.<p>- Ending all Federal assistance for states to run and secure elections.<p>- Posting ICE to all states who insist on having elections, to arbitrarily arrest people going to vote. By the time they can get in front of a judge the election is over. Even if they're released within a few hours they'd likely miss the vote.<p>- Having ICE seize all "illegally cast" ballots, and the voting machines, preventing counts from completing or being accurate.<p>- Declaring states who hold an election to be in rebellion, deploying the National Guard or standing military forces.<p>- Refusing to seat anyone elected from those states who refuse to go along with it. We could see something like Republican states are allowed to "elect" new representatives as long as they allow an ICE presence everywhere, along with the arbitrary arrest. Speaker Johnson then refuses to seat any newly elected officials from any other states.<p>- Arrest of newly elected officials as illegitimate, and the seating of Republican candidates instead, similar to the fake elector scheme from 2020.<p>We can insist that all of these things are illegal, or that people won't go along with it. We would likely see the start real, violent resistance, but that doesn't mean they won't try.<p>Edit: Looks like he's starting already, by trying control all mail in ballots. He's going to issue an executive order ordering the USPS to filter ballot mail according to a master list compiled by the administration. Obviously this why they wanted voter rolls and have been seizing ballots. Even if the court immediately rules it illegal, why would anyone trust mail in voting? He's essentially cancelled the election for those who vote by mail.<p><a href="https://www.cnbc.com/2026/03/31/trump-mail-in-voting-executive-order.html" rel="nofollow">https://www.cnbc.com/2026/03/31/trump-mail-in-voting-executi...</a></p>
]]></description><pubDate>Wed, 01 Apr 2026 01:36:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=47595719</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47595719</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47595719</guid></item><item><title><![CDATA[New comment by jshier in "Recover Apple Keychain"]]></title><description><![CDATA[
<p>Keychain is one of the worst APIs on Apple platforms, with parts that date all the way back to MacOS 9. It's not surprising there are various breaking bugs from decades of low maintenance.</p>
]]></description><pubDate>Mon, 30 Mar 2026 21:54:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=47580191</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47580191</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47580191</guid></item><item><title><![CDATA[New comment by jshier in "Swift 6.3"]]></title><description><![CDATA[
<p>SwiftLint and SwiftFormat are different tools than swift-format, which is what is included with Swift itself. swift-format is less capable than either, or similar tools from other ecosystems. Personally I use the other two. And they don't usually require updates for new language versions, and when they do, they update quickly, as they aren't part of the Swift toolchain and subject to its glacial release process.</p>
]]></description><pubDate>Fri, 27 Mar 2026 02:31:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=47538517</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47538517</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47538517</guid></item><item><title><![CDATA[New comment by jshier in "Apple discontinues the Mac Pro"]]></title><description><![CDATA[
<p>Mac Studio waits for the Ultra chips to ship, which are always last in a generation. Perhaps the M5's chiplet architecture will help them move faster there.</p>
]]></description><pubDate>Fri, 27 Mar 2026 02:27:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=47538484</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47538484</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47538484</guid></item><item><title><![CDATA[New comment by jshier in "Cloudflare's Gen 13 servers: trading cache for cores for 2x performance"]]></title><description><![CDATA[
<p>They posted about the Rust rewrite last year. <a href="https://blog.cloudflare.com/20-percent-internet-upgrade/" rel="nofollow">https://blog.cloudflare.com/20-percent-internet-upgrade/</a></p>
]]></description><pubDate>Thu, 26 Mar 2026 23:46:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=47537333</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47537333</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47537333</guid></item><item><title><![CDATA[New comment by jshier in "Swift 6.3"]]></title><description><![CDATA[
<p>Yes, exactly. It also allows you to disambiguate overloaded function. e.g. thing.ModuleA::doThing() vs. thing.ModuleB::doThing(), which wasn't possible with the previous syntax.</p>
]]></description><pubDate>Thu, 26 Mar 2026 21:49:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=47536251</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47536251</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47536251</guid></item><item><title><![CDATA[New comment by jshier in "Swift 6.3"]]></title><description><![CDATA[
<p>Looks like swift-build will be the default in Swift 6.4: <a href="https://forums.swift.org/t/swiftpm-development-update-default-build-system-change/85548/" rel="nofollow">https://forums.swift.org/t/swiftpm-development-update-defaul...</a><p>Unfortunately, swift-build is what Xcode has been using for years now, and has major performance issues: <a href="https://forums.swift.org/t/target-dependency-graph-computation-performance-too-slow/81552/11" rel="nofollow">https://forums.swift.org/t/target-dependency-graph-computati...</a><p>Perhaps using it in both SPM and Xcode will lead to improvements, but I'm not especially optimistic.</p>
]]></description><pubDate>Thu, 26 Mar 2026 21:38:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=47536121</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47536121</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47536121</guid></item><item><title><![CDATA[New comment by jshier in "Swift 6.3"]]></title><description><![CDATA[
<p>What, of course Apple uses Swift on the server, that's the only reason they're investing in any of this. Many of the foundational Swift on the server libraries were written at Apple and later opened, like SwiftNIO.</p>
]]></description><pubDate>Thu, 26 Mar 2026 15:01:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=47531343</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47531343</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47531343</guid></item><item><title><![CDATA[New comment by jshier in "Five years of running a systems reading group at Microsoft"]]></title><description><![CDATA[
<p>Wow, Cox's original Objective-C book? Interesting historically, but it's hard to imagine it was of much pragmatic use, even if you're working in Obj-C as your day-to-day. Still, it's an interesting artifact of the early OO age, and the metaphor of libraries of objects as integrated circuits was interesting.</p>
]]></description><pubDate>Mon, 23 Mar 2026 05:02:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=47485650</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47485650</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47485650</guid></item><item><title><![CDATA[New comment by jshier in "FBI is buying location data to track US citizens, director confirms"]]></title><description><![CDATA[
<p>LittleSnitch also does filtering, so it's both parts of the solution: it allows inspection of outgoing connections, at least by domain, and filtering of those connections you don't want, allowing you to block ads and most data networks.</p>
]]></description><pubDate>Fri, 20 Mar 2026 15:00:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=47455561</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47455561</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47455561</guid></item><item><title><![CDATA[New comment by jshier in "FBI is buying location data to track US citizens, director confirms"]]></title><description><![CDATA[
<p>Answering my own question, they need a way for users to grant location permission only to the primary app and not any of its dependencies, as once you grant it, it's available to all code in the app. It would be great if there was some way to separate those.<p>They could also better enable network traffic inspection on device, so we could tell where data is going. LittleSnitch on iOS would be great.</p>
]]></description><pubDate>Wed, 18 Mar 2026 22:47:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47432364</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47432364</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47432364</guid></item><item><title><![CDATA[New comment by jshier in "FBI is buying location data to track US citizens, director confirms"]]></title><description><![CDATA[
<p>What would you like them to do? They already force apps to ask for permission, give user control over when the app can even access the location (including just once), tell the user when the app has been accessing the location repeatedly over time, and allow the user the shut off location services for each app individually whenever they want. So aside from shutting off more and more possible sideband sources of location information, what else are they supposed to do?<p>Unless you're saying Apple is selling the location information they may have directly?</p>
]]></description><pubDate>Wed, 18 Mar 2026 22:42:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=47432322</link><dc:creator>jshier</dc:creator><comments>https://news.ycombinator.com/item?id=47432322</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47432322</guid></item></channel></rss>