<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: jomar</title><link>https://news.ycombinator.com/user?id=jomar</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 29 Apr 2026 18:57:24 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=jomar" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by jomar in "Ghostty is leaving GitHub"]]></title><description><![CDATA[
<p>Indeed. Back in 2018 and 2019 I expended a fair amount of time and energy reporting a squash 'n' merge metadata rewriting bug to GitHub and advocating for the behaviour to be changed. [1]<p>Once or twice someone internal to GitHub got interested... and then drifted away again. Years later the broken behaviour remains. And I'm a lot more cynical about thinking GitHub fundamentals might ever get any better.<p>[1] <a href="https://github.com/isaacs/github/issues/1368" rel="nofollow">https://github.com/isaacs/github/issues/1368</a></p>
]]></description><pubDate>Wed, 29 Apr 2026 03:42:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47943947</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=47943947</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47943947</guid></item><item><title><![CDATA[New comment by jomar in "Cambodia unveils statue to honour famous landmine-sniffing rat"]]></title><description><![CDATA[
<p>Apparently it's about as expected for a southern giant pouched rat. But he was indeed a particularly good one!</p>
]]></description><pubDate>Wed, 08 Apr 2026 01:03:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=47683425</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=47683425</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47683425</guid></item><item><title><![CDATA[New comment by jomar in "Palm OS User Interface Guidelines (2003) [pdf]"]]></title><description><![CDATA[
<p>> I think even the development system wasn't free either.<p>Metrowerks CodeWarrior was the original development system for PalmOS and was indeed not free (in either sense).<p>However a bunch of enthusiasts cobbled together some free development tools: the main parts were adapting the GCC and binutils m68k targets to PalmOS's constrained PIC runtime environment (it was constrained even by m68k standards); a tool to convert the resulting COFF or ELF executable to PalmOS's .prc database format; and a text-based resource compiler for generating UI elements using its own home-grown description language to express what CodeWarrior users were using a graphical UI editor to make.<p>That mostly still exists as it was back in the PalmOS days at <<a href="https://prc-tools.sourceforge.net" rel="nofollow">https://prc-tools.sourceforge.net</a>>. And if you hunt around on GitHub you'll find a few people who've kept the code compiling with stricter more modern compilers.<p>(And see also <<a href="https://pilrc.sourceforge.net" rel="nofollow">https://pilrc.sourceforge.net</a>> for the resource compiler.)</p>
]]></description><pubDate>Fri, 27 Feb 2026 01:26:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47175077</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=47175077</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47175077</guid></item><item><title><![CDATA[New comment by jomar in "Did missing/corrupt dates in COBOL default to 1875-05-20?"]]></title><description><![CDATA[
<p>Wikipedia says "ISO 8601:2004 established a reference calendar date of 20 May 1875 (the date the Metre Convention was signed), later omitted from ISO 8601-1:2019." I was curious what "reference calendar date" is supposed to mean.<p>Thanks to links in the SE thread, I found the relevant actual text in ISO 8601:2000 (I don't know how different it might be, if at all, in the 2004 document):<p>> <i>The Gregorian calendar provides a reference system consisting of a, potentially infinite, series of contiguous calendar years. Consecutive calendar years are identified by sequentially assigned year numbers. A reference point is used which assigns the year number 1875 to the calendar year in which the “Convention du mètre” was signed at Paris.</i><p>This last sentence is simply an obtuse way to say "this year right now, as I [jomar] write this -- we call this 2025". Apparently the ISO committee did not want to refer to what was going on around 1 AD or felt that the missing 0 between 1 BC and 1 AD would lead to confusion or something, so instead used the birth year of the metre to state the bleeding obvious.</p>
]]></description><pubDate>Mon, 17 Feb 2025 03:22:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=43074725</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=43074725</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43074725</guid></item><item><title><![CDATA[New comment by jomar in "Cheap blood test detects pancreatic cancer before it spreads"]]></title><description><![CDATA[
<p>I'm another one who's had two colonoscopies. Try to schedule it for the morning so that most of the fasting time will be while you're asleep. The prep is not a lot of fun, but it's only about half a day and it's very much not as bad as gastroenteritis or anything else that'll give you a good bout of diarrhoea.</p>
]]></description><pubDate>Thu, 13 Feb 2025 23:40:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=43042902</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=43042902</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43042902</guid></item><item><title><![CDATA[New comment by jomar in "Itch.io Taken Down by Funko"]]></title><description><![CDATA[
<p>As noted above, what used to be a cool little Wellington-based company got bought by some offshore conglomerate. Lenz himself left about five years ago.</p>
]]></description><pubDate>Mon, 09 Dec 2024 09:50:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=42364567</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=42364567</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42364567</guid></item><item><title><![CDATA[New comment by jomar in "Organizing multiple Git identities"]]></title><description><![CDATA[
<p>Probably the older email address is still the primary one for the GitHub account.<p>GitHub took it upon themselves to change email addresses and author names when merging via the UI buttons like "Squash and Merge" in 2018 and then again in 2019. See <<a href="https://github.com/isaacs/github/issues/1368">https://github.com/isaacs/github/issues/1368</a>> for the tedious details.<p>Essentially the post-2019 behaviour seems to be that where possible with "Squash and Merge" they will set noreply@github as the committer so that they can sign the merged commit themselves, and set author name & email to what they have recorded for the GH account involved (and the signature is then a record that GH have verified that account's involvement).<p>Personally I think it is shocking that they ignore the name and email address that the actual author of the commit has selected. This is both a violation of the author's intentions -- for example, you may set work and personal email addresses in different repositories as discussed here, but GitHub will rewrite them all to the same thing when other people press "Squash and Merge" on your pull requests -- and potentially a doxxing security risk.<p>I have considered re-reporting this to GitHub via the newer community discussions or via support again, but given the extent to which they've ignored all such reports over the last five years it is hard to find the motivation to do so.</p>
]]></description><pubDate>Mon, 16 Oct 2023 23:58:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=37908324</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=37908324</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37908324</guid></item><item><title><![CDATA[New comment by jomar in "Organizing multiple Git identities"]]></title><description><![CDATA[
<p>Handy, but is it really easier to type? Or as pleasantly reminiscent of one of the first Unix commands you ever learnt, back in the days when they actually really were multiuser machines? :-)</p>
]]></description><pubDate>Mon, 16 Oct 2023 20:54:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=37906493</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=37906493</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37906493</guid></item><item><title><![CDATA[New comment by jomar in "Organizing multiple Git identities"]]></title><description><![CDATA[
<p>That is a nice trick. I've had my main email address in .config/git/config, added an override in ./.git/config for projects that need it, and checked who I am from time to time with<p><pre><code>    [alias]
        whoami = "!f() { echo $(git config --get user.name)' <'$(git config --get user.email)'>'; }; f"
</code></pre>
but I might switch to your less error-prone approach.</p>
]]></description><pubDate>Mon, 16 Oct 2023 20:15:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=37905875</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=37905875</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37905875</guid></item><item><title><![CDATA[New comment by jomar in "Organizing multiple Git identities"]]></title><description><![CDATA[
<p>Having said that, given that many people do use separate GitHub accounts for their separate private and work personas, and many organisations seemingly expect their employees to do so, perhaps GitHub could consider revising this Terms of Service restriction to better reflect reality.<p>There have also been times when I would like to have access to a second GitHub account for testing purposes. (In particular, for testing GH behaviour when the accounts corresponding to PR commits, PR creator, and PR merger all differ -- see for example <<a href="https://github.com/isaacs/github/issues/1368">https://github.com/isaacs/github/issues/1368</a>>.)</p>
]]></description><pubDate>Mon, 16 Oct 2023 20:08:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=37905759</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=37905759</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37905759</guid></item><item><title><![CDATA[New comment by jomar in "Organizing multiple Git identities"]]></title><description><![CDATA[
<p>It's always been very clear in their Terms of Service (which obviously everyone reads carefully...):<p>The third bullet point at <a href="https://docs.github.com/en/site-policy/github-terms/github-terms-of-service#3-account-requirements" rel="nofollow noreferrer">https://docs.github.com/en/site-policy/github-terms/github-t...</a> --<p>> One person or legal entity may maintain no more than one free Account (if you choose to control a machine account as well, that's fine, but it can only be used for running a machine).<p>This is the primary reason why I have only ever used my own personal account for work stored at GitHub. If a company is expecting its employees to use a separate work GH account, one assumes that company is planning to pay for all those accounts for its employees.</p>
]]></description><pubDate>Mon, 16 Oct 2023 19:59:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=37905611</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=37905611</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37905611</guid></item><item><title><![CDATA[New comment by jomar in "Government URLs that don't end in .gov"]]></title><description><![CDATA[
<p>Various government departments of those countries use domains under .gouv.fr, .gob.es, .gov.ro respectively. The argument is that fairness and clarity would suggest that the US likewise use .gov.us or some other convention of their choice under .us.</p>
]]></description><pubDate>Mon, 24 Jul 2023 08:20:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=36844548</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=36844548</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36844548</guid></item><item><title><![CDATA[New comment by jomar in "Government URLs that don't end in .gov"]]></title><description><![CDATA[
<p>That was introduced in 1985, almost 40 years ago.<p>For how many decades is this going to be a reasonable argument?<p>In 100 years, will it still be reasonable for the USA to say "we built the thing, so it is appropriate for us to continue to be the default country in domain names. The rest of you must use your ccTLDs, but we remain special."<p>In 200 years?<p>The only non-pathetic option is for the United States to transition to using its .us ccTLD for governmental and military domains in particular, with .edu and probably some others not far behind. The only question is how gradual the process is, and when it starts.</p>
]]></description><pubDate>Sun, 23 Jul 2023 22:56:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=36840832</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=36840832</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36840832</guid></item><item><title><![CDATA[New comment by jomar in "Shell script best practices, from a decade of scripting things"]]></title><description><![CDATA[
<p>Export $BASH_SILENCE_DEPRECATION_WARNING as described in the Apple web page pointed to by the nag message, or change your shell to your own version of Bash.<p>See also <<a href="https://apple.stackexchange.com/questions/371997/suppressing-the-default-interactive-shell-is-now-zsh-message-in-macos-catalina" rel="nofollow">https://apple.stackexchange.com/questions/371997/suppressing...</a>>. I went with the "use an updated brewed Bash" approach, which has been working well. Using `sudo chfn` means you don't need to futz around with editing /etc/shells.</p>
]]></description><pubDate>Thu, 27 Oct 2022 09:43:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=33355324</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=33355324</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33355324</guid></item><item><title><![CDATA[New comment by jomar in "Zlib Critical Vulnerability"]]></title><description><![CDATA[
<p>Zlib-ng doesn't contain the same code, but it appears that their equivalent inflate() when used with their inflateGetHeader() implementation was affected by a similar problem: <a href="https://github.com/zlib-ng/zlib-ng/pull/1328" rel="nofollow">https://github.com/zlib-ng/zlib-ng/pull/1328</a><p>Also similarly, most client code will be unaffected because `state->head` will be NULL, because they (most client code) won't have used inflateGetHeader() at all.</p>
]]></description><pubDate>Sat, 15 Oct 2022 14:54:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=33215366</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=33215366</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33215366</guid></item><item><title><![CDATA[New comment by jomar in "Zlib Critical Vulnerability"]]></title><description><![CDATA[
<p>Prior to 1.2.13 released a few days ago, neither of these commits was contained in a zlib release. The CVE exists in the state of the code prior to that first commit, and is fairly obvious when you read the explanation in the commit message. The first commit fixed the CVE but introduced a silly null pointer deference, which was quickly fixed by the second commit and never appeared in a release.<p>Studying the code it's easy to convince yourself that the CVE description is correct and client code that does not use inflateGetHeader() is entirely immune to the CVE. Searching GitHub suggests that use of this function is uncommon, and certainly it's not used by any of the client code that I checked for potential vulnerability to this CVE. So all the client code that I checked was unaffected by this CVE.<p>Hence IMHO this particular CVE is not really a big deal, because very little client software uses the somewhat obscure inflateGetHeader() API function. I suspect this is why the zlib maintainers didn't seem to be in a particular hurry to get this release out, after the CVE was made public in at least August or early September and they had already fixed it in early August. (Me, I became aware of it in early September, so the vulnerability was publicly disclosed at least by then.)</p>
]]></description><pubDate>Sat, 15 Oct 2022 14:47:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=33215295</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=33215295</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33215295</guid></item><item><title><![CDATA[New comment by jomar in "We are stuck with egrep and fgrep (unless you like beating people)"]]></title><description><![CDATA[
<p>I too was surprised to see these were shell scripts. I was expecting the grep/fgrep/egrep names to be hard links to the same executable that would check `argv[0]`, as the BSD implementation does.<p>More interesting than the commit diff is the brief discussion on the bug report from when this all happened a year ago, as referenced in the commit message: <a href="https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49996" rel="nofollow">https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49996</a><p>Sigh. Time to retrain the old fingers again...</p>
]]></description><pubDate>Thu, 13 Oct 2022 15:04:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=33192019</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=33192019</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33192019</guid></item><item><title><![CDATA[New comment by jomar in "Ask HN: Can I see your scripts?"]]></title><description><![CDATA[
<p>Looking at the linked script, it indicates which cow orker to credit.<p>To the OP: You might be able to simplify the script by using `git commit --trailer …`. Or maybe you tried that and it didn't display the message in the editor window satisfactorily?</p>
]]></description><pubDate>Mon, 15 Aug 2022 12:07:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=32468621</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=32468621</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32468621</guid></item><item><title><![CDATA[New comment by jomar in "Intelligent Indentation, Seriously"]]></title><description><![CDATA[
<p>The scheme proposed in TFA is not particularly amenable to automation:<p>> <i>Can I programatically convert from what I use now?</i><p>> <i>Unfortunately, probably not</i><p>Moreover, even if a syntax-aware formatter could detect mistakes made in following this scheme, that presupposes that these coworkers will actually use said tools.<p>Some of us work in organisations where it is not politically feasible to insist that everyone work in any particular way or adhere to any particular standards. Welcome to academia…<p>Or just consider whether everyone contributing PRs to an open source project will get this right or use such tools.</p>
]]></description><pubDate>Mon, 23 May 2022 17:27:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=31482034</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=31482034</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31482034</guid></item><item><title><![CDATA[New comment by jomar in "Intelligent Indentation, Seriously"]]></title><description><![CDATA[
<p>This is nice in theory, but it will inevitably get screwed up by your less details-oriented coworkers.<p>The spaces and tabs are mostly invisible, so even if they did care about it these people can't really see the conventions that are in use. So the source code will inevitably accrue indentation done via spaces mixed up with the good lines indented via tabs, and then it's game over.<p>A script I have been working on lately is mostly tab-indented but has space-indented tracts and individual lines mixed in as it has been worked on by multiple authors over the years. When I started working on it, I thought the indentation was just plain borked (with the subclauses of if statements indented less than their if lines, etc). But then I discovered that setting tabstop=2 made most of the space-indented lines line up properly -- turns out this script was written to a 2-space indent (crazy narrow by my standards!) using tabs, with a few space-indented lines mixed in on the same scheme. Until another author came along some years ago with their tabs set to 4, and added some space-indented lines written to line up with the 4-space tabs they were looking at. So now there are several incompatible categories of space-indented lines in this 200 line source file.<p>The real argument from the spaces camp is that their approach is the only realistic compromise with reality: by banning explicit tab characters in source files on disk, there is no room for error.<p>(Except that the same coworkers are wont to include trailing whitespace or omit the final newline, but at least that sort of invisible difference does not affect reading the indentation.)</p>
]]></description><pubDate>Mon, 23 May 2022 16:01:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=31480739</link><dc:creator>jomar</dc:creator><comments>https://news.ycombinator.com/item?id=31480739</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31480739</guid></item></channel></rss>