<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: yuriks</title><link>https://news.ycombinator.com/user?id=yuriks</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 18 Apr 2026 02:14:53 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=yuriks" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by yuriks in "Google details new 24-hour process to sideload unverified Android apps"]]></title><description><![CDATA[
<p>No, they're implying that you need a lot of coins to pay for parking.<p>If you need $6 to pay for parking, and the largest commonly available coin is a quarter, that means you need 24 coins to pay. If the value of currency was such that the parking only costed $3, or if dollar coins were more common, you'd need less coins to pay.</p>
]]></description><pubDate>Fri, 20 Mar 2026 02:44:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47449820</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=47449820</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47449820</guid></item><item><title><![CDATA[New comment by yuriks in "Dolphin Progress Report: Release 2512"]]></title><description><![CDATA[
<p>Games are not fungible.</p>
]]></description><pubDate>Mon, 29 Dec 2025 16:41:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=46422386</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46422386</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46422386</guid></item><item><title><![CDATA[New comment by yuriks in "The Algebra of Loans in Rust"]]></title><description><![CDATA[
<p>> Is this actually useful in practice?<p>It's required to do any intialization, particularly for compound futures (e.g. a "join" or "select" type of combinator), since you need to be able to move the future from where it's created to where it's eventually used/polled. I assume some of those cases could be subsumed by &uninit if that existed yeah.</p>
]]></description><pubDate>Fri, 26 Dec 2025 14:25:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=46392237</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46392237</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46392237</guid></item><item><title><![CDATA[New comment by yuriks in "The Algebra of Loans in Rust"]]></title><description><![CDATA[
<p>For 1, I think it's hard to make a distinction between swapping an object, vs. swapping/mutating all of its fields such that it becomes equivalent to a different object.<p>For 3, some objects only need to be pinned under certain circumstances, e.g. futures only need to be pinned after they're polled for the first time, but not before. So it's convenient to separate the pinnability property to allow them to be moved freely beforehand.<p>I don't quite understand the usecase you have in mind for 4.</p>
]]></description><pubDate>Fri, 26 Dec 2025 13:38:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=46391861</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46391861</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46391861</guid></item><item><title><![CDATA[New comment by yuriks in "Stop Slopware"]]></title><description><![CDATA[
<p>People aren't complaining about that. What you do in the privacy of your own computer is only your problem. The issue is people pouring a whole "arduous" 2 hours into vibecoding a project, then advertising it and posting to communities everywhere as a revolutionary bullet-proof high-quality project asking for visibility and contributions.</p>
]]></description><pubDate>Tue, 23 Dec 2025 17:29:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=46367190</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46367190</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46367190</guid></item><item><title><![CDATA[New comment by yuriks in "Stop Slopware"]]></title><description><![CDATA[
<p>This post mirrors my sentiment and the reasons I dislike these sorts of "projects" much more closely than the main site does, deserved to be the main submission, in retrospect.</p>
]]></description><pubDate>Tue, 23 Dec 2025 17:10:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=46367011</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46367011</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46367011</guid></item><item><title><![CDATA[New comment by yuriks in "Linux Kernel Rust Code Sees Its First CVE Vulnerability"]]></title><description><![CDATA[
<p>The author of the patch does mention that the better thing to do in the long run is to replace the data structure with one that is possible to better encapsulate: <a href="https://lore.kernel.org/all/20251111-binder-fix-list-remove-v1-3-8ed14a0da63d@google.com/" rel="nofollow">https://lore.kernel.org/all/20251111-binder-fix-list-remove-...</a></p>
]]></description><pubDate>Thu, 18 Dec 2025 00:05:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=46307357</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46307357</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46307357</guid></item><item><title><![CDATA[New comment by yuriks in "No Graphics API"]]></title><description><![CDATA[
<p>I thought that the implication was that the shader compiler produces a second shader from the same source that went through a dead code elimination pass which maintains only the code necessary to calculate the position, ignoring other attributes.</p>
]]></description><pubDate>Wed, 17 Dec 2025 03:36:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=46297940</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46297940</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46297940</guid></item><item><title><![CDATA[New comment by yuriks in "No Graphics API"]]></title><description><![CDATA[
<p>I was lost when it suddenly jumped from a long retrospective on GPUs to abruptly talking about "my allocator API" on the next paragraph with no segue or justification.</p>
]]></description><pubDate>Wed, 17 Dec 2025 03:29:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=46297909</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46297909</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46297909</guid></item><item><title><![CDATA[New comment by yuriks in "Common Rust Lifetime Misconceptions"]]></title><description><![CDATA[
<p>A 'static lifetime does not live for the rest of the program. It rather is guaranteed to live for as long as anyone is able to observe it. Data allocated in an Rc for example, lives as long as there are references to it. The ref count will keep it alive, but it will in fact still be deallocated once all references are gone (and it cannot be observed anymore).</p>
]]></description><pubDate>Mon, 15 Dec 2025 17:20:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=46277374</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46277374</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46277374</guid></item><item><title><![CDATA[New comment by yuriks in "Common Rust Lifetime Misconceptions"]]></title><description><![CDATA[
<p>That is not a memory leak though! That's using/exposing an uninitialized buffer, which can happen even if you allocate and free your allocations correctly. Leaking the buffer would prevent the memory region from being allocated by another application, and would in fact prevent that from happening.<p>This is also something that Rust does protect against in safe code, by requiring initialization of all memory before use, or using MaybeUninit for buffers that aren't, where reading the buffer or asserting that it has been initialized is an unsafe operation.</p>
]]></description><pubDate>Mon, 15 Dec 2025 17:18:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=46277338</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46277338</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46277338</guid></item><item><title><![CDATA[New comment by yuriks in "Common Rust Lifetime Misconceptions"]]></title><description><![CDATA[
<p>...yes?</p>
]]></description><pubDate>Mon, 15 Dec 2025 16:09:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=46276345</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46276345</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46276345</guid></item><item><title><![CDATA[New comment by yuriks in "Common Rust Lifetime Misconceptions"]]></title><description><![CDATA[
<p>Needs a (2020) in the title. I don't think anything major is outdated, but in particular in section 10, one of the desired syntaxes is now supported as an unstable feature but there wasn't any mention of that:<p><pre><code>    #![feature(closure_lifetime_binder)]
    fn main() {
        let identity = for<'a> |x: &'a i32| -> &'a i32 { x };
    }</code></pre></p>
]]></description><pubDate>Mon, 15 Dec 2025 14:47:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=46275224</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46275224</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46275224</guid></item><item><title><![CDATA[New comment by yuriks in "Japanese game devs face font dilemma as license increases from $380 to $20k"]]></title><description><![CDATA[
<p>And after digging through the comments... Yup it's private equity again.
PE buyouts should be considered criminal fraud.</p>
]]></description><pubDate>Wed, 03 Dec 2025 06:04:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=46130772</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=46130772</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46130772</guid></item><item><title><![CDATA[New comment by yuriks in "AI web crawlers are destroying websites in their never-ending content hunger"]]></title><description><![CDATA[
<p>The world today is just crooks all the way down (or up, depending on how you look at it).</p>
]]></description><pubDate>Wed, 03 Sep 2025 03:46:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=45112086</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=45112086</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45112086</guid></item><item><title><![CDATA[New comment by yuriks in "# [derive(Clone)] Is Broken"]]></title><description><![CDATA[
<p>It relaxes the contract required for an existing type with derive(Clone) to implement Clone, which might allow types in existing code to be cloned where they couldn't before. This might matter if precluding those clones is important for the code, e.g. if there are safety invariants being maintained by Type<T> only being clonable if T is clone.</p>
]]></description><pubDate>Tue, 08 Jul 2025 08:46:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=44498259</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=44498259</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44498259</guid></item><item><title><![CDATA[New comment by yuriks in "Ocarina of Time Randomizer"]]></title><description><![CDATA[
<p>The rules for what locations/checks can be reached in what situations and with what items are painstakingly encoded in a machine readable format: <a href="https://github.com/OoTRandomizer/OoT-Randomizer/tree/Dev/data/World">https://github.com/OoTRandomizer/OoT-Randomizer/tree/Dev/dat...</a><p>I don't know the specifics of the OoTR algorithm but in general they work by considering a set of items which are currently "available", and then progressively picking a random item to place only in locations which are reachable with that current set of available items (which is expanded with each placement).</p>
]]></description><pubDate>Mon, 23 Jun 2025 19:12:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=44359035</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=44359035</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44359035</guid></item><item><title><![CDATA[New comment by yuriks in "Estrogen: A Trip Report"]]></title><description><![CDATA[
<p>Ironically, testosterone in theory is <i>harder</i> to get. Since it is widely used for sports doping, it's considered an anabolic steroid, and is a scheduled substance in the US, and so has a bit more oversight to prescribe and dispense. (But I imagine there's probably also a larger black market for it for the same reasons.)</p>
]]></description><pubDate>Thu, 19 Jun 2025 22:41:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=44323194</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=44323194</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44323194</guid></item><item><title><![CDATA[New comment by yuriks in "Bzip2 crate switches from C to 100% Rust"]]></title><description><![CDATA[
<p>It sounds like the main motivation for the conversion was to simplify builds and reduce the chance of security issues. Old parts of protocols that no one pays much attention to anymore does seem to be a common place where those pop up. The performance gain looks more like just a nice side effect of the rewrite, I imagine they were at most targeting performance parity.</p>
]]></description><pubDate>Tue, 17 Jun 2025 22:56:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=44304913</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=44304913</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44304913</guid></item><item><title><![CDATA[New comment by yuriks in "No Hello"]]></title><description><![CDATA[
<p>The context I usually saw this used in is that people would put the link on their online status or profile bio, as a signal and to inform anyone looking to contact them that it's ok and encouraged to just go straight to asking their business. I've never heard of someone sending it to explicitly "chide" someone for violating that etiquette.</p>
]]></description><pubDate>Tue, 17 Jun 2025 15:52:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=44300591</link><dc:creator>yuriks</dc:creator><comments>https://news.ycombinator.com/item?id=44300591</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44300591</guid></item></channel></rss>