<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: andrewaylett</title><link>https://news.ycombinator.com/user?id=andrewaylett</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 11 Jun 2026 23:45:34 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=andrewaylett" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by andrewaylett in "Show HN: Homebrew 6.0.0"]]></title><description><![CDATA[
<p>I'll second the recommendation for `mise`, and add: I typically use Homebrew for things I want everywhere, and if I want something everywhere then the latest version is _probably_ OK.  I typically use mise en place for versions which are project-specific.<p>So I have a system Python (largely unused), a Homebrew python (pulled in as a dependency, I won't use it), and as many different mise/uv Pythons as I need for different projects.  Similarly NodeJS and Java.  I'd given up on nvm a while back, no longer use pyenv, and mise and uv work together really nicely.</p>
]]></description><pubDate>Thu, 11 Jun 2026 22:17:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=48497170</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48497170</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48497170</guid></item><item><title><![CDATA[New comment by andrewaylett in "Running Python code in a sandbox with MicroPython and WASM"]]></title><description><![CDATA[
<p>Fair -- but I was more meaning that when I browse an arbitrary untrusted website I almost always allow the site owner to run arbitrary untrusted code on my machine.  They might not send me any JS, but if they do then my browser will happily execute it.</p>
]]></description><pubDate>Sun, 07 Jun 2026 19:09:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=48437674</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48437674</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48437674</guid></item><item><title><![CDATA[New comment by andrewaylett in "Running Python code in a sandbox with MicroPython and WASM"]]></title><description><![CDATA[
<p>Running arbitrary untrusted code safely is pretty easy nowadays, so long as the code is written in Javascript and you want to run it in a browser.  It's only a little harder if the code is written in another language but targets WASM and browser APIs, or if you want to run your WASM inside of NodeJS, and there's even good support for running Python in a browser or Node.<p>Once you get away from running in a JS environment or away from code that's written with the intention of running in a WASM sandbox, if you don't want to have to modify the code for your environment then you're going to start having problems.  This looks like a good step for anyone wanting to run arbitrary Python outside of a browser environment.</p>
]]></description><pubDate>Sat, 06 Jun 2026 17:20:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=48426998</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48426998</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48426998</guid></item><item><title><![CDATA[New comment by andrewaylett in "DaVinci Resolve 21"]]></title><description><![CDATA[
<p>That's still nondeterminism as an implementation choice, rather than as a fundamental limitation of the technology.</p>
]]></description><pubDate>Fri, 05 Jun 2026 10:49:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=48410627</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48410627</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48410627</guid></item><item><title><![CDATA[New comment by andrewaylett in "Show HN: Continue? Y/N: A 60-second game about AI agent permission fatigue"]]></title><description><![CDATA[
<p>I've recently been enjoying <a href="https://fnox.jdx.dev/" rel="nofollow">https://fnox.jdx.dev/</a>.</p>
]]></description><pubDate>Fri, 29 May 2026 15:54:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=48324845</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48324845</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48324845</guid></item><item><title><![CDATA[New comment by andrewaylett in "Indoor Wi-Fi Roaming with OpenWRT"]]></title><description><![CDATA[
<p>The Unifi range is quite definitely <i>optional</i> cloud.  Don't turn it on (and don't use a cloud-based controller!), and it won't have any mechanism for control.<p>You can even use the mobile apps over direct connection, with local auth and no cloudy relay required.</p>
]]></description><pubDate>Thu, 28 May 2026 22:51:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=48316649</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48316649</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48316649</guid></item><item><title><![CDATA[New comment by andrewaylett in "The quiet renovation at Bitwarden"]]></title><description><![CDATA[
<p>This does depend somewhat on your risk profile.  For many folk it's pretty decent: you need to guard against online attacks, so keeping your passwords offline gives them excellent security.  If you need to protect yourself against family members, it's not so good — and it also doesn't provide the level of phishing protection that an online password manager offers.</p>
]]></description><pubDate>Tue, 19 May 2026 09:36:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=48191211</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48191211</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48191211</guid></item><item><title><![CDATA[New comment by andrewaylett in "Can someone please explain whether Cloudflare blackmailed Canonical?"]]></title><description><![CDATA[
<p>One of types of services Cloudflare provides goes by the name "Warp".  Calling it a VPN is only wrong in ways that don't really matter — it has the effect of causing client traffic to appear to originate from a different IP address to the one they're notionally connected to the Internet via.</p>
]]></description><pubDate>Mon, 11 May 2026 22:10:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=48101355</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48101355</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48101355</guid></item><item><title><![CDATA[New comment by andrewaylett in "AI didn't delete your database, you did"]]></title><description><![CDATA[
<p>The problem with asking an LLM for "its reasoning" after the fact, is that any justification it might give is a post-hoc rationalisation rather than a pre-meditated reason.</p>
]]></description><pubDate>Tue, 05 May 2026 19:35:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=48027415</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48027415</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48027415</guid></item><item><title><![CDATA[New comment by andrewaylett in "Mercedes-Benz commits to bringing back physical buttons"]]></title><description><![CDATA[
<p>You probably don't want to be setting up Maps on either a touch screen <i>or</i> a with keys while driving.  But navigation and media selection are the two functions I'm generally happy to interact with via voice.</p>
]]></description><pubDate>Mon, 04 May 2026 17:04:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=48011514</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48011514</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48011514</guid></item><item><title><![CDATA[New comment by andrewaylett in "Mercedes-Benz commits to bringing back physical buttons"]]></title><description><![CDATA[
<p>I have a pre-facelift MB A-class, and I think it's the best car I've driven for controls.  You don't have to touch the screen <i>ever</i> if you don't want to: there's a trackpad on the centre console that <i>just works</i> even (most of the time) with Android Auto (and the back/home/map/media/phone buttons will still save you even if Android Auto won't always let you move the cursor to the back arrow in YouTube Music).  The steering wheel has two touch-sensitive buttons, one for each screen (duplicating the trackpad, which itself duplicates the media touchscreen).  I can't even easily reach either screen when driving, so I don't.<p>Driving controls are all available on the stalks and wheel, volume is adjustable from the wheel or the centre console, all physical buttons, levers, or scroll inputs, unless you need to change a setting using the trackpad.  The only thing that's missing is wheel control for skipping tracks :P.</p>
]]></description><pubDate>Sun, 03 May 2026 20:24:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=48001047</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=48001047</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48001047</guid></item><item><title><![CDATA[New comment by andrewaylett in "I Got Sick of Remembering Port Numbers"]]></title><description><![CDATA[
<p>I've used[0] `.local` to achieve something like this, by advertising service endpoints over mDNS.<p>Exposing random services to your local network is exactly what mDNS is for, I always thought it was a shame more dev tooling didn't do that.<p>[0]: <a href="https://github.com/andrewaylett/mod_bonjour" rel="nofollow">https://github.com/andrewaylett/mod_bonjour</a> is a fork of Apple's mod_bonjour, very much unloved of late I'm afraid.</p>
]]></description><pubDate>Fri, 01 May 2026 15:15:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47975789</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=47975789</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47975789</guid></item><item><title><![CDATA[New comment by andrewaylett in "Firefox Has Integrated Brave's Adblock Engine"]]></title><description><![CDATA[
<p>That list contains issues with the APIs that Chrome exposes via MV3.  Firefox still supports APIs that Chrome removed.</p>
]]></description><pubDate>Sat, 25 Apr 2026 12:51:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=47901088</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=47901088</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47901088</guid></item><item><title><![CDATA[New comment by andrewaylett in "Europe has "maybe 6 weeks of jet fuel left""]]></title><description><![CDATA[
<p>Note that this isn't six weeks of reserve, it's an estimated six weeks of draw-down given what they're still receiving from other sources combined with (I suspect) both known fuel in transit and a reserve that wouldn't last nearly as long as six weeks if it were all they had.<p>If they can increase supply or reduce demand, the reserve will take longer to draw down.</p>
]]></description><pubDate>Sun, 19 Apr 2026 19:16:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=47826808</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=47826808</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47826808</guid></item><item><title><![CDATA[New comment by andrewaylett in "The Future of Everything Is Lies, I Guess: Part 3 – Culture"]]></title><description><![CDATA[
<p>It's the author's problem with the UK (and the UK's Online Safety Act, which establishes requirements on hosts that can't be avoided by merely not being in the UK), rather than the UK's problem with the author.<p>But as much as I dislike the OSA: if you're not subject to UK law, why do you (website author) care what our government thinks of your website?  It's not like they can do anything to you.</p>
]]></description><pubDate>Thu, 09 Apr 2026 20:22:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=47709337</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=47709337</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47709337</guid></item><item><title><![CDATA[New comment by andrewaylett in "Someone at BrowserStack is leaking users' email addresses"]]></title><description><![CDATA[
<p>Selected quotes from Apollo's GDPR page:<p>> Consent must be "freely given, specific, informed, and unambiguous."<p>and<p>> Apollo notifies them when their data is added to Apollo's database of business contact information and provides them with instructions on how to opt out.<p><a href="https://knowledge.apollo.io/hc/en-us/articles/4409141087757-General-Data-Protection-Regulation-GDPR-Overview" rel="nofollow">https://knowledge.apollo.io/hc/en-us/articles/4409141087757-...</a><p>Now, their claim appears to be that they're processing business contact data under the legal basis of "Legitimate Interests".  But as much as I am a big fan of not doing things that require a legal basis of "Consent", I'm unconvinced that they ensure their customers are sticking as tightly to their basis as they ought to be if they wish to claim it.<p>In other words: yes, if you have a CRM in then you might derive legitimate interests in sharing with Apollo.  But you need to make sure you actually have the right legal basis for putting customer details into your CRM, and your support database almost certainly does not hold appropriate data!<p>So ultimately I think this is on both Browserstack (for connecting and sharing data other than in accordance with a legal basis) <i>and</i> Apollo (for making it too easy for their customers to send them data without a sound legal basis and then for sharing that data without suitably validating they had the legal basis to).<p>Apollo's privacy centre makes all the right claims about how they comply with GDPR, but the OP's story demonstrates that they're not as scrupulous in their verification as they claim to be.  And strictly, both should be reporting the breach and taking steps to ensure it doesn't recur.</p>
]]></description><pubDate>Sun, 05 Apr 2026 15:09:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47650220</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=47650220</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47650220</guid></item><item><title><![CDATA[New comment by andrewaylett in "Author of "Careless People" banned from saying anything negative about Meta"]]></title><description><![CDATA[
<p>There would have been a power imbalance at the point of signing.  I can well imagine that the implications of that particular clause weren't apparent at the time.<p>As a society (more so here in the UK than in the US, I'll grant) we have laws governing what one party may demand of the other.  They don't prevent a genuine meeting of the minds, because enforcement of a contract will only be an issue if at least one party <i>doesn't</i> follow through.  But they do limit the ability of the company to impose sanctions beyond a point.<p>One limitation in the UK is that penalty clauses that are "private fines", like this one, must be based on the actual damage caused.<p>In this case, as in the non-compete case, I would say that if a company wants to continue to influence what someone does, they should continue to pay them.</p>
]]></description><pubDate>Sat, 04 Apr 2026 16:42:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=47640677</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=47640677</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47640677</guid></item><item><title><![CDATA[New comment by andrewaylett in "Android’s new sideload settings will carry over to new devices"]]></title><description><![CDATA[
<p>Given the Epic settlement means Google is allowing alternate app stores, and also the delay only applies for unregistered developers, I'm not certain it won't actually get easier to get folk set up on F-Droid.<p>It still remains to be seen what the actual requirements are, and even if F-Droid <i>could</i> become "approved" that doesn't mean they want to.  Time will tell.</p>
]]></description><pubDate>Sat, 28 Mar 2026 21:38:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47558332</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=47558332</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47558332</guid></item><item><title><![CDATA[New comment by andrewaylett in "Google details new 24-hour process to sideload unverified Android apps"]]></title><description><![CDATA[
<p>SumUp won't let you use your phone to accept contactless payments while developer mode is enabled.  You can still use an external card reader though.</p>
]]></description><pubDate>Thu, 19 Mar 2026 20:15:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47445280</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=47445280</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47445280</guid></item><item><title><![CDATA[New comment by andrewaylett in "Please Do Not A/B Test My Workflow"]]></title><description><![CDATA[
<p>> on every compaction<p>I've only hit the compaction limit a handful of times, and my experience degraded enough that I work <i>quite hard</i> to not hit it again.<p>One thing I like about the current implementation of plan mode is that it'll clear context -- so if I complete a plan, I can use that context to write the next plan without growing context without bound.</p>
]]></description><pubDate>Sat, 14 Mar 2026 12:57:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=47376213</link><dc:creator>andrewaylett</dc:creator><comments>https://news.ycombinator.com/item?id=47376213</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47376213</guid></item></channel></rss>