<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: wucke13</title><link>https://news.ycombinator.com/user?id=wucke13</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 05 Apr 2026 13:03:29 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=wucke13" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by wucke13 in "Why did containers happen?"]]></title><description><![CDATA[
<p>My take: containers forced devepopers to declare various aspects of the application in a standardized, opinioated way:<p>- Persistant state? Must declare a volume.
- IO with external services? Must declare the ports (and maybe addresses).
- Configurable parameters? Must declare some env variables.
- Trasitive dependecies? Must declare them, but using a mechanism of your choosing (e.g. via the package manager of your base image distro).<p>Separation of state (as in persistency) and application (as in binaries, assets) makes updates easy. Backups also.<p>Having most all IO visible and explicit simplifies operation and integration.<p>And a single, (too?!?) simple config mechanism increases reusability, by enabling e.g. lightweight tailoring of generic application service containers (such as mariadb).<p>Together this bunch of forced, yet leaky abstractions is just good enough to foster immense reuse & composability on to a plethora of applications, all while allowing  to treat them almost entirely like blackboxes. IMHO that is why OCI containers became this big, compared to other virtualization and (application-) cuntainer technologies.</p>
]]></description><pubDate>Mon, 13 Oct 2025 23:40:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=45574532</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45574532</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45574532</guid></item><item><title><![CDATA[New comment by wucke13 in "A comparison of Ada and Rust, using solutions to the Advent of Code"]]></title><description><![CDATA[
<p>For the seL4 proofs a subset of C was formalized, for example.<p>(Already mentioned) CakeML would be another example, together maybe with its Pancake sibling.<p>Also: WebAssembly!</p>
]]></description><pubDate>Sun, 05 Oct 2025 11:21:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=45480675</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45480675</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45480675</guid></item><item><title><![CDATA[New comment by wucke13 in "A comparison of Ada and Rust, using solutions to the Advent of Code"]]></title><description><![CDATA[
<p>That's pohibitively expensive in the general case when external input is used and/or when arithmetic is used on the values (main differerence to sum-types).</p>
]]></description><pubDate>Sun, 05 Oct 2025 11:13:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=45480636</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45480636</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45480636</guid></item><item><title><![CDATA[New comment by wucke13 in "A comparison of Ada and Rust, using solutions to the Advent of Code"]]></title><description><![CDATA[
<p>I know quite some people in the safety/aviation domain that kind of dislike the subranges, as it inserts run-time checks that are not easily traceable to source code, thus escaping the trifecta of requirements/tests/source-code (which all must be traceable/covered by each other).<p>Weirdly, when going through the higher assurance levels in aviation, defensive programming becomes <i>more</i> costly, because it complicates the satisfaction of assurance objectives. SQLite (whiches test suite reaches MC/DC coverage which is the most rigorous coverage criterion asked in aviation) has a nice paragraph on the friction between MC/DC and defensive programming:<p><a href="https://www.sqlite.org/testing.html#tension_between_fuzz_testing_and_100_mc_dc_testing" rel="nofollow">https://www.sqlite.org/testing.html#tension_between_fuzz_tes...</a></p>
]]></description><pubDate>Sat, 04 Oct 2025 19:00:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=45475739</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45475739</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45475739</guid></item><item><title><![CDATA[New comment by wucke13 in "A comparison of Ada and Rust, using solutions to the Advent of Code"]]></title><description><![CDATA[
<p>Neither the Rust nor the Ada spec is formal, in the sense of consumable by a theorem prover. AFAIK for Ada Spark, there is of course assumptions on the language semantics built-in to Spark, but: these are nowhere coherently written down in a truly formal (as in machine-readable) spec.</p>
]]></description><pubDate>Sat, 04 Oct 2025 18:56:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=45475708</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45475708</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45475708</guid></item><item><title><![CDATA[New comment by wucke13 in "Boeing has started working on a 737 MAX replacement"]]></title><description><![CDATA[
<p>I think what parent was about is open vs. closed loop control, not fly-by-wire or not. Both their and your point stand of course.</p>
]]></description><pubDate>Tue, 30 Sep 2025 20:36:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=45430903</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45430903</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45430903</guid></item><item><title><![CDATA[New comment by wucke13 in "Zero ASIC releases Wildebeest, the highest performance FPGA synthesis tool"]]></title><description><![CDATA[
<p>I have dedicated a large chunk of my (arguably short) professional career on improving upon this, mostly in the safety critical software domain. What was your experience back then, what made you leave ultimately, and what do you do now?</p>
]]></description><pubDate>Mon, 29 Sep 2025 09:29:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=45411813</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45411813</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45411813</guid></item><item><title><![CDATA[New comment by wucke13 in "The Weird Concept of Branchless Programming"]]></title><description><![CDATA[
<p>Rust in particular with miri is quite impressive at catching them. You just run your testcases via<p><pre><code>    cargo miri run
</code></pre>
And if your code actually touches UB, mirei will most likely point out exactly where and why.</p>
]]></description><pubDate>Mon, 29 Sep 2025 07:31:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=45411183</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45411183</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45411183</guid></item><item><title><![CDATA[New comment by wucke13 in "RedoxFS is the default filesystem of Redox OS, inspired by ZFS"]]></title><description><![CDATA[
<p>It doesn't necessarily, but it can. Genode/SculptOS is kind of a microkernel OS framework, and it can use seL4 as the kernel.<p>Here is a talk about that porting effort:<p><a href="https://m.youtube.com/watch?v=N624i4X1UDw" rel="nofollow">https://m.youtube.com/watch?v=N624i4X1UDw</a></p>
]]></description><pubDate>Fri, 26 Sep 2025 09:22:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=45384500</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45384500</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45384500</guid></item><item><title><![CDATA[New comment by wucke13 in "SkiftOS: A hobby OS built from scratch using C/C++ for ARM, x86, and RISC-V"]]></title><description><![CDATA[
<p>Gernot Heiser would strongly disagree with you on the last one :D</p>
]]></description><pubDate>Sat, 13 Sep 2025 12:31:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=45231523</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=45231523</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45231523</guid></item><item><title><![CDATA[New comment by wucke13 in "Hyundai wants loniq 5 customers to pay for cybersecurity patch in baffling move"]]></title><description><![CDATA[
<p>I'm not so sure, I thought "patch" originated from hole punching cards to program stuff. A software patch was literally a patch of tape that hides an errorneously punched hole in such a card.<p>The term patch-cable seems to be way younger.</p>
]]></description><pubDate>Sun, 17 Aug 2025 08:36:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=44929958</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=44929958</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44929958</guid></item><item><title><![CDATA[New comment by wucke13 in "Two Birds with One Tone: I/Q Signals and Fourier Transform"]]></title><description><![CDATA[
<p><a href="https://www.pe0sat.vgnet.nl/sdr/iq-data-explained/" rel="nofollow">https://www.pe0sat.vgnet.nl/sdr/iq-data-explained/</a><p>This is an excellent introduction to the concept and also to the why complex numbers are used to represent signal samples.</p>
]]></description><pubDate>Wed, 30 Jul 2025 06:07:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=44731270</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=44731270</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44731270</guid></item><item><title><![CDATA[New comment by wucke13 in "Zig's New Async I/O"]]></title><description><![CDATA[
<p>Is this in effect introducing algebraic effects by concept? E.g. the io passed in is an effect handler, and it is the effect handler's choice whether to perform stack switching (or other means of non-blocking waiting) to enable asynchronicity?</p>
]]></description><pubDate>Sun, 13 Jul 2025 09:05:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=44548730</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=44548730</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44548730</guid></item><item><title><![CDATA[New comment by wucke13 in "EasyTier – P2P mesh VPN written in Rust using Tokio"]]></title><description><![CDATA[
<p>This seems to go into a similar direction like ZeroTier, but actually open source. There is almost no discussion of this in the western hemisphere, but I'd be interested what people think about it.</p>
]]></description><pubDate>Thu, 29 May 2025 12:25:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=44125335</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=44125335</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44125335</guid></item><item><title><![CDATA[EasyTier – P2P mesh VPN written in Rust using Tokio]]></title><description><![CDATA[
<p>Article URL: <a href="https://easytier.cn/en/">https://easytier.cn/en/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=44125334">https://news.ycombinator.com/item?id=44125334</a></p>
<p>Points: 158</p>
<p># Comments: 51</p>
]]></description><pubDate>Thu, 29 May 2025 12:25:19 +0000</pubDate><link>https://easytier.cn/en/</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=44125334</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44125334</guid></item><item><title><![CDATA[New comment by wucke13 in "Rost – Rust Programming in German"]]></title><description><![CDATA[
<p>When I first read the examples, besides my laughter, I felt a similar disconnect im the semantics of the chosen German words. Thank you for you suggestions, I agree with all of them, they are better indeed IMHO.</p>
]]></description><pubDate>Thu, 27 Mar 2025 13:16:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=43493298</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=43493298</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43493298</guid></item><item><title><![CDATA[New comment by wucke13 in "Bayleaf · Building a low-profile wireless split keyboard"]]></title><description><![CDATA[
<p>I think ZMK (available on the Nice!Nano) does exactly that already?</p>
]]></description><pubDate>Tue, 04 Mar 2025 17:27:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=43257610</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=43257610</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43257610</guid></item><item><title><![CDATA[New comment by wucke13 in "A CIA informant stopped Taiwan from developing nuclear weapons"]]></title><description><![CDATA[
<p>Would the Paris Climate Agreement not qualify as a treaty?</p>
]]></description><pubDate>Sun, 02 Mar 2025 23:56:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=43236661</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=43236661</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43236661</guid></item><item><title><![CDATA[New comment by wucke13 in "Please Commit More Blatant Academic Fraud (2021)"]]></title><description><![CDATA[
<p>Tangentially relevant: Gernots list of benchmarking crimes.<p><a href="https://gernot-heiser.org/benchmarking-crimes.html" rel="nofollow">https://gernot-heiser.org/benchmarking-crimes.html</a></p>
]]></description><pubDate>Fri, 21 Feb 2025 08:04:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=43125202</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=43125202</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43125202</guid></item><item><title><![CDATA[New comment by wucke13 in "Rust Is Eating JavaScript (2023)"]]></title><description><![CDATA[
<p>> you can pass integers and pointers around<p>No, not even that (the second thing, passing pointers)! WASM has a different address space (starting from 0), effectively indexing into the WASM module's linear memory. A pointer/reference from the outside env can not be dereferenced from within the WASM bytecode.<p>The multiple linear memory proposal can circumvent this (allowing you to build something somewhat similar to a simple MMU/address translation engine), but language support for that feature is sparse (AFAIK, Rust does not expose any way to access a different than the default linear memory for example).<p>There is various hacks around it, but sharing memory block-wise between WASM and outside env is involved already.</p>
]]></description><pubDate>Sun, 16 Feb 2025 15:47:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=43068909</link><dc:creator>wucke13</dc:creator><comments>https://news.ycombinator.com/item?id=43068909</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43068909</guid></item></channel></rss>