<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: vvanders</title><link>https://news.ycombinator.com/user?id=vvanders</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 24 May 2026 18:25:59 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=vvanders" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by vvanders in "Game devs explain the tricks involved with letting you pause a game"]]></title><description><![CDATA[
<p>Look into dead reckoning vs lock step for networking. Lockstep requires determinism at the simulation layer, dead reckoning can be much more tolerant of differences and latency. Quake and most action games tend to be dead reckoning (with more modern ones including time rewind and some other neat tricks).<p>Very common that replay/demo uses the network stack of it's present in a game.</p>
]]></description><pubDate>Sun, 19 Apr 2026 10:01:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=47823126</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=47823126</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47823126</guid></item><item><title><![CDATA[New comment by vvanders in "Samsung taking market share from Apple in U.S. as foldable phones gain momentum"]]></title><description><![CDATA[
<p>Multi app works pretty well too, when I need to cross reference between apps throwing them each up on the split halves is way better than swapping back and forth.</p>
]]></description><pubDate>Thu, 11 Sep 2025 19:46:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=45215419</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=45215419</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45215419</guid></item><item><title><![CDATA[New comment by vvanders in "Parsing Protobuf like never before"]]></title><description><![CDATA[
<p>Flatbuffers lets you directly mmap from disk, that trick alone makes it really good for use cases that can take advantage of it(fast access of read-only data). If you're clever enough to tune the ordering of fields you can give it good cache locality and really make it fly.<p>We used to store animation data in mmaped flatbuffers at a previous gig and it worked really well. Kernel would happily prefetch on access and page out under pressure, we could have 10s of MBs of animation data and only pay a couple hundred kb based on access patterns.</p>
]]></description><pubDate>Thu, 24 Jul 2025 09:29:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=44668734</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=44668734</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44668734</guid></item><item><title><![CDATA[New comment by vvanders in "Why not object capability languages?"]]></title><description><![CDATA[
<p>One capability mechanism that's in wide use but not really well known or touched on in the article is Androids RPC mechanism, Binder(and a lot of the history predates Android from what I recall).<p>Binder handles work just like object capabilities, you can only use what's sent to you and process can delegate out other binder handles.<p>Android hides most of this behind their permission model but the capability still exist and can be implemented by anyone in the system.</p>
]]></description><pubDate>Sun, 11 May 2025 19:40:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=43956470</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=43956470</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43956470</guid></item><item><title><![CDATA[New comment by vvanders in "Rust’s dependencies are starting to worry me"]]></title><description><![CDATA[
<p>That only applies when dynamic dispatch is involved and the linker can't trace the calls. For direct calls and generics(which idiomatic Rust code tends to prefer over dyn traits) LTO will prune extensively.</p>
]]></description><pubDate>Fri, 09 May 2025 23:07:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=43941769</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=43941769</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43941769</guid></item><item><title><![CDATA[New comment by vvanders in "Lego says it wants to start to bring video game development in-house"]]></title><description><![CDATA[
<p>From what I recall the PS3 devkit was significantly larger than 1U so it's not that uncommon.</p>
]]></description><pubDate>Sun, 16 Mar 2025 17:24:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=43380626</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=43380626</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43380626</guid></item><item><title><![CDATA[New comment by vvanders in "It is time to standardize principles and practices for software memory safety"]]></title><description><![CDATA[
<p>I think there is something to be said about having good defaults and tools that don't force you to be on every last detail 100% lest they get out of control.<p>It also depends on the team, some teams have a high density of seasoned experts who've made the mistakes and know what to avoid but I think the history on mem vulns show that it's very hard to keep that bar consistently across large codebases or disperse teams.</p>
]]></description><pubDate>Fri, 07 Feb 2025 07:03:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=42970203</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=42970203</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42970203</guid></item><item><title><![CDATA[New comment by vvanders in "It is time to standardize principles and practices for software memory safety"]]></title><description><![CDATA[
<p>That assumes that people know what they're doing in C/C++, I've seen just as many bloated codebases in C++ if not more because the defaults for most compilers are not great and it's very easy for things to get out of hand with templates, excessive use of dynamic libraries(which inhibit LTO) or using shared_ptr for everything.<p>My experience is that Rust guides you towards defaults that tend to not hit those things and for the cases where you really do need that fine grained control unsafe blocks with direct pointer access are available(and I've used them when needed).</p>
]]></description><pubDate>Fri, 07 Feb 2025 06:20:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=42969971</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=42969971</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42969971</guid></item><item><title><![CDATA[New comment by vvanders in "Great Watchdog Timers For Embedded Systems (2016)"]]></title><description><![CDATA[
<p>WDT patterns are highly underrated, even in pure software there's value in degrading/recovering gracefully vs systems that have to be "perfect" 100% of the time and then force user intervention when they go wrong.<p>One of my favorite blogs on the topic <a href="https://ferd.ca/the-zen-of-erlang.html" rel="nofollow">https://ferd.ca/the-zen-of-erlang.html</a> that does a great job of covering how Erlang approached the topic, lots of learnings that can be applied more broadly.</p>
]]></description><pubDate>Sat, 01 Feb 2025 02:58:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=42895223</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=42895223</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42895223</guid></item><item><title><![CDATA[New comment by vvanders in "Life lessons from the first half-century of my career"]]></title><description><![CDATA[
<p>Fear and a scarcity mindset, many people treat things as a zero-sum game when in practice the sum is usually greater than the individual parts.<p>The advice in the article is great, and much of it resonates with what I have seen over my career as well.</p>
]]></description><pubDate>Sat, 25 Jan 2025 07:09:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=42820066</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=42820066</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42820066</guid></item><item><title><![CDATA[New comment by vvanders in "Bambu Lab - Setting the Record Straight About Our Security Update"]]></title><description><![CDATA[
<p>I don't really see what having a "developer mode" offers here beyond the existing solution. The current mqtt is already locked down with a unique password and AFAIK the endpoint was read-only anyway.<p>Don't get me wrong I'm glad they're responding to feedback but the feedback shouldn't have been required in the first place.<p>I'm all for better security on products(esp ones that heat up to 300C!) but interoperability with open standards makes it a <i>better</i> product overall and given the direction we've seen in the IoT space I think they've done quite a bit of damage(even if not intentionally) by not taking more care in this area.</p>
]]></description><pubDate>Mon, 20 Jan 2025 22:49:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=42774053</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=42774053</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42774053</guid></item><item><title><![CDATA[New comment by vvanders in "Bambu Lab - Setting the Record Straight About Our Security Update"]]></title><description><![CDATA[
<p>You could already talk freely to the MQTT on the printer <i>and</i> it was already secured with a unique password. This feels like making it a second class feature that could disappear at a future point.</p>
]]></description><pubDate>Mon, 20 Jan 2025 22:26:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=42773830</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=42773830</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42773830</guid></item><item><title><![CDATA[New comment by vvanders in "Bambu Lab - Setting the Record Straight About Our Security Update"]]></title><description><![CDATA[
<p>Yeah that's a huge bummer if so, I've got both a HA automation that shows the printer status without needing to have an app installed <i>and</i> I've got a secondary filtration system that's fully automated which would be a PITA if I had to manage manually.<p>Totally understand if it's something that could change/break in future updates but the language about it being "exploited" is a bummer, you would think extending/documenting that would actually drive further adoption of the printers by building a more robust ecosystem around them.</p>
]]></description><pubDate>Mon, 20 Jan 2025 22:24:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=42773809</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=42773809</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42773809</guid></item><item><title><![CDATA[New comment by vvanders in "Debugging memory corruption: who the hell writes "2" into my stack? (2016)"]]></title><description><![CDATA[
<p>You may want to refresh your familiarity with Rust, I haven't touched nightly in ages and much of what you mention doesn't really resonate with what I've seen in practice. Not saying the language doesn't have issues and things that aren't frustrating but in my experience unless you're going to go to the nines in testing/validation/etc (which is the first thing that's cut when schedules/etc are in peril) I've seen Rust code scale better than C++ ever did.<p>More tools in the C/C++ realm are always welcome but I've yet to see more than 50% of projects I've worked on be able to successfully use ASAN(assuming you've got the time to burn to configure them and all their dependencies properly). I've used ASAN, CBMC and other tools to good effect but find Rust more productive overall.</p>
]]></description><pubDate>Wed, 01 Jan 2025 02:52:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=42563588</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=42563588</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42563588</guid></item><item><title><![CDATA[New comment by vvanders in "EU law mandating universal chargers for devices comes into force"]]></title><description><![CDATA[
<p>If your voltage matches one of the PD levels they work okay but many common voltages like 12v usually end up being very charger dependent. I've got one of the 12v pd triggers that on 9/10 of the PD enabled charges I've used just drops to 9v.</p>
]]></description><pubDate>Sat, 28 Dec 2024 22:59:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=42535594</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=42535594</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42535594</guid></item><item><title><![CDATA[New comment by vvanders in "The long road to lazy preemption in the Linux CPU scheduler"]]></title><description><![CDATA[
<p>We absolutely pinned on consoles, anywhere where you have fixed known hardware tuning for that specific hardware usually nets you some decent benefits.<p>From what I recall we mostly did it for predictability so that things that may go long wouldn't interrupt deadline sensitive things(audio, physics, etc).</p>
]]></description><pubDate>Sat, 19 Oct 2024 18:05:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=41889427</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=41889427</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41889427</guid></item><item><title><![CDATA[New comment by vvanders in "The long road to lazy preemption in the Linux CPU scheduler"]]></title><description><![CDATA[
<p>Games absolutely yield, even if the rendering thread tries to go 100% you'll likely still be sleeping in the GPU driver as it waits for back buffers to free up.<p>Even for non-rendering systems those still usually run at game tick-rates since running those full-tilt can starve adjacent cores depending on false sharing, cache misses, bus bandwidth limits and the like.<p>I can't think of a single title I worked on that did what you describe, embedded stuff for sure but that's a whole different class that is likely not even running a kernel.</p>
]]></description><pubDate>Sat, 19 Oct 2024 18:01:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=41889403</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=41889403</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41889403</guid></item><item><title><![CDATA[New comment by vvanders in "One of Florida's most lethal python hunters"]]></title><description><![CDATA[
<p>This is probably one of many different types of surveys and other activities that DNR(or DNR adjacent departments) coordinates, it's fairly common to have volunteer lead programs like this for surveys or other activities. As others mentioned there's no shortage of work in understanding and managing a regional ecosystem, the people who take these jobs usually care deeply about the ecosystems and are not doing the job for financial reasons.<p>Rather than being cynical maybe it would be worth your time to consider volunteering and better understanding how these things are managed. You might be surprised to find it's usually fairly educated folks who care about making sure what we have today is around for the next generation.</p>
]]></description><pubDate>Fri, 18 Oct 2024 21:14:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=41883546</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=41883546</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41883546</guid></item><item><title><![CDATA[New comment by vvanders in "The state of GNU/Linux and a case against shared object libraries"]]></title><description><![CDATA[
<p>Yes, this is lost in most discussions when it comes to DSOs. Not only do you have the complexity of versioning and vending but also you can't optimize with LTO and other techniques(which can make a <i>significant difference</i> in final binary size).<p>If you've got 10-15+ consumers of a shared library or want to do plugins/hot-code reloading <i>and</i> have a solid versioning story by all means vend a DSO. If you don't however I would strongly recommend trying to keep all dependencies static and letting LTO/LTCG do its thing.</p>
]]></description><pubDate>Mon, 14 Oct 2024 20:42:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=41841758</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=41841758</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41841758</guid></item><item><title><![CDATA[New comment by vvanders in "Turn your Android phone into a modern ham radio transceiver"]]></title><description><![CDATA[
<p>Sure, that's "technically" correct but most usage of Lora is going to be in ISM since that's where they are traditionally deployed. That doesn't require a license which can be a hurdle if you don't already have one.<p>I've got a ham license so not a big deal for me but for those wanting to try radios without a huge investment a pair of $20 Lora AT serial radios are a great way to dip into digital  radio.</p>
]]></description><pubDate>Mon, 14 Oct 2024 19:59:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=41841287</link><dc:creator>vvanders</dc:creator><comments>https://news.ycombinator.com/item?id=41841287</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41841287</guid></item></channel></rss>