<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: apaprocki</title><link>https://news.ycombinator.com/user?id=apaprocki</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 06 Apr 2026 09:51:12 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=apaprocki" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by apaprocki in "Artemis II Launch Day Updates"]]></title><description><![CDATA[
<p>You should always seek out the best. From watching lots of Everyday Astronaut streams over the years, I knew the stream would be the best live experience because they care about and focus on the production. NASA cares and focuses on the rocket, astronauts, mission. I'm fine with that.</p>
]]></description><pubDate>Thu, 02 Apr 2026 00:02:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47608310</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=47608310</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47608310</guid></item><item><title><![CDATA[New comment by apaprocki in "Cloudflare flags archive.today as "C&C/Botnet"; no longer resolves via 1.1.1.2"]]></title><description><![CDATA[
<p>And for parents: 1.1.1.3 blocks adult content :)</p>
]]></description><pubDate>Sun, 22 Mar 2026 17:59:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=47480239</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=47480239</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47480239</guid></item><item><title><![CDATA[New comment by apaprocki in "Temporal: The 9-year journey to fix time in JavaScript"]]></title><description><![CDATA[
<p>I feel like those not involved in this space might not realize so much stuff that benefits the entire web/world comes from volunteers like anba and companies outside the usual browser vendors. Whether you’re an individual contributor or you want to push your employer to contribute or let you contribute, the best time to get involved is always now. We owe anba a big one. Thank you!!</p>
]]></description><pubDate>Thu, 12 Mar 2026 13:35:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=47350346</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=47350346</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47350346</guid></item><item><title><![CDATA[New comment by apaprocki in "Temporal: A nine-year journey to fix time in JavaScript"]]></title><description><![CDATA[
<p>Yes, please try! One of the main motivations for doing all this work is to slim down both the amount of code that has to be delivered and executed by providing everything that's needed by the platform. In addition, you're slimming the potential bug/attack surface as well, which is always nice.</p>
]]></description><pubDate>Wed, 11 Mar 2026 21:08:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=47341882</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=47341882</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47341882</guid></item><item><title><![CDATA[New comment by apaprocki in "Temporal: A nine-year journey to fix time in JavaScript"]]></title><description><![CDATA[
<p>Depending on the situation, the data lives either within the browser or within the OS. Chrome releases ship versions of tzdata that correspond to the version of tzdata shipped with the ICU it uses, and they do backport updates to prior Chrome releases within a certain window. Apple has a sideband way of deploying tzdata to all devices that doesn't appear via the normal Software Update mechanism. So it all depends on which particular OS/browser combo you're interested in and the decisions those owners made.</p>
]]></description><pubDate>Wed, 11 Mar 2026 21:05:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=47341833</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=47341833</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47341833</guid></item><item><title><![CDATA[New comment by apaprocki in "Temporal: The 9-year journey to fix time in JavaScript"]]></title><description><![CDATA[
<p>I would characterize it more as Joda likely informed Moment.js, which better informed TC39 because it was within the JavaScript ecosystem. As we discussed in plenary today when achieving consensus, every programming language that implements or revamps its date time primitives has the benefit of all the prior art that exists at that instant. TC39 always casts a wide net to canvas what other ecosystems do, but isn't beholden to follow in their footsteps and achieves consensus on what is best for JavaScript. So my view is this more represents what the committee believes is the most complete implementation of such an API that an assembled group of JavaScript experts could design over 9 years and finalize in 2026.</p>
]]></description><pubDate>Wed, 11 Mar 2026 16:20:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47337598</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=47337598</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47337598</guid></item><item><title><![CDATA[New comment by apaprocki in "Temporal: The 9-year journey to fix time in JavaScript"]]></title><description><![CDATA[
<p>Node 26! Only a matter of time... :)</p>
]]></description><pubDate>Wed, 11 Mar 2026 15:55:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=47337263</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=47337263</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47337263</guid></item><item><title><![CDATA[New comment by apaprocki in "Ghostmd: Ghostty but for Markdown Notes"]]></title><description><![CDATA[
<p>Welcome to the club. It’s like when people say “Bloomberg Terminal for X”. You just can’t really say anything because everyone knows it’s not Ghostty, based on it or will ever be it, but it’s about the vibe… and if you then chase after them, it only serves as free advertising :)</p>
]]></description><pubDate>Sun, 08 Mar 2026 11:52:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47296600</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=47296600</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47296600</guid></item><item><title><![CDATA[A First Look at the Future of the Bloomberg Terminal in the Age of Agentic AI]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.bloomberg.com/professional/insights/press-announcement/meet-askb-a-first-look-at-the-future-of-the-bloomberg-terminal-in-the-age-of-agentic-ai/">https://www.bloomberg.com/professional/insights/press-announcement/meet-askb-a-first-look-at-the-future-of-the-bloomberg-terminal-in-the-age-of-agentic-ai/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47122702">https://news.ycombinator.com/item?id=47122702</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 23 Feb 2026 14:21:28 +0000</pubDate><link>https://www.bloomberg.com/professional/insights/press-announcement/meet-askb-a-first-look-at-the-future-of-the-bloomberg-terminal-in-the-age-of-agentic-ai/</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=47122702</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47122702</guid></item><item><title><![CDATA[New comment by apaprocki in "Ask HN: DDD was a great debugger – what would a modern equivalent look like?"]]></title><description><![CDATA[
<p>Check out Binary Ninja if you haven’t. Especially if you have large binaries!</p>
]]></description><pubDate>Mon, 26 Jan 2026 08:00:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=46762978</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46762978</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46762978</guid></item><item><title><![CDATA[New comment by apaprocki in "Some C habits I employ for the modern day"]]></title><description><![CDATA[
<p>I’m simply stating how actual Gtk is written:<p><a href="https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtklabel.h#L39" rel="nofollow">https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtklabel....</a></p>
]]></description><pubDate>Sun, 25 Jan 2026 19:54:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=46757550</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46757550</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46757550</guid></item><item><title><![CDATA[New comment by apaprocki in "Jurassic Park - Tablet device on Nedry's desk? (2012)"]]></title><description><![CDATA[
<p>Completely possible. In the early 90s everyone was buying SGI Indys to run Apache on and put the cool “Powered by SGI” badge on their site. I admin’d a local ISP then and that Indy was on my desk and IRIX was my daily driver. Their UI just felt leagues beyond other commercial Unices of the time, so rather than being plausible, I’d expect it due to the lab/science/dataviz aspect.<p>edit: Just last night a friend was watching MiB and Tommy Lee Jones looks at a Motif UI. It was obviously SGI but it was IRIS ViewKit and not the later Interactive Development Environment. Narrowed down likely creator being Van Ling from Banned From The Ranch Entertainment. If you’re out there…</p>
]]></description><pubDate>Sun, 25 Jan 2026 19:44:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=46757456</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46757456</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46757456</guid></item><item><title><![CDATA[New comment by apaprocki in "Some C habits I employ for the modern day"]]></title><description><![CDATA[
<p>Yes, using the same Gtk example, the way you’d forward declare GtkLabel without including gtklabel.h in your header would be:<p><pre><code>    struct _GtkLabel;
    typedef struct _GtkLabel GtkLabel;
    // Use GtkLabel* in declarations</code></pre></p>
]]></description><pubDate>Sat, 24 Jan 2026 15:45:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=46744517</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46744517</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46744517</guid></item><item><title><![CDATA[New comment by apaprocki in "Some C habits I employ for the modern day"]]></title><description><![CDATA[
<p>`-Wvla` Friends don’t let friends VLA :)</p>
]]></description><pubDate>Sat, 24 Jan 2026 15:35:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=46744432</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46744432</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46744432</guid></item><item><title><![CDATA[New comment by apaprocki in "Some C habits I employ for the modern day"]]></title><description><![CDATA[
<p>Sure, the parent was commenting more about the capability existing in Ada in contrast to C. Ada variable length local variables are basically C alloca(). The interesting part in Ada is returning variable length types from functions and having them automatically managed via the “secondary stack”, which is a fixed size buffer in embedded/constrained environments. The compiler takes care of most of the dirty work for you.<p>We mainly use C++, not C, and we do this with polymorphic allocators. This is our main allocator for local stack:<p><a href="https://bloomberg.github.io/bde-resources/doxygen/bde_api_prod/group__bdlma__localsequentialallocator.html" rel="nofollow">https://bloomberg.github.io/bde-resources/doxygen/bde_api_pr...</a><p>… or this for supplying a large external static buffer:<p><a href="https://bloomberg.github.io/bde-resources/doxygen/bde_api_prod/group__bdlma__bufferedsequentialallocator.html" rel="nofollow">https://bloomberg.github.io/bde-resources/doxygen/bde_api_pr...</a></p>
]]></description><pubDate>Sat, 24 Jan 2026 15:31:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=46744390</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46744390</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46744390</guid></item><item><title><![CDATA[New comment by apaprocki in "Some C habits I employ for the modern day"]]></title><description><![CDATA[
<p>You can allocate dynamically on the stack in C as well. Every compiler will give you some form of alloca().</p>
]]></description><pubDate>Sat, 24 Jan 2026 10:08:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=46742333</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46742333</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46742333</guid></item><item><title><![CDATA[New comment by apaprocki in "Some C habits I employ for the modern day"]]></title><description><![CDATA[
<p>FWIW, Coverity (maybe others) has a checker that creates an error if it detects tagged union access without first checking the tag. It’s not as strict as enforcing which fields belong to which tag values, but it can still be useful. I’d much rather have what was proposed in the GCC bug!</p>
]]></description><pubDate>Sat, 24 Jan 2026 09:39:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=46742230</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46742230</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46742230</guid></item><item><title><![CDATA[New comment by apaprocki in "Some C habits I employ for the modern day"]]></title><description><![CDATA[
<p>In C++ you would have a protected constructor and related friend utility class to do the parsing, returning any error code, and constructing the thing, populating an optional, shared_ptr, whatever… don’t make constructors fallible.</p>
]]></description><pubDate>Sat, 24 Jan 2026 09:33:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=46742202</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46742202</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46742202</guid></item><item><title><![CDATA[New comment by apaprocki in "Some C habits I employ for the modern day"]]></title><description><![CDATA[
<p>You can play tricks if you’re willing to compromise on the ABI:<p><pre><code>    typedef struct foo_ foo;
    enum { FOO_SIZE = 64 };
    foo *foo_init(void *p, size_t sz);
    void foo_destroy(foo *p);
    #define FOO_ALLOCA() \
      foo_init(alloca(FOO_SIZE), FOO_SIZE)
</code></pre>
Implementation (size checks, etc. elided):<p><pre><code>    struct foo_ {
        uint32_t magic;
        uint32_t val;
    };
    
    foo *foo_init(void *p, size_t sz) {
        foo *f = (foo *)p;
        f->magic = 1234;
        f->val = 0;
        return f;
    }
</code></pre>
Caller:<p><pre><code>    foo *f = FOO_ALLOCA();
    // Can’t see inside
    // APIs validate magic</code></pre></p>
]]></description><pubDate>Sat, 24 Jan 2026 09:19:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=46742156</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46742156</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46742156</guid></item><item><title><![CDATA[New comment by apaprocki in "Some C habits I employ for the modern day"]]></title><description><![CDATA[
<p>I got the impression the author was implying because CHAR_BIT is enforced to be 8 that uint8_t and char are therefore equivalent, but they are different types with very different rules.<p>E.g. `char <i>p = (char </i>)&astruct` may violate strict aliasing but `uint8_t <i>p = (uint8_t </i>)&astruct` is guaranteed legal. Then modulo, traps, padding, overflow, promotion, etc.</p>
]]></description><pubDate>Sat, 24 Jan 2026 08:56:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=46742092</link><dc:creator>apaprocki</dc:creator><comments>https://news.ycombinator.com/item?id=46742092</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46742092</guid></item></channel></rss>