<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: joshkel</title><link>https://news.ycombinator.com/user?id=joshkel</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 19 May 2026 00:57:01 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=joshkel" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by joshkel in "Elon Musk has lost his lawsuit against Sam Altman and OpenAI"]]></title><description><![CDATA[
<p><a href="https://localnewsmatters.org/2026/05/16/musk-v-altman-week-3-analysis-jurors-face-tangled-questions-of-trust-timing-and-ai/" rel="nofollow">https://localnewsmatters.org/2026/05/16/musk-v-altman-week-3...</a> has a good explanation of the legalities:<p>"If the jury determines that at any time before those dates, Musk either knew — or had or should have known — that he had a claim that he could bring, then his suit was brought too late. The consequence of being too late is swift and absolute. If the lawsuit was filed late for a particular claim, that claim is out of the case; if it was too late for all of Musk’s claims, the lawsuit is over."<p>That's where the question of fact (i.e., the requirement for a jury decision) came in: "What was the statute of limitations?" is a question of law, but "When should Musk have known that OpenAI was moving too much toward for-profit?" is a question of fact (and, here, determines whether the statute of limitations applies).</p>
]]></description><pubDate>Mon, 18 May 2026 19:19:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=48184198</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=48184198</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48184198</guid></item><item><title><![CDATA[New comment by joshkel in "Probabilistic engineering and the 24-7 employee"]]></title><description><![CDATA[
<p>Reading this article has given me a profound realization: As a software user, I don't want the products I use to ship new features at "three, five, or ten times what they shipped a year ago," at the expense of "probabilistic" stability and reliability.<p>I want software that works.<p>Yet the economics of the software industry, and perhaps the economy as a whole, seem to inexorably push toward the former.</p>
]]></description><pubDate>Fri, 17 Apr 2026 15:09:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=47806779</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=47806779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47806779</guid></item><item><title><![CDATA[New comment by joshkel in "Node.js needs a virtual file system"]]></title><description><![CDATA[
<p>Considering the many hundreds of technical comments over at the PR (<a href="https://github.com/nodejs/node/pull/61478" rel="nofollow">https://github.com/nodejs/node/pull/61478</a>), the 8 reviewers thanked by name in the article, and the stellar reputations of those involved, seems likely.</p>
]]></description><pubDate>Tue, 17 Mar 2026 22:10:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=47419041</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=47419041</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47419041</guid></item><item><title><![CDATA[New comment by joshkel in "TypeScript 6.0 RC"]]></title><description><![CDATA[
<p>Appreciate the reminder (the lack of SemVer has thrown me in the past). In this case, 6.0 is a bigger change than normal:<p>> TypeScript 6.0 arrives as a significant transition release, designed to prepare developers for TypeScript 7.0, the upcoming native port of the TypeScript compiler. While TypeScript 6.0 maintains full compatibility with your existing TypeScript knowledge and continues to be API compatible with TypeScript 5.9, this release introduces a number of breaking changes and deprecations that reflect the evolving JavaScript ecosystem and set the stage for TypeScript 7.0.</p>
]]></description><pubDate>Fri, 06 Mar 2026 23:56:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=47282729</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=47282729</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47282729</guid></item><item><title><![CDATA[New comment by joshkel in "Date is out, Temporal is in"]]></title><description><![CDATA[
<p>The main selling point for me is that it has proper data times for dates, times, etc.<p>Most date/time libraries that I've seen have a only single "date/time" or "timestamp" type, then they have to do things like representing "January 13 2026" as "January 13 2026 at midnight local time" or "January 13 2026 at midnight UTC."<p>Temporal has full-fledged data types representing the different concepts: an Instant is a point in time. A PlainDate is just a date. A PlainTime is just a time. ("We eat lunch at 11am each day.") A ZonedDateTime is an Instant in a known time zone. Etc.<p>Temporal draws a lot of inspiration from Java's Joda-Time (which also went on to inspire .NET's Noda Time, Java's official java.time API, and JavaScript's js-joda). This is helpful; it means that some concepts can transfer if you're working in other languages. And, more importantly, it means that it benefits from a lot of careful thought on how to ergonomically and effectively represent date/time complexities.</p>
]]></description><pubDate>Tue, 13 Jan 2026 14:42:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=46601590</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=46601590</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46601590</guid></item><item><title><![CDATA[New comment by joshkel in "FFmpeg to Google: Fund us or stop sending bugs"]]></title><description><![CDATA[
<p>In a follow-up tweet, Mark Atwood eloborates: "Amazon was very carefully complying with the licenses on FFmpeg.  One of my jobs there was to make sure the company was doing so. Continuing to make sure the company was was often the reason I was having a meeting like that inside the company."<p>I interpret this as meaning there was an implied "if you screw this up" at the end of "they could kill three major product lines with an email."</p>
]]></description><pubDate>Tue, 11 Nov 2025 20:24:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=45892354</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=45892354</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45892354</guid></item><item><title><![CDATA[New comment by joshkel in "NPM flooded with malicious packages downloaded more than 86k times"]]></title><description><![CDATA[
<p>pnpm doesn't execute lifecycle scripts by default, so it avoids the particular attack vector of "simply downloading and installing an NPM package allows it to execute malicious code."<p>As phiresky points out, you're still "download[ing] arbitrary code you are going to execute immediately afterwards" (in many/most cases), so it's far from foolproof, but it's sufficient to stop many of the attacks seen in the wild. For example, it's my understanding that last month's Shai-Hulud worm depended on postinstall scripts, so pnpm's restriction of postinstall scripts would have stopped it (unless you whitelist the scripts). But last month's attack on chalk, debug, et al. only involved runtime code, so measures like pnpm's would not have helped.</p>
]]></description><pubDate>Fri, 31 Oct 2025 17:47:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=45774700</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=45774700</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45774700</guid></item><item><title><![CDATA[New comment by joshkel in "Why Is SQLite Coded In C"]]></title><description><![CDATA[
<p>The way you know is by running the full SQLite test suite, with 100% MC/DC coverage (slightly stricter than 100% branch coverage), on each new compiler, version, and set of flags you intend to support. It's my understanding that this is the approach taken by the SQLite team.<p>Dr. Hipp's position is paraphrased as, “I cannot trust the compilers, so I test the binaries; the source code may have UBs or run into compiler bugs, but I know the binaries I distribute are correct because they were thoroughly tested" at <a href="https://blog.regehr.org/archives/1292" rel="nofollow">https://blog.regehr.org/archives/1292</a>. There, Dr. John Regehr, a researcher in undefined behavior, found some undefined behavior in the SQLite source code, which kicked off a discussion of the implications of UB given 100% MC/DC coverage of the binaries of every supported platform.<p>(I suppose the argument at this point is, "Users may use a new compiler, flag, or version that creates untested code, but that's not nearly as bad as _all_ releases and platforms containing untested code.")</p>
]]></description><pubDate>Wed, 15 Oct 2025 12:16:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=45591225</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=45591225</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45591225</guid></item><item><title><![CDATA[New comment by joshkel in "Python 3.14 is here. How fast is it?"]]></title><description><![CDATA[
<p>Yes. Sardar Biglari, who's an activist investor and the CEO and owner of Steak'n'Shake, has been pushing for more control over Cracker Barrel for several years. He amplified some of the backlash against Cracker Barrel.<p><a href="https://fortune.com/2025/09/18/sardar-biglari-war-against-cracker-barrel/" rel="nofollow">https://fortune.com/2025/09/18/sardar-biglari-war-against-cr...</a></p>
]]></description><pubDate>Fri, 10 Oct 2025 12:35:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=45538255</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=45538255</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45538255</guid></item><item><title><![CDATA[New comment by joshkel in "The React Foundation"]]></title><description><![CDATA[
<p>Would you still say it's a small API surface? State, memos, callbacks (which are just memo functions), effects, effect events, reducers, context, external stores, special handling for any tags that go in the `<head>`, form actions, form status, action state, activities, refs, imperative handles, transitions, optimistic updates, deferred updates, suspense, server components, compiler, SSR?<p>Or maybe it's a small enough <i>API</i> but a lot of <i>concepts</i>. Or maybe I'm just grumpy that the days of "it's just a view layer" feel long ago.</p>
]]></description><pubDate>Thu, 09 Oct 2025 13:48:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=45527678</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=45527678</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45527678</guid></item><item><title><![CDATA[New comment by joshkel in "PSA: Libxslt is unmaintained and has 5 unpatched security bugs"]]></title><description><![CDATA[
<p>I assume you're referring to Web SQL? As I understand it, the argument against isn't just "there's only 1 implementation," it's "there's no standard and there's only 1 implementation," so the standard would have to devolve to "whatever that 1 implementation does."<p><a href="https://hacks.mozilla.org/2010/06/beyond-html5-database-apis-and-the-road-to-indexeddb/" rel="nofollow">https://hacks.mozilla.org/2010/06/beyond-html5-database-apis...</a></p>
]]></description><pubDate>Fri, 29 Aug 2025 15:16:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=45065249</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=45065249</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45065249</guid></item><item><title><![CDATA[New comment by joshkel in "GitHub is no longer independent at Microsoft after CEO resignation"]]></title><description><![CDATA[
<p>For Git? Maybe not. For GitHub? IPv6 support would sure be nice: <a href="https://github.com/orgs/community/discussions/10539" rel="nofollow">https://github.com/orgs/community/discussions/10539</a></p>
]]></description><pubDate>Mon, 11 Aug 2025 18:07:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=44867414</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=44867414</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44867414</guid></item><item><title><![CDATA[New comment by joshkel in "The Whispering Earring"]]></title><description><![CDATA[
<p>> at least occasionally one should choose to do something one will regret.<p>Not necessarily. My take was that the practice of choosing may well be more valuable than the harm of the occasional regretted choice.</p>
]]></description><pubDate>Thu, 07 Aug 2025 17:20:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=44827367</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=44827367</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44827367</guid></item><item><title><![CDATA[New comment by joshkel in "React Still Feels Insane and No One Is Talking About It"]]></title><description><![CDATA[
<p>The View Transitions API (<a href="https://developer.mozilla.org/en-US/docs/Web/API/View_Transition_API" rel="nofollow">https://developer.mozilla.org/en-US/docs/Web/API/View_Transi...</a>) is intended to let you control transitions between clicks.</p>
]]></description><pubDate>Thu, 03 Jul 2025 17:41:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=44457431</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=44457431</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44457431</guid></item><item><title><![CDATA[New comment by joshkel in "US Trade Court finds Trump tariffs illegal"]]></title><description><![CDATA[
<p>I'm not sure how much difference that bill's clause makes in practice. As I understand it (courtesy of the "Advisory Opinions" legal podcast, but any misunderstandings are my own), the problem is that, if the executive branch is going to ignore the courts, then they're going to ignore the courts. A court can recommend prosecution for contempt, but prosecutors are part of the executive branch. A court could try and appoint their own prosecutor, but then the court is both judge and prosecutor - which goes against the US system's goal of an impartial and independent judiciary. The court could issue a fine for contempt, but then the government is paying a fine to the government? It could issue a sentence of jail time, but the executive branch administers the prisons and has the pardon power.<p>I'm disgusted with the executive branch's actions and congressional GOP's enablement. And, since the administration at times seems to want a fig leaf of legality, maybe the bill would make a difference after all by giving them more coverage. But, overall, I'm not sure that it's the "game over" step change that some commentary makes it sound like it is.<p>I could be misunderstanding - comments / counterarguments welcome.</p>
]]></description><pubDate>Thu, 29 May 2025 02:23:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=44122542</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=44122542</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44122542</guid></item><item><title><![CDATA[New comment by joshkel in "Apple violated antitrust ruling, judge finds"]]></title><description><![CDATA[
<p>Belief within limits, yes. At least, I can only think of a couple of possible explanations for the event:<p>1. Cook only cares about pursuing profits, but at a shareholder meeting where shareholders were pressuring him to pursue profits, he lied to them (and had the presence of mind and acting chops to pretend to be uncharacteristically angry about it), because he believed that the story would get reported on and Apple fans would want to hear it, and he made the calculation that that would be more beneficial to his bottom line than being honest (or at least more politically neutral) with his shareholders.<p>2. Cook really does believe about accessibility, environmental issues, and worker safety, and he tries (or at least likes to think that he tries) to take steps toward those causes at the expense of profits, but he's also a complex and flawed mixture of motivations and is capable of compromising his values (and/or of letting those under him compromise their values) to varying degrees in the face of financial rewards or the pressures of the capitalist system.<p>#2 seems more likely and is more consistent with my view of humanity in general.</p>
]]></description><pubDate>Thu, 01 May 2025 13:50:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=43857641</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=43857641</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43857641</guid></item><item><title><![CDATA[New comment by joshkel in "Apple violated antitrust ruling, judge finds"]]></title><description><![CDATA[
<p>That's not universally true, at least. From <a href="https://www.macobserver.com/news/tim-cook-rejects-ncppr-politics/" rel="nofollow">https://www.macobserver.com/news/tim-cook-rejects-ncppr-poli...</a>:<p>> “When we work on making our devices accessible by the blind,” he said, “I don't consider the bloody ROI.” He said that the same thing about environmental issues, worker safety, and other areas where Apple is a leader.<p>> As evidenced by the use of “bloody” in his response—the closest thing to public profanity I've ever seen from Mr. Cook–it was clear that he was quite angry. His body language changed, his face contracted, and he spoke in rapid fire sentences compared to the usual metered and controlled way he speaks.<p>More broadly, I know that for-profit businesses are concerned with their bottom line, and I know businesses regularly throw other values under the bus in pursuit of profit. But I'm not sure it's possible to build a successful business (in terms of maintaining consumer trust, attracting and motivating decent employees, etc.) without <i>some</i> values beyond what's immediately quantifiable on the bottom line.</p>
]]></description><pubDate>Thu, 01 May 2025 11:40:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=43856364</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=43856364</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43856364</guid></item><item><title><![CDATA[New comment by joshkel in "Apache ECharts"]]></title><description><![CDATA[
<p>The biggest difference I'm aware of is that ECharts has an add-on for 3D charts (echarts-gl). Chart.js doesn't have any 3D functionality.<p>(Our project mostly uses Chart.js, so I'm more familiar with it.)</p>
]]></description><pubDate>Wed, 09 Apr 2025 11:49:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=43631081</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=43631081</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43631081</guid></item><item><title><![CDATA[New comment by joshkel in "Resigning as Asahi Linux project lead"]]></title><description><![CDATA[
<p>I mean, yeah, I said it was easy enough to work around. But it's an issue I've seen raised in a discussions of C code maintenance. (The typical conclusion is that using `-Wall -Werror` is a mistake for long-lived, not-actively-developed code.) Apologies if I overstated the case.</p>
]]></description><pubDate>Thu, 13 Feb 2025 19:40:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=43040329</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=43040329</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43040329</guid></item><item><title><![CDATA[New comment by joshkel in "Resigning as Asahi Linux project lead"]]></title><description><![CDATA[
<p>In practice, C has a couple of significant pitfalls that I've read about.<p>First is if you compile with `-Werror -Wall` or similar; new compiler diagnostics can result in a build failing. That's easy enough to work around.<p>Second, nearly any decent-sized C program has undefined behavior, and new compilers may change their handling of undefined behavior. (E.g., they may add new optimizations that detect and exploit undefined behavior that was previously benign.) See, e.g., this post by cryptologist Daniel J. Bernstein: <a href="https://groups.google.com/g/boring-crypto/c/48qa1kWignU/m/o8GGp2K1DAAJ" rel="nofollow">https://groups.google.com/g/boring-crypto/c/48qa1kWignU/m/o8...</a></p>
]]></description><pubDate>Thu, 13 Feb 2025 17:48:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=43038895</link><dc:creator>joshkel</dc:creator><comments>https://news.ycombinator.com/item?id=43038895</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43038895</guid></item></channel></rss>