<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: ratorx</title><link>https://news.ycombinator.com/user?id=ratorx</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 21 Jun 2026 09:52:50 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=ratorx" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by ratorx in "Steve Wozniak cheered after telling students they have AI – actual intelligence"]]></title><description><![CDATA[
<p>Providing access to the data is easy. It is just an MCP or equivalent, and coding such CRUD is cheap now.<p>Applying the actions is unsolved. Unless you YOLO the LLMs, taking stateful actions automatically requires a lot of protective infrastructure, solid testing infra etc.<p>It’s all just more code, but a “create me a shopping website” LLM is likely not going to be doing the infrastructure level thinking required to handle it for now.</p>
]]></description><pubDate>Fri, 22 May 2026 13:06:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=48235349</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=48235349</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48235349</guid></item><item><title><![CDATA[New comment by ratorx in "Show HN: Building a web server in assembly to give my life (a lack of) meaning"]]></title><description><![CDATA[
<p>If your goals were fame, then yes. But you can still pursue excellence even if there is an alternative “easy” path.<p>The equivalent is something like hand tool woodworking - it’s still a thing despite the advent of machines, but more of a niche. You can still aim to become excellent, but maybe you won’t be famous.</p>
]]></description><pubDate>Sun, 10 May 2026 09:46:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=48082431</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=48082431</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48082431</guid></item><item><title><![CDATA[New comment by ratorx in "South Korea introduces universal basic mobile data access"]]></title><description><![CDATA[
<p>UK has never had net neutrality, there are many limited data phone plans that include unlimited music/video etc</p>
]]></description><pubDate>Sat, 11 Apr 2026 15:43:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=47731534</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=47731534</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47731534</guid></item><item><title><![CDATA[New comment by ratorx in "My Google Workspace account suspension"]]></title><description><![CDATA[
<p>I think I read somewhere (but could be wrong) that it was because they didn’t want to own any “authentication” services. Their infrastructure was zero trust (as in they don’t hold any passwords or private keys), just a discovery server for different devices.</p>
]]></description><pubDate>Sun, 05 Apr 2026 18:05:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=47652139</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=47652139</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47652139</guid></item><item><title><![CDATA[New comment by ratorx in "Celebrating Tony Hoare's mark on computer science"]]></title><description><![CDATA[
<p>Making it explicit wouldn’t be particularly problematic no? Option<&Spouse> in Rust terms. Or for this specific case, a GADT (Single | Married<&Spouse>)?<p>It could even use a special “NULL” address. Just don’t pollute every type with it.</p>
]]></description><pubDate>Wed, 18 Mar 2026 13:15:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=47425426</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=47425426</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47425426</guid></item><item><title><![CDATA[New comment by ratorx in "The Linux Programming Interface as a university course text"]]></title><description><![CDATA[
<p>Pure CS is not necessarily equivalent to pure maths. For the “science” bit of CS, you do need to do the equivalent of experiments (for more applied topics).<p>For example, a physics degree is expected to have experiments. You are not required, expected (and possibly do not want) to know the tools required to professionally build a bridge because you did courses on mechanics. But you might do an experiment on the structural integrity and properties of small structures.<p>Whether this is a good split is an entirely different question.</p>
]]></description><pubDate>Mon, 16 Mar 2026 14:32:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=47399580</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=47399580</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47399580</guid></item><item><title><![CDATA[New comment by ratorx in "Manjaro website off-line again due to lapsed certificate"]]></title><description><![CDATA[
<p>Changing the links and doing nothing else would be a pretty dumb MITM. You could do a more complex variant which is not so easy to spot (targeting specific networks, injecting malware whilst modifying the checksum)<p>The key property of SSL that is useful for tamper resistance is that it’s hard to do silently. A random ASN doing a hijack will cause an observable BGP event and theoretically preventable via RPKI. If your ISP or similar does it, you can still detect it with CT logs.<p>Even the issuance is a little better, because LE will test from multiple vantage points. This doesn’t protect against an ISP interception, but it’s better than no protection.</p>
]]></description><pubDate>Tue, 24 Feb 2026 23:01:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=47144650</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=47144650</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47144650</guid></item><item><title><![CDATA[New comment by ratorx in "How we rebuilt Next.js with AI in one week"]]></title><description><![CDATA[
<p>I find it interesting that they <i>bought</i> Astro (<a href="https://blog.cloudflare.com/astro-joins-cloudflare/" rel="nofollow">https://blog.cloudflare.com/astro-joins-cloudflare/</a>), which from my definitely-not-a-frontend-person perspective seems to tackle a similar problem to Next. A month ago.<p>If it is so cheap to make something that they recommend using (rather than a proof of concept), why buy Astro (presumably it was more expensive than the token cost of this clone?).<p>One conclusion is that, at the organisational level, it still makes sense to hire the “vision” behind the framework, rather than just clone it. Alternatively, maybe AI has improved that much in 1 month!</p>
]]></description><pubDate>Tue, 24 Feb 2026 22:25:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=47144174</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=47144174</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47144174</guid></item><item><title><![CDATA[New comment by ratorx in "Every company building your AI assistant is now an ad company"]]></title><description><![CDATA[
<p>You can make it so employees don’t have ambient access to data, and require multi-party approval for all actions that require user data. Giving away a user password should be treated as a routine risk.<p>I’m not saying that’s how it actually works, and this process doesn’t have warts, but the ideal of individual employees not having direct access is not novel.</p>
]]></description><pubDate>Sun, 22 Feb 2026 08:21:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47109318</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=47109318</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47109318</guid></item><item><title><![CDATA[New comment by ratorx in "Parse, Don't Validate and Type-Driven Design in Rust"]]></title><description><![CDATA[
<p>It doesn’t have to be a compile time constant. An alternative is to prove that when you are calling the function the index is always less than the size of the vector (a dynamic constraint). You may be able to assert this by having a separate function on the vector that returns a constrained value (eg. n < v.len()).</p>
]]></description><pubDate>Sat, 21 Feb 2026 20:45:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=47104547</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=47104547</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47104547</guid></item><item><title><![CDATA[New comment by ratorx in "Railway (PaaS) global outage"]]></title><description><![CDATA[
<p>A global train outage would be quite a spectacle, is that even possible?</p>
]]></description><pubDate>Wed, 11 Feb 2026 17:14:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=46977691</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46977691</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46977691</guid></item><item><title><![CDATA[New comment by ratorx in "Jury told that Meta, Google 'engineered addiction' at landmark US trial"]]></title><description><![CDATA[
<p>Management not having to listen to engineers is the structural problem. How do managers know which concerns that engineers bring up are actually relevant? How do engineers know which concerns have real world consequences (without having a incredibly high burden of proof)?<p>Having regulation, or standardisation is a step toward producing a common language to express these problems and have them be taken seriously.<p>Leadership gets a strong signal - ignoring engineers surfacing regulated issues has large costs. Company might be sued and executives are criminally liable (if discovered to have known about the violation).<p>Engineering gets the authority and liability to sign off on things - the equivalent of “chartership” in regular fields with the same penalties. This gives them a strong personal reason to surface things.<p>It’s possible that this is harder for software engineering in its entirety, but there is definitely low hanging fruit (password storage and security etc).</p>
]]></description><pubDate>Tue, 10 Feb 2026 18:02:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=46964045</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46964045</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46964045</guid></item><item><title><![CDATA[New comment by ratorx in "I miss thinking hard"]]></title><description><![CDATA[
<p>I think it depends on the scope and level of solution I accept as “good”. I agree that often the thinking for the “next step” is too easy architecturally. But I still enjoy thinking about the global optimum or a “perfect system”, even it’s not immediately feasible, and can spend large amounts of time on this.<p>And then also there’s all the non-systems stuff - what is actually feasible, what’s most valuable etc. Less “fun”, but still lots of potential for thinking.<p>I guess my main point is there is still lots to think about even post-LLM, but the real challenge is making it as “fun” or as easily useful as it was pre-LLM.<p>I think local code architecture was a very easy domain for “optimality” that is actually tractable and the joy that comes with it, and LLMs are harmful to that, but I don’t think there’s nothing to replace it with.</p>
]]></description><pubDate>Wed, 04 Feb 2026 05:05:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=46881696</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46881696</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46881696</guid></item><item><title><![CDATA[New comment by ratorx in "Things I've learned in my 10 years as an engineering manager"]]></title><description><![CDATA[
<p>I guess this is also a matter of organisational policy and how much power individual teams/organisational units have.<p>I would imagine mature organisations without serious short/medium term existential risk due to product features may build some push back mechanisms to defend against the inherent cost of maintaining existing business (ie prioritising tech debt to avoid outages etc).<p>In general, it is a probably a mix of the two - even if there is a mandate from up high, things are typically arranged so that it can only occupy X% of a team’s capacity in normal operation etc, with at least some amount “protected” for things the team thinks are important. Of course, this is not the case everywhere and a specific demand might require “all hands on deck”, but to me that seems like a short-sighted decision without an extremely good reason.</p>
]]></description><pubDate>Mon, 26 Jan 2026 19:48:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=46770579</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46770579</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46770579</guid></item><item><title><![CDATA[New comment by ratorx in "Things I've learned in my 10 years as an engineering manager"]]></title><description><![CDATA[
<p>Team lead manages the overall direction of the team (and is possibly the expert on some portions), but for an individual subsystem a senior engineer might be the expert.<p>For work coming from outside the team, it’s sort of upto your management chain and team lead to prioritise. But for internally driven work (tech debt reduction, reliability/efficiency improvements etc) often the senior engineer has a better idea of the priorities for their area of expertise.<p>Prioritisation between the two is often a bit more collaborative and as a senior engineer you have to justify why thing X is super critical (not just propose that thing X needs to be done).<p>I view the goal of managers + lead as more balancing the various things the team could be doing (especially externally) and the goal of a senior engineer is to be an input to the process for a specific system they know most about.</p>
]]></description><pubDate>Mon, 26 Jan 2026 15:24:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=46766764</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46766764</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46766764</guid></item><item><title><![CDATA[New comment by ratorx in "Ask HN: One IP, multiple unrealistic locations worldwide hitting my website"]]></title><description><![CDATA[
<p>To be clear, they definitely use ingress anycast (ie anycast on external traffic coming into Cloudflare). The main question was whether they (meaningfully) used egress anycast (multiple Cloudflare servers in different regions using the same IP to make requests out to the internet).<p>Since you mentioned DDOS, I’m assuming you are talking about ingress anycast?</p>
]]></description><pubDate>Fri, 16 Jan 2026 10:27:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=46644999</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46644999</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46644999</guid></item><item><title><![CDATA[New comment by ratorx in "Ask HN: One IP, multiple unrealistic locations worldwide hitting my website"]]></title><description><![CDATA[
<p>So reading the article you’re right, it’s technically anycast. But only at the /24 level to work around BGP limitations. An individual /32 has a specific datacenter (so basically unicast). In a hypothetical world where BGP could route /32s it wouldn’t be anycast.<p>I wasn’t precise, but what I meant was more akin to a single IP shared by multiple datacenters in different regions (from a BGP perspective), which I don’t think Cloudflare has. This is general parallel of ingress unicast as well, a single IP that can be routed to multiple destinations (even if on the BGP level, the entire aggregate is anycast).<p>It would also not explain the OP, because they are seeing the same source IP, but from many (presumably) different source locations whereas with the Cloudflare scheme each location would have a different source IP.</p>
]]></description><pubDate>Thu, 15 Jan 2026 22:49:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=46640533</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46640533</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46640533</guid></item><item><title><![CDATA[New comment by ratorx in "Ask HN: One IP, multiple unrealistic locations worldwide hitting my website"]]></title><description><![CDATA[
<p>It’s possible, but I think it’s typically used for ingress (ie same IP, but multiple destinations, follow BGP to closest one).<p>I don’t think I’ve seen a similar case for anycast egress. Naively, doesn’t seem like it would work well because a lot of the internet (eg non-anycast geographic load balancing) relies on unique sources, and Cloudflare definitely break out their other anycast addresses (eg they don’t send outbound DNS requests from 1.1.1.1).</p>
]]></description><pubDate>Thu, 15 Jan 2026 22:21:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=46640218</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46640218</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46640218</guid></item><item><title><![CDATA[New comment by ratorx in "Oh My Zsh adds bloat"]]></title><description><![CDATA[
<p>I guess my workflow for this is more fragmented. Either I’m prototyping a script (and edit and test it directly) or just need throwaway loop (in which case fish is nicer).<p>I also don’t trust myself to not screw up anything more complex than running a command on Bash, without the guard rails of something like shellcheck!</p>
]]></description><pubDate>Sat, 10 Jan 2026 11:57:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=46564977</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46564977</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46564977</guid></item><item><title><![CDATA[New comment by ratorx in "Oh My Zsh adds bloat"]]></title><description><![CDATA[
<p>For POSIX: I leave Bash as the system shell and then shim into Fish only for interactive terminals. This works surprisingly well, and any POSIX env initialisation will be inherited. I very rarely need to do something complicated enough in the REPL of the terminal and can start a subshell if needed.<p>Fish is nicer to script in by far, and you can keep those isolated with shebang lines and still run Bash scripts (with a proper shebang line). The only thing that’s tricky is `source` and equivalents, but I don’t think I’ve ever needed this in my main shell and not a throw-away sub shell.</p>
]]></description><pubDate>Sat, 10 Jan 2026 10:11:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=46564395</link><dc:creator>ratorx</dc:creator><comments>https://news.ycombinator.com/item?id=46564395</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46564395</guid></item></channel></rss>