<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: dwrodri</title><link>https://news.ycombinator.com/user?id=dwrodri</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 13 May 2026 17:19:55 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=dwrodri" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by dwrodri in ""Parse, don't validate" through the years with C++"]]></title><description><![CDATA[
<p>I like the linking of "construction of a type is evidence of correctness"!</p>
]]></description><pubDate>Wed, 06 May 2026 20:34:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=48041405</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=48041405</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48041405</guid></item><item><title><![CDATA[New comment by dwrodri in ""Parse, don't validate" through the years with C++"]]></title><description><![CDATA[
<p>Author here:<p>A lot of my professional C++ experience comes from the computer vision space where I am specifically linking against FFmpeg (libav does its own share of memory management tricks that don't always play well with RAII).<p>I think of static functions (even within member classes) as a signifier of "hey, you don't need a constructed object for this to work and it doesn't depend on class instance state".<p>In application code, I was typically relying on Myers Singletons and the implicit thread-safeness more than what you see here. I debated dropping the static keyword because it stands out as odd especially in a private class method, but settled on keeping it.</p>
]]></description><pubDate>Wed, 06 May 2026 20:28:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=48041322</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=48041322</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48041322</guid></item><item><title><![CDATA[New comment by dwrodri in ""Parse, don't validate" through the years with C++"]]></title><description><![CDATA[
<p>A very specific shortcoming of this implementation is indeed "Day of Month" and "Month of Year" <i>aren't</i> given their own types! The type specification should likely be applied all the way down! I felt the examples conveyed the point well enough and it was shorter in many cases.</p>
]]></description><pubDate>Wed, 06 May 2026 20:14:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=48041134</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=48041134</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48041134</guid></item><item><title><![CDATA[New comment by dwrodri in ""Parse, don't validate" through the years with C++"]]></title><description><![CDATA[
<p>Author here. The post didn't get much traffic when I uploaded so I didn't engage much with the thread. Looks like I should've come back!<p>I specifically wrote that by hand to note the specific shortcomings of this approach when evaluated under King's thesis. I do acknowledge that I use LLM models heavily when drafting the code snippets in this blog post, and I do a mini review in the conclusion of the downsides of using these models.</p>
]]></description><pubDate>Wed, 06 May 2026 20:11:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=48041105</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=48041105</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48041105</guid></item><item><title><![CDATA[New comment by dwrodri in "A Theory of Deep Learning"]]></title><description><![CDATA[
<p>Admittedly probably some aggrandized boasting here, but I think empirical verification of that Adam modification alone would be a meaningful contribution, unless that's prior work?</p>
]]></description><pubDate>Wed, 06 May 2026 19:12:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=48040346</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=48040346</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48040346</guid></item><item><title><![CDATA[New comment by dwrodri in "Valve releases Steam Controller CAD files under Creative Commons license"]]></title><description><![CDATA[
<p>I wish computer mice did this.<p>I know multiple people whom are quite attached to 10+ year old mice that haven't been manufactured for quite some time, and would like to keep the familiar shape and design.</p>
]]></description><pubDate>Wed, 06 May 2026 18:55:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=48040133</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=48040133</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48040133</guid></item><item><title><![CDATA["Parse, don't validate" through the years with C++]]></title><description><![CDATA[
<p>Article URL: <a href="https://derekrodriguez.dev/parse-dont-validate-through-the-years-with-c-/">https://derekrodriguez.dev/parse-dont-validate-through-the-years-with-c-/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47923429">https://news.ycombinator.com/item?id=47923429</a></p>
<p>Points: 86</p>
<p># Comments: 48</p>
]]></description><pubDate>Mon, 27 Apr 2026 16:08:34 +0000</pubDate><link>https://derekrodriguez.dev/parse-dont-validate-through-the-years-with-c-/</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=47923429</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47923429</guid></item><item><title><![CDATA[New comment by dwrodri in "Why I love FreeBSD"]]></title><description><![CDATA[
<p>Serious FreeBSD question: I like a lot of what FreeBSD promises, but have been hesitant to make the leap for my home server as I enjoy hosting game servers via steamcmd. I know FreeBSD has Linux binary compatibility, but I am unsure how this would play out for all of my hosting needs. Also, I have some old Nvidia GPUs in this machine, which I might get rid of as they are no longer supported by the latest releases of ML packages, but I also might keep them around for self-teaching CUDA.<p>How do FreeBSD users get around the inconveniences associated with the "the rest of the world" running on Linux?</p>
]]></description><pubDate>Mon, 16 Mar 2026 21:14:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=47404974</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=47404974</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47404974</guid></item><item><title><![CDATA[New comment by dwrodri in "Magic: The Gathering is full of interesting ML challenges"]]></title><description><![CDATA[
<p>Author here, welcoming feedback and ideas for how you'd approach challenges such as these. There was a long road of operational tasks to get to a "quick" iteration loop in my debug UI, that I'll be ready to share that story once my new ranker is outperforming my old one. As of right now, the entire data + ranking operation runs on an few-years-old gaming PC with 24GB of ram and 12 cores.<p>The NMF model was fairly simple to get off the ground, thanks to the maturity of the deployment ecosystem surrounding it. Getting the Set Transformer to beat it in my internal benchmarks has been a journey, hopefully I'll share later this year!</p>
]]></description><pubDate>Tue, 20 Jan 2026 20:58:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=46697664</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=46697664</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46697664</guid></item><item><title><![CDATA[Magic: The Gathering is full of interesting ML challenges]]></title><description><![CDATA[
<p>Article URL: <a href="https://derekrodriguez.dev/magic-the-gathering-is-full-of-interesting-ml-challenges/">https://derekrodriguez.dev/magic-the-gathering-is-full-of-interesting-ml-challenges/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46697526">https://news.ycombinator.com/item?id=46697526</a></p>
<p>Points: 2</p>
<p># Comments: 1</p>
]]></description><pubDate>Tue, 20 Jan 2026 20:46:34 +0000</pubDate><link>https://derekrodriguez.dev/magic-the-gathering-is-full-of-interesting-ml-challenges/</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=46697526</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46697526</guid></item><item><title><![CDATA[New comment by dwrodri in "Ask HN: Share your personal website"]]></title><description><![CDATA[
<p>I only write about once a year, but in 2025, I started getting serious about using LLMs to make headway on some of my larger side projects, and the results are getting promising. Link here: <a href="https://derekrodriguez.dev/magic-the-gathering-is-full-of-interesting-ml-challenges/" rel="nofollow">https://derekrodriguez.dev/magic-the-gathering-is-full-of-in...</a></p>
]]></description><pubDate>Thu, 15 Jan 2026 17:16:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=46635833</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=46635833</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46635833</guid></item><item><title><![CDATA[New comment by dwrodri in "OBS Studio 32.1.0 Beta 1 available"]]></title><description><![CDATA[
<p>I would love to host an ultra high quality stream on my own web server, and then have that exact stream piped to YouTube live via OBS. Is there an easy way to do that now?<p>YouTube likely won't support streaming 3440x1440 60FPS video, and while discord technically supports it, they usually compress the footage fairly aggressively once it's sent up to the client, so I'd like to host my own; it only needs to support a few people. I wouldn't mind hosting it so my friends and side project partners can watch me code and play games in high quality.</p>
]]></description><pubDate>Thu, 15 Jan 2026 16:56:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=46635475</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=46635475</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46635475</guid></item><item><title><![CDATA[New comment by dwrodri in "AI will make formal verification go mainstream"]]></title><description><![CDATA[
<p>I think if AI can help us modernize the current state of hardware verification, I think that would be an enormous boon to the tech industry.<p>Server class CPUs and GPUs are littered with side channels which are very difficult to “close”, even in hardened cloud VMs.<p>We haven’t verified “frontier performance” hardware down to the logic gate in quite some time. Prof. Margaret Martinosi’s lab and her students have spent quite some time on this challenge, and i am excited to see better, safer memory models oyt in the wild.<p>A lot of the same big ideas used in hardware are making their way into the software later too, see <a href="https://faultlore.com/blah/tower-of-weakenings/" rel="nofollow">https://faultlore.com/blah/tower-of-weakenings/</a></p>
]]></description><pubDate>Wed, 17 Dec 2025 19:23:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=46304254</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=46304254</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46304254</guid></item><item><title><![CDATA[New comment by dwrodri in "Ask HN: What Are You Working On? (December 2025)"]]></title><description><![CDATA[
<p>I am in the final testing stages for a bespoke recommender system to facilitate construction of EDH Decks.<p>The vibes are off at the moment, but goal is to do a show HN and a little PR a little closer to the holidays: <a href="https://mtg.derekrodriguez.dev/" rel="nofollow">https://mtg.derekrodriguez.dev/</a></p>
]]></description><pubDate>Mon, 15 Dec 2025 19:04:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=46278830</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=46278830</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46278830</guid></item><item><title><![CDATA[New comment by dwrodri in "Launch HN: Mosaic (YC W25) – Agentic Video Editing"]]></title><description><![CDATA[
<p>Have y'all talked with Max and the Ozone team? Suppose you would have lots to learn from them as you take on this space. Best of luck, video is hard!</p>
]]></description><pubDate>Thu, 20 Nov 2025 00:59:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=45987447</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=45987447</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45987447</guid></item><item><title><![CDATA[New comment by dwrodri in "Men who mean just what they say"]]></title><description><![CDATA[
<p>When I was in my 20s, I hit a point where I started looking back on my high school years and realized there were a small handful of teachers who had a very large influence on what I use as my "compass" for guiding me towards being the person I wanted to become as an adult.<p>One commonality among all of those teachers is that decade(s) later, it seems that they are mostly the same person, beliefs-wise and character-wise. It appeared that they had hit a point in their life where they "figured it out", and anchored themselves on that point. I put the phrase in quotes, because as an adult, I know the statement is superficial now, but that it certainly how it seemed when I was younger.<p>Circling back to the post: in my own lived experience, "Men who mean what they say" became that way not necessarily through the sole virtue of honesty, but by guiding themselves using the same set of virtues (honesty included) for large portions of their life. It was very easy to understand what mattered to them and what they believed in, and as an adult at the end of my 20s, it is clear to me that should I want to become the person my younger self aspired to be, following in my teachers' example means making an increasing percent of my actions reflect the virtues that matter the most to me.<p>But it is a learned process, not one necessarily passed down through merely being a person who has learned that lying is bad. By learning to practice actions which reflect your virtues, you also learn how to avoid shallower "means-justify-the-ends" behavior (e.g. is it more important to NEVER tell a lie, even if speaking only in facts you know to be true creates more harm?)</p>
]]></description><pubDate>Fri, 24 Oct 2025 17:27:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=45696954</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=45696954</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45696954</guid></item><item><title><![CDATA[New comment by dwrodri in "Ask HN: What are you working on? (September 2025)"]]></title><description><![CDATA[
<p>trying to build a webapp where i apply some recommender systems knowledge to TCG deckbuilding. MtG in particular is suffering from product fatigue and as someone who is both an MLE and a casual MtG player, it has been a fun challenge to apply my skills to a domain of interest</p>
]]></description><pubDate>Mon, 29 Sep 2025 21:13:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=45418832</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=45418832</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45418832</guid></item><item><title><![CDATA[New comment by dwrodri in "Reflecting JSON into C++ Objects"]]></title><description><![CDATA[
<p>> Imagine shipping GCC at runtime<p>The security engineer in me had a facial twitch, but for the right usecases this would be indeed be interesting!</p>
]]></description><pubDate>Thu, 26 Jun 2025 15:10:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=44388190</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=44388190</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44388190</guid></item><item><title><![CDATA[New comment by dwrodri in "Solving LinkedIn Queens with SMT"]]></title><description><![CDATA[
<p>Formal methods = “this software cannot do things it shouldn’t do”, I have formally proven it ALWAYS EXECUTES THE WAY I CONSTRAINED IT TO.<p>Contrast with<p>Testing = “My tests prove these inputs definitely produce these test outputs”<p>IME Formal methods struggle making contact with reality because you really only get their promise “it always does what it is constrained to do” when every abstraction underneath provides the same guarantee, I wager most CPUs/GPUs aren’t verified down to the gate level these days.<p>It’s just faster to “trust” tests with most of the benefit, and developing software faster is very important to capturing a market and accruing revenue if you are building your software for business reasons.<p>EDIT: My gate-level verification remark is a bit extreme, but it applies to higher layers of the stack. The linux kernel isn’t verified. Drivers are sometimes verified, but not often. There is an HN comment somewhere about building a filesystem in Coq, and while the operations at the filesystem layer are provably correct, the kernel interfaces still fail. The firmware still isn’t proven. The CPU itself running on has undisclosed optimizations in its caches and load/store mechanisms which just aren’t proven, but enabled it to beat the competition on benchmarks, driving sales.</p>
]]></description><pubDate>Fri, 13 Jun 2025 15:26:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=44269401</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=44269401</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44269401</guid></item><item><title><![CDATA[Ask HN: Alternatives to Data Wrangler?]]></title><description><![CDATA[
<p>I deal with a lot of building and debugging data pipelines at work, and the Data Wrangler plugin for VSCode[1] has quickly risen to the top as a quick and easy way for me for inspect and prototype transforms to parquet files and CSVs.<p>I am submitting this question to HN to perhaps collect more diverse perspectives than I could get from language models and search engines, given the audience here. I have tried to lean into using Visidata[2] a bit, but it has been a steep learning curve so far, and it hasn't exactly been easy to take visidata transformations and apply them to our python codebase.<p>1: https://devblogs.microsoft.com/python/data-wrangler-release/<p>2: https://www.visidata.org/</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43928176">https://news.ycombinator.com/item?id=43928176</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 08 May 2025 16:53:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=43928176</link><dc:creator>dwrodri</dc:creator><comments>https://news.ycombinator.com/item?id=43928176</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43928176</guid></item></channel></rss>