<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: gdwatson</title><link>https://news.ycombinator.com/user?id=gdwatson</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 15 Jun 2026 11:55:54 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=gdwatson" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by gdwatson in "Leaving Mozilla"]]></title><description><![CDATA[
<p>"He resigned and declined Mozilla's offer to remain in another C level position."<p>At this point I think it's clear his resignation was not voluntary.  Maybe the other offer was sincere, or maybe it wasn't; I'm not sure how we could tell.</p>
]]></description><pubDate>Sat, 13 Jun 2026 12:21:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=48516589</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=48516589</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48516589</guid></item><item><title><![CDATA[New comment by gdwatson in "The Trouble with Font Previews"]]></title><description><![CDATA[
<p>I actually think I like the baseline-aligned one best.  It's spaced reasonably well while reflecting the character of each font better, IMHO.  Or maybe it's just because a consistent baseline rhythm feels so typographically <i>right</i>.</p>
]]></description><pubDate>Fri, 12 Jun 2026 00:03:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=48498116</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=48498116</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48498116</guid></item><item><title><![CDATA[New comment by gdwatson in "Is my blue your blue? (2024)"]]></title><description><![CDATA[
<p>> Now maybe its my male engineer brain, but I haven't heard of that color in 36 years, but it does make sense and it is rather distinct.<p>You need to get into either fishing (chartreuse lures are common) or cocktails: <a href="https://en.wikipedia.org/wiki/Chartreuse_(liqueur)" rel="nofollow">https://en.wikipedia.org/wiki/Chartreuse_(liqueur)</a> .</p>
]]></description><pubDate>Tue, 28 Apr 2026 02:39:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47929931</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=47929931</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47929931</guid></item><item><title><![CDATA[New comment by gdwatson in "AGPLv3§74 Empowers Users to Thwart Badgeware Like OnlyOffice"]]></title><description><![CDATA[
<p>I feel like I am missing too much background here.  If there is only one licensor, why add terms to defeat the license it chose rather than choose a license which does not need defeating?</p>
]]></description><pubDate>Sun, 26 Apr 2026 10:17:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=47909057</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=47909057</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47909057</guid></item><item><title><![CDATA[New comment by gdwatson in "How to make a fast dynamic language interpreter"]]></title><description><![CDATA[
<p>I think the idea is that SmallTalk replaced conditional syntax with methods on booleans.  You could call `ifTrue:` on a boolean, passing it a code block; a true boolean would execute the block, and a false boolean would not.  (There was also an `ifFalse:` method.)<p>This feels more like a party trick than anything.  But it does represent a deep commitment to founding the whole language on object orientation, even when it seems silly to folks like me.</p>
]]></description><pubDate>Tue, 21 Apr 2026 10:37:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=47846972</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=47846972</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47846972</guid></item><item><title><![CDATA[New comment by gdwatson in "Want to write a compiler? Just read these two papers (2008)"]]></title><description><![CDATA[
<p>I hope that God is indeed willing, but the man is 88 years old and he’s not done with the third tome of volume four.  It would require a minor miracle for him to finish volume 7 within this lifetime.</p>
]]></description><pubDate>Wed, 15 Apr 2026 13:14:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47778530</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=47778530</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47778530</guid></item><item><title><![CDATA[New comment by gdwatson in "Cloudflare's Gen 13 servers: trading cache for cores for 2x performance"]]></title><description><![CDATA[
<p>I guess I am a sucker for stories about redesigning data structures, and I'd have liked more detail on that front.  Also, they talked about Rust's greater memory safety; it would have been nice to know whether there were specific language features that played into the cache difference or whether it just made the authors comfortable using a systems language in this application and that made the difference.</p>
]]></description><pubDate>Fri, 27 Mar 2026 01:16:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47537969</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=47537969</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47537969</guid></item><item><title><![CDATA[New comment by gdwatson in "Cloudflare's Gen 13 servers: trading cache for cores for 2x performance"]]></title><description><![CDATA[
<p>I will confess to skimming by the end.  But I don’t think they explained how they solved the cache issue except to say they rewrote the software in Rust, which is pretty vague.<p>Was all the code they rewrote originally in Lua?  So was it just a matter of moving from a dynamic language with pointer-heavy data structures to a static language with value types and more control over memory layout?  Or was there something else going on?</p>
]]></description><pubDate>Thu, 26 Mar 2026 22:07:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=47536448</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=47536448</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47536448</guid></item><item><title><![CDATA[New comment by gdwatson in "Justifying Text-Wrap: Pretty"]]></title><description><![CDATA[
<p>> Scribus is an open source project but I’m not sure how the quality is in that.<p>I am not a typographer, and I’ve never used it in a professional capacity, but v1.6 (early 2024) improved Scribus <i>a lot.</i>  I’ve used it and liked it for some personal projects for years, but the improved typography in 1.6 is big.</p>
]]></description><pubDate>Wed, 25 Feb 2026 09:03:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47149143</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=47149143</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47149143</guid></item><item><title><![CDATA[New comment by gdwatson in "Closing this as we are no longer pursuing Swift adoption"]]></title><description><![CDATA[
<p>Years ago I wrote a toy Lisp implementation in Objective-C, ignoring Apple’s standard library and implementing my own class hierarchy.  At that point it was basically standard C plus Smalltalk object dispatch, and it was a very cool language for that type of project.<p>I haven’t used it in Apple’s ecosystem, so maybe I am way off base here.  But it seems to me that it was Apple’s effort to evolve the language away from its systems roots into a more suitable applications language that caused all the ugliness.</p>
]]></description><pubDate>Thu, 19 Feb 2026 00:59:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=47068589</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=47068589</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47068589</guid></item><item><title><![CDATA[New comment by gdwatson in "From watchdogs to mouthpieces: Washington Post and the wreckage of legacy media"]]></title><description><![CDATA[
<p>> I really miss the days of the fairness-doctrine.<p>There are so many ways to game the system, whom do you trust to enforce it?  I don’t trust my own “side” to do so, and I sure as heck don’t trust the other side.</p>
]]></description><pubDate>Mon, 09 Feb 2026 20:45:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=46950987</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=46950987</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46950987</guid></item><item><title><![CDATA[New comment by gdwatson in "Early Christian Writings"]]></title><description><![CDATA[
<p>I think that diff algorithms have more in common with traditional, “lower” textual criticism than with the sort of source criticism canjobear is pondering.</p>
]]></description><pubDate>Sat, 07 Feb 2026 02:08:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=46920609</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=46920609</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46920609</guid></item><item><title><![CDATA[New comment by gdwatson in "Early Christian Writings"]]></title><description><![CDATA[
<p>It’s interesting that they’re organized by date.  On an intuitive level, that makes sense.  But so many of the dates are hotly debated, and reorganizing the list would produce such a different impression, that it’s a surprising choice.<p>I am not a scholar of such things, but a quick glance at the documents I am familiar with suggests that the date ranges represent uncertainty within the compiler’s point of view.  That’s reasonable, but when it’s linked out of context it’s not immediately obvious that it doesn’t reflect the range of debate in the broader secular scholarship, let alone secular and conservative religious scholarship taken together.  So caveat lector.<p>That said, the breadth of documents linked here is really impressive.</p>
]]></description><pubDate>Sat, 07 Feb 2026 00:06:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=46919886</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=46919886</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46919886</guid></item><item><title><![CDATA[New comment by gdwatson in "The super-slow conversion of the U.S. to metric (2025)"]]></title><description><![CDATA[
<p>Units based on base 12 or base 2, as U.S. standard measures tend to be, are easier to divide in many ways.<p>Now if we used base 12 numbers instead of base 10, and we had a system of units based on that, I bet we’d have the best of both worlds.  No idea if Napoleon could have imposed base 12 arithmetic on most of Europe the way he did metric, though.</p>
]]></description><pubDate>Wed, 21 Jan 2026 13:59:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=46705799</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=46705799</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46705799</guid></item><item><title><![CDATA[New comment by gdwatson in "Deno has made its PyPI distribution official"]]></title><description><![CDATA[
<p>I realize you are tongue in cheek, but I hope people respect the logical limits of this sort of thing.<p>Years ago, there were some development tools coming out of the Ruby world – SASS for sure, and Vagrant if I remember correctly – whose standard method of installation was via a Ruby gem.  Ruby on Rails was popular, and I am sure that for the initial users this had almost zero friction.  But the tools began to be adopted by non-Ruby-devs, and it was frustrating.  Many Ruby libraries had hardcoded file paths that didn’t jive with your distro’s conventions, and they assumed newer versions of Ruby than existed in your package repos.  Since then I have seen the same issue crop up with PHP and server-side JavaScript software.<p>It’s less of a pain today because you can spin up a container or VM and install a whole language ecosystem there, letting it clobber whatever it wants to clobber.  But it’s still nicer when everything respects the OS’s local conventions.</p>
]]></description><pubDate>Sat, 10 Jan 2026 02:32:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=46562176</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=46562176</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46562176</guid></item><item><title><![CDATA[New comment by gdwatson in "AirPods libreated from Apple's ecosystem"]]></title><description><![CDATA[
<p>Could you explain your reasoning?  I don’t see any moral difference between deliberately limiting compatibility from the peripheral side and doing so from the “computer” side (i.e., iPhone, iPad, Macintosh).  One type of device may produce more inadvertent incompatibilities than the other, but that’s different.<p>Besides, I think this will create surprise and confusion for less technical users.  In my experience, many will blame the incompatibility on whichever device is new, without understanding who is gating out whom.  And even for technical users, consider CarPlay and Android Auto:  From the phone’s perspective, the car is a peripheral, and that makes sense; but lots of people will still consider the car the “core device.”</p>
]]></description><pubDate>Sun, 16 Nov 2025 19:10:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=45947540</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=45947540</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45947540</guid></item><item><title><![CDATA[New comment by gdwatson in "Myna: Monospace typeface designed for symbol-heavy programming languages"]]></title><description><![CDATA[
<p>Beside being a neat font in its own right, Iosevka allows for custom builds with different settings, selection from a bunch glyph variants, and custom ligature choices.  It's pretty incredible.</p>
]]></description><pubDate>Sat, 08 Nov 2025 00:39:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=45852979</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=45852979</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45852979</guid></item><item><title><![CDATA[New comment by gdwatson in "Removing XSLT for a more secure browser"]]></title><description><![CDATA[
<p>The first few times you use it, XSLT is <i>insane</i>.  But once something clicks, you figure out the kinds of things it’s good for.<p>I am not really a functional programming guy.  But XSLT is a really cool application of functional programming for data munging, and I wouldn’t have believed it if I hadn’t used it enough for it to click.</p>
]]></description><pubDate>Wed, 05 Nov 2025 15:12:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=45823681</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=45823681</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45823681</guid></item><item><title><![CDATA[New comment by gdwatson in "Liquibase continues to advertise itself as "open source" despite license switch"]]></title><description><![CDATA[
<p>“They convinced a bunch of developers that their definition of Open Source that was specifically crafted to protect business interests is canon.”<p>They adopted the existing Debian Free Software Guidelines as the Open Source Definition.  The DFSG are good, actually, and represent an important community consensus outside the FSF.</p>
]]></description><pubDate>Thu, 16 Oct 2025 11:40:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=45604172</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=45604172</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45604172</guid></item><item><title><![CDATA[New comment by gdwatson in "Just let me select text"]]></title><description><![CDATA[
<p>The point isn't that the developer should disable text selection whenever he thinks it's unnecessary, which would indeed be silly.  It's that sometimes the user interface rules for navigating selectable text conflict or interfere with the user interface rules for navigating, say, a set of tab panes.  In that situation, making the tab titles selectable will cause grief.<p>I agree with your address example.  That is user data, and it should be selectable.</p>
]]></description><pubDate>Wed, 24 Sep 2025 15:46:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=45361975</link><dc:creator>gdwatson</dc:creator><comments>https://news.ycombinator.com/item?id=45361975</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45361975</guid></item></channel></rss>