<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: binarycoffee</title><link>https://news.ycombinator.com/user?id=binarycoffee</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 14 Sep 2026 13:55:20 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=binarycoffee" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by binarycoffee in "Put a ring on it: a lock-free MPMC ring buffer"]]></title><description><![CDATA[
<p>I hope you won't mind my picking your brain: which MPSC ring buffer implementations did you find that does drop old items when full? I could only found implementations that are basically re-purposed MPMC, or that cannot deal with non-POD data (seqlock-based).</p>
]]></description><pubDate>Tue, 16 Dec 2025 17:38:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=46291521</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=46291521</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46291521</guid></item><item><title><![CDATA[New comment by binarycoffee in "Lox – Oxidized Astrodynamics – A safe, ergonomic astrodynamics library"]]></title><description><![CDATA[
<p>LOX is apparently MPL, so a bit easier to work with than Nyx' AGPL, but still at odd with the MIT/Apache2 combo that has become the norm in the Rust world.</p>
]]></description><pubDate>Thu, 20 Feb 2025 17:19:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=43117468</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=43117468</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43117468</guid></item><item><title><![CDATA[New comment by binarycoffee in "Lox – Oxidized Astrodynamics – A safe, ergonomic astrodynamics library"]]></title><description><![CDATA[
<p>Just curious, what kind of simulations do you work on (mission design?) and what libraries would you use in C++?</p>
]]></description><pubDate>Thu, 20 Feb 2025 17:15:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=43117418</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=43117418</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43117418</guid></item><item><title><![CDATA[New comment by binarycoffee in "Ask HN: Who is hiring? (February 2025)"]]></title><description><![CDATA[
<p>Asynchronics | Rust developer | ONSITE or hybrid (2+days/week) | Full time | Warsaw, PL<p>We are a young startup building digital twinning solutions for spacecraft validation & verification.<p>The ideal candidate would have a demonstrated track record with Rust or possibly C++/Haskell/*ML, a passion for space and a background in physics or a related field of engineering.<p>Please apply at: <a href="https://www.linkedin.com/jobs/view/4129163803/" rel="nofollow">https://www.linkedin.com/jobs/view/4129163803/</a>
or email us at office@[company name].com</p>
]]></description><pubDate>Mon, 03 Feb 2025 17:25:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=42920557</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=42920557</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42920557</guid></item><item><title><![CDATA[New comment by binarycoffee in "Using Pandoc and Typst to Produce PDFs"]]></title><description><![CDATA[
<p>I can see why someone would prefer Typst over LaTeX when the source is written in Typst or LaTeX, but what are the advantages if your source document is in Markdown? Is there anything else beyond the (presumably) smaller install size of Typst?</p>
]]></description><pubDate>Fri, 29 Nov 2024 09:43:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=42272607</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=42272607</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42272607</guid></item><item><title><![CDATA[New comment by binarycoffee in "I was banned from the hCaptcha accessibility account for not being blind (2023)"]]></title><description><![CDATA[
<p>Not a solution.
Verification emails alone got a small web site I set up to be blacklisted within days. Most of the unwilling recipients presumably couldn't understand the language the verification email was written in and reported it as spam.</p>
]]></description><pubDate>Mon, 18 Nov 2024 15:57:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=42173597</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=42173597</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42173597</guid></item><item><title><![CDATA[New comment by binarycoffee in "Show HN: Whirlwind – Async concurrent hashmap for Rust"]]></title><description><![CDATA[
<p>The producers of an MPSC queue may use an AtomicWaker::wake to signal to the consumer that a new item is ready. In this case all wake-ups are necessary (not spurious).</p>
]]></description><pubDate>Wed, 06 Nov 2024 00:23:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=42056410</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=42056410</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42056410</guid></item><item><title><![CDATA[New comment by binarycoffee in "Show HN: Whirlwind – Async concurrent hashmap for Rust"]]></title><description><![CDATA[
<p>Another offender is AtomicWaker [1] which does the same on contention.<p>[1] <a href="https://docs.rs/atomic-waker/latest/atomic_waker/" rel="nofollow">https://docs.rs/atomic-waker/latest/atomic_waker/</a></p>
]]></description><pubDate>Tue, 05 Nov 2024 22:12:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=42055649</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=42055649</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42055649</guid></item><item><title><![CDATA[New comment by binarycoffee in "Show HN: Rust Web Framework"]]></title><description><![CDATA[
<p><a href="https://crates.io/crates/x" rel="nofollow">https://crates.io/crates/x</a></p>
]]></description><pubDate>Wed, 23 Oct 2024 11:49:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=41924003</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=41924003</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41924003</guid></item><item><title><![CDATA[New comment by binarycoffee in "Approximating sum types in Python with Pydantic"]]></title><description><![CDATA[
<p>I needed to reflect Rust enums and went a bit further with that approach. All variants are wrapped in a decorated class, where the decorator automatically computes the union type and adds de/serialization hooks for `cattrs`.<p><pre><code>    @enumclass
    class MyEnum:
        class UnitLikeVariant(Variant0Arg): ...
    
        class TupleLikeVariant(Variant2Arg[int, str]): ...
    
        @dataclass
        class StructLikeVariant:
            foo: float
            bar: int

        # The following class variable is automatically generated:
        #
        # type = UnitLikeVariant | TupleLikeVariant | StructLikeVariant
</code></pre>
where the `VariantXArg` classes are predefined.</p>
]]></description><pubDate>Thu, 15 Aug 2024 08:19:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=41254022</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=41254022</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41254022</guid></item><item><title><![CDATA[New comment by binarycoffee in "Jiff: Datetime library for Rust"]]></title><description><![CDATA[
<p>TBH I consider the C++ `std::chrono` as the worse possible design.
`tai_clock::now` does not actually take into account leap seconds. Unless it does, who knows ("Implementations may use a more accurate value of TAI time.").
Likewise, `tai_clock::from_utc/to_utc` does not correct for leap second. It just translates the UTC epoch to the TAI 1958 epoch.<p>I found Hifitime to be very opinionated and give a false sense of security due to its automatic computation of leap seconds based on historical tables. Yes, leap seconds are announced some ~6 month in advance, but what if you don't update regularly the library? Or if you can't because it is deployed on an embedded system?<p>In the end I wrote my own minimalistic TAI timestamp library [1] and made the conscious decision to let the user take the responsibility to deal with leap seconds in UTC conversion.<p>[1] <a href="https://github.com/asynchronics/tai-time">https://github.com/asynchronics/tai-time</a></p>
]]></description><pubDate>Mon, 22 Jul 2024 14:19:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=41034706</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=41034706</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41034706</guid></item><item><title><![CDATA[New comment by binarycoffee in "Timekeepers may subtract a second in 2029 as planet spins slightly faster"]]></title><description><![CDATA[
<p>Oh yes, absolutely, GP got it backward and I went along with it...</p>
]]></description><pubDate>Thu, 28 Mar 2024 07:05:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=39848469</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=39848469</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39848469</guid></item><item><title><![CDATA[New comment by binarycoffee in "Timekeepers may subtract a second in 2029 as planet spins slightly faster"]]></title><description><![CDATA[
<p>While this doesn't change the essence of your claim, the problem is not with UTC timestamps but with Unix timestamps. UTC timestamps (HH:MM:SS) are actually unique because the extra second inserted is assigned the numeral 60. Unix timestamps do, however, repeat when a leap second is inserted.</p>
]]></description><pubDate>Wed, 27 Mar 2024 21:38:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=39844912</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=39844912</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39844912</guid></item><item><title><![CDATA[New comment by binarycoffee in "Ways to break your systems code using volatile (2010)"]]></title><description><![CDATA[
<p>I have always wondered about that.<p>If optimizing repeated atomic loads is indeed allowed, waiting for a signal by spinning on an atomic load could loop forever. Yet I have the feeling most people consider such code to be valid. Are they wrong?</p>
]]></description><pubDate>Fri, 06 Oct 2023 09:25:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=37788663</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=37788663</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37788663</guid></item><item><title><![CDATA[New comment by binarycoffee in "Interfaces for prototyping hardware"]]></title><description><![CDATA[
<p>While I have frequently seen LabView used for instrument/hardware control, I admit I have never seen people use Simulink for that purpose. Is there a popular Simulink/Matlab add-on for that?</p>
]]></description><pubDate>Sun, 03 Sep 2023 21:33:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=37374830</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=37374830</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37374830</guid></item><item><title><![CDATA[New comment by binarycoffee in "A physicist who bets that gravity can’t be quantized"]]></title><description><![CDATA[
<p>Sabine Hossenfelder apparently does this [1, 2] for $50/20min.<p>[1] <a href="http://backreaction.blogspot.com/p/talk-to-physicist_27.html" rel="nofollow noreferrer">http://backreaction.blogspot.com/p/talk-to-physicist_27.html</a><p>[2] <a href="https://aeon.co/ideas/what-i-learned-as-a-hired-consultant-for-autodidact-physicists" rel="nofollow noreferrer">https://aeon.co/ideas/what-i-learned-as-a-hired-consultant-f...</a></p>
]]></description><pubDate>Mon, 10 Jul 2023 16:52:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=36669102</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=36669102</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36669102</guid></item><item><title><![CDATA[New comment by binarycoffee in "ESA’s Juice lifts off on quest to discover secrets of Jupiter’s icy moons"]]></title><description><![CDATA[
<p>One may count electric propulsion as a "better" propulsion system, but sadly it was a poor fit for Juice due to the very tight power budget.<p>Even with those gigantic solar arrays, energy management on Juice is extremely challenging. Once in the vicinity of Jupiter, the spacecraft will be powered by less than 4% of the solar flux it receives in earth orbit.</p>
]]></description><pubDate>Fri, 14 Apr 2023 22:14:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=35575504</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=35575504</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35575504</guid></item><item><title><![CDATA[New comment by binarycoffee in "BeaglePlay from BeagleBoard brings fun to building with computers"]]></title><description><![CDATA[
<p>Not only is the instruction set simple, but the clock-per-instruction cost is deterministic, so assembly code is ideal for real-time I/O. Just like GP, we found that we could often use a PRU in place of an FPGA and dramatically cut development cost (this was for very small production series).<p>One use case for C is communication with the CPU (remoteproc stuff). We commonly had one PRU handle CPU communication with trivial C code while another PRU on the same PRU subsystem was coded with assembly to handle real-time I/O.</p>
]]></description><pubDate>Thu, 09 Mar 2023 09:35:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=35079683</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=35079683</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35079683</guid></item><item><title><![CDATA[New comment by binarycoffee in "NASA and Open-Source Software"]]></title><description><![CDATA[
<p>I you think the NASA Open Source License is bad, look at the default license for non-commercial, ESA-funded software [1].<p>The territorial limitations effectively prevents any form of open distribution, yet the license is open enough to remove most commercial incentive for maintenance and further development: a perfect recipe to make software instant abandonware upon release.<p>[1] <a href="https://essr.esa.int/license/european-space-agency-community-license-v2-4-permissive-type-3" rel="nofollow">https://essr.esa.int/license/european-space-agency-community...</a></p>
]]></description><pubDate>Fri, 17 Feb 2023 09:40:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=34832730</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=34832730</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34832730</guid></item><item><title><![CDATA[New comment by binarycoffee in "Pandoc 3.0"]]></title><description><![CDATA[
<p>As others wrote, Pandoc is Haskell so it compiles to a fairly efficient binary.<p>But more importantly, unlike the various Markdown flavors or AsciiDoc, it is incredibly extensible thanks to the combination of custom filters and the possibility to add HTML classes and attributes. One can write filters to leverage the class/attribute information and perform transformations at the AST level, which basically lets you define a DSL with an arbitrary number of custom elements.<p>I wrote a collection of filters for the publication of a large online legal playbook. Not only did Pandoc make it possible to introduce different kind of custom elements that don't exist in plain Markdown or AsciiDoc, but by using different filters it was possible to use a single Markdown source to generate both the book and various summaries such as a list of examples, a list of civil code clauses etc.
I don't know Haskell that well so I used Rust for the filters, but that worked very well.<p>Pandoc is IMO a very underrated tool.</p>
]]></description><pubDate>Thu, 19 Jan 2023 12:26:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=34439589</link><dc:creator>binarycoffee</dc:creator><comments>https://news.ycombinator.com/item?id=34439589</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34439589</guid></item></channel></rss>