<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: klmr</title><link>https://news.ycombinator.com/user?id=klmr</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 30 Apr 2026 11:33:09 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=klmr" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by klmr in "R: Introduction to Data Science (2019)"]]></title><description><![CDATA[
<p>Oh, I totally agree that ‘renv’ probably solves 95% of problems. But those pesky 5%…<p>I think that most problems are ultimately caused by the fact that R packages cannot really declare versioned dependencies (most packages only declare `>=` dependency, even though they <i>could</i> also give upper bounds [1]; and that is woefully insufficient), and installing a package’s dependencies will (almost?) always install the latest versions, which may be incompatible with other packages. But at any rate ‘renv’ currently seems to ignore upper bounds: e.g. if I specify `Imports: dplyr (>= 0.8), dplyr (< 1.0)` it will blithely install v1.1.3.<p>The single one thing that causes most issues for us at work is a binary package compilation issue: the `configure` file for ‘httpuv’ clashes with our environment configuration, which is based on Gentoo Prefix and environment modules. Even though the `configure` file doesn’t hard-code any paths, it consistently finds the wrong paths for some system dependencies (including autotools). According to the system administrators of our compute cluster this is a bug in ‘httpuv’ (I don’t understand the details, and the configuration files look superficially correct to me, but I haven’t tried debugging them in detail, due to their complexity). But even if it were fixed, the issue would obviously persist for ‘renv’ projects requiring old versions.<p>(We are in the process of introducing a shared ‘renv’ package cache; once that’s done, the particular issue with ‘httpuv’ will be alleviated, since we can manually add precompiled versions of ‘httpuv’, built using our workaround, to that cache.)<p>Another issue is that ‘renv’ attempts to infer dependencies rather than having the user declare them explicitly (a la pyproject.toml dependencies), and this is inherently error-prone. I know this behaviour can be changed via `settings$snapshot.type("explicit")` but I think some of the issues we’re having are exacerbated by this default, since `renv::status()` doesn’t show which ones are direct and which are transitive dependencies.<p>Lastly, we’ve had to deactivate ‘renv’ sandboxing since our default library is rather beefy and resides on NFS, and initialising the sandbox makes loading ‘renv’ projects prohibitively slow — every R start takes well over a minute. Of course this is really a configuration issue: as far as I am concerned, the default R library should only include base and recommended packages. But it in my experience it is incredibly common for shared compute environments to push lots of packages into the default library. :-(<p>---<p>[1] R-exts: “A package or ‘R’ can appear more than once in the ‘Depends’ field, for example to give upper and lower bounds on acceptable versions.”</p>
]]></description><pubDate>Mon, 04 Mar 2024 14:45:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=39591099</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=39591099</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39591099</guid></item><item><title><![CDATA[New comment by klmr in "R: Introduction to Data Science (2019)"]]></title><description><![CDATA[
<p>> <i>But in all honesty for the pharmaceutical industry it’s mostly momentum that keeps R on top</i><p>I can’t agree with this: especially in PK/PD, R is only just now taking over from the previous (closed-source) systems. Momentum would keep R <i>out</i>, not <i>in</i>.</p>
]]></description><pubDate>Sat, 02 Mar 2024 14:20:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=39572703</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=39572703</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39572703</guid></item><item><title><![CDATA[New comment by klmr in "R: Introduction to Data Science (2019)"]]></title><description><![CDATA[
<p>> <i>I can’t remember the last time a library incompatibility led to a show stopper.</i><p>Oh, it’s <i>very</i> common unless you basically only use < 5 packages that are completely stable and no longer actively developed: packages break backwards compatibility all the time, in small and in big ways, and version pinning in R categorically does not work as well as in Python, despite all the issues with the latter. People joke about the complex packaging ecosystem in Python but at least there is such a thing. R has no equivalent. In Python, if you have a versioned lockfile, anybody can redeploy your code unless a system dependency broke. In R, even with an ‘renv’ lockfile, installing the correct packages version is a crapshoot, and will frequently fail. Don’t get me wrong, ‘renv’ has made things <i>much</i> better (and ‘rig’ and PPM also help in small but important ways). But it’s still dire. At work we are facing these issues every other week on some code base.</p>
]]></description><pubDate>Sat, 02 Mar 2024 14:16:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=39572679</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=39572679</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39572679</guid></item><item><title><![CDATA[New comment by klmr in "Tens of thousands protest in Germany against the rise of the far right"]]></title><description><![CDATA[
<p>> That's not a lot<p>Indeed, that wouldn’t be a lot: the framing in the article is grossly misleading. The actual number of protesters this weekend was hundreds of thousands, and plausibly >1M (not “tens of thousands”), according to unanimous reporting in various German media and official sources (see e.g. <a href="https://www.tagesschau.de/inland/demos-gegen-rechts-bilanz-100.html" rel="nofollow">https://www.tagesschau.de/inland/demos-gegen-rechts-bilanz-1...</a>).</p>
]]></description><pubDate>Tue, 23 Jan 2024 08:47:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=39100990</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=39100990</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39100990</guid></item><item><title><![CDATA[New comment by klmr in "British man appears in court over bomb joke sent in private message"]]></title><description><![CDATA[
<p>I’m not saying this doesn’t happen but I can’t remember ever having been asked to install a root certificate when joining an airport wifi. And I am confident that this has <i>never</i> happened when I’ve flown out from Gatwick.</p>
]]></description><pubDate>Mon, 22 Jan 2024 20:34:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=39095029</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=39095029</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39095029</guid></item><item><title><![CDATA[New comment by klmr in "British man appears in court over bomb joke sent in private message"]]></title><description><![CDATA[
<p>> <i>why are there not mass protests about this?</i><p>Because we hadn’t heard about this case before. — At all. If the vague information in this article is actually corroborated there’ll be an outcry alright.</p>
]]></description><pubDate>Mon, 22 Jan 2024 20:31:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=39095004</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=39095004</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39095004</guid></item><item><title><![CDATA[New comment by klmr in "British man appears in court over bomb joke sent in private message"]]></title><description><![CDATA[
<p>The <i>entire point</i> of TLS (let alone E2EE!) is to make something like this particular scenario safe.</p>
]]></description><pubDate>Mon, 22 Jan 2024 20:24:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=39094906</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=39094906</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39094906</guid></item><item><title><![CDATA[New comment by klmr in "Is POSIX really outdated?"]]></title><description><![CDATA[
<p>Why? Because all typical, existing applications written for POSIX systems use the POSIX API (usually indirectly) to interact with the filesystem and perform IO. Being able to use that vast ecosystem of existing applications seamlessly with object storage is such a common requirement that a good dozen different object storage-to-POSIX abstraction layers exist (many of them on top of FUSE).<p>Even if you build your scalable production environment from scratch with native object storage support (which is rare!), it’s eminently useful to be able to use coreutils to interact with said object storage for devops: nothing beats e.g. running grep on a list of log “files” in an S3 bucket in terms of convenience.</p>
]]></description><pubDate>Fri, 20 Oct 2023 10:09:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=37954252</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=37954252</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37954252</guid></item><item><title><![CDATA[New comment by klmr in "Is POSIX really outdated?"]]></title><description><![CDATA[
<p><i>> … at Google, which i suspect is one of the companies you are referring to.</i><p>Just to clarify: no, I was referring to companies which are using products from the company behind cunoFS, and which share the actual code base of the functional interposition. My point is that while this technique is complex and brittle in general, this specific code-base is incredibly battle-tested and has proved itself even in fairly arcane configurations.<p>You’re definitely right about there being some amount of resistance, but functional interposition offers some compelling advantages over all alternative solutions in terms of ease of use and unparalleled performance.</p>
]]></description><pubDate>Thu, 19 Oct 2023 15:50:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=37944544</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=37944544</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37944544</guid></item><item><title><![CDATA[New comment by klmr in "Is POSIX really outdated?"]]></title><description><![CDATA[
<p><i>> this is not a recipe for stability of your binaries</i><p>I see the point in theory, but it works incredibly well in practice. The specific technology has been used in production by major companies for years. It even carefully works around buggy software that makes incorrect assumptions for undefined behaviour.<p>(COI disclaimer: I used to work on this product; but I no longer have any stakes in it, financial or otherwise. I do still use the product, because it’s vastly superior to the alternatives.)</p>
]]></description><pubDate>Thu, 19 Oct 2023 14:38:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=37943515</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=37943515</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37943515</guid></item><item><title><![CDATA[New comment by klmr in "Is POSIX really outdated?"]]></title><description><![CDATA[
<p>> <i>but what has this to do with storage systems?</i><p>The article is about POSIX compliance (or lack thereof) of storage systems.<p>And the article does <i>not</i> imply that “POSIX … sucks”. On the contrary: the answer to the rhetoric question in the title is obviously “no”.<p>> <i>It's almost always a better idea … to write your own thin specialized glue layer between your application code and operating system APIs.</i><p>Oh, definitely. But writing good abstractions that work equally well with POSIX-compliant filesystems and with object storage is basically impossible without massive trade-offs. That’s the entire point of the product that’s advertised here: it provides a link between object storage and POSIX-compliant file access that manages these trade-offs extremely well, and it allows users to use their existing glue code for POSIX without having to deal with object storage altogether.<p>(COI disclaimer: I used to work on this product; but I no longer have any stakes in it, financial or otherwise.)</p>
]]></description><pubDate>Thu, 19 Oct 2023 14:29:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=37943406</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=37943406</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37943406</guid></item><item><title><![CDATA[New comment by klmr in "Is POSIX really outdated?"]]></title><description><![CDATA[
<p>It’s pretty clear that the article is only comparing object storage with POSIX in the context of filesystems, not with all of POSIX.</p>
]]></description><pubDate>Thu, 19 Oct 2023 13:26:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=37942582</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=37942582</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37942582</guid></item><item><title><![CDATA[New comment by klmr in "I wrote a string type"]]></title><description><![CDATA[
<p>If you save the offset (and you <i>are</i>, if you use a borrowed string) you can retrieve the original source code by re-reading the input file on the fly. This is expensive (due to IO, but especially also since you need to re-lex and recompute all offsets up to the point of the error), but it only needs to happen in case a parse error is generated, so the cost is likely negligible.<p>I’ve done this in a parser where I wanted to avoid storing line and column numbers instead of a single byte offset, but still wanted to provide the more user-friendly line and column numbers in the error message.</p>
]]></description><pubDate>Sun, 10 Sep 2023 11:33:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=37454871</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=37454871</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37454871</guid></item><item><title><![CDATA[New comment by klmr in "New targeted chemotherapy able to kill all solid tumors in preclinical research"]]></title><description><![CDATA[
<p>It’s also completely untrue. In reality the high cost is not because of greed but because of high manufacturing cost and the necessity for long hospital follow-up. Novartis is also not the only manufacturer providing CAR-T drugs at a high price. And lastly, they offer alternative payment programmes to make the therapy more affordable. <a href="https://en.wikipedia.org/wiki/CAR_T_cell#Economics" rel="nofollow noreferrer">https://en.wikipedia.org/wiki/CAR_T_cell#Economics</a></p>
]]></description><pubDate>Thu, 03 Aug 2023 09:40:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=36983510</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=36983510</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36983510</guid></item><item><title><![CDATA[New comment by klmr in "One Year with R"]]></title><description><![CDATA[
<p>> <i>I recall when the pipe operator was first being proposed the argument for it was that it'd enable workflows that felt more like Excel.</i><p>Where are you getting that from? To start with the pipe operator has been independently reinvented multiple times in R, and neither ‘magrittr’ nor ‘dplyr’ were the first to introduce the pipe operator into R. And (at least when I was exposed to it), the pipe operator had nothing whatsoever to do with Excel. Instead, it was an attempt to introduce the composability concepts from the UNIX shell and Haskell composition into R.</p>
]]></description><pubDate>Wed, 23 Mar 2022 10:10:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=30776866</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=30776866</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30776866</guid></item><item><title><![CDATA[New comment by klmr in "AirPods don't “just work”"]]></title><description><![CDATA[
<p>Yes, it switches to a different audio codec, that’s unavoidable due to bandwidth limitations. However, macOS insists on using a worse codec than necessary (SCO instead of SBC) and, at least with my MX4 headphones, this badly scrambles audio, at least intermittently. I’ve stopped using the headphone microphone because it was unbearable. I’ve tried playing with the bluetooth settings but nothing seems to fix this.</p>
]]></description><pubDate>Wed, 26 Jan 2022 15:21:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=30086539</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=30086539</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30086539</guid></item><item><title><![CDATA[New comment by klmr in "Zlib – a spiffy yet delicately unobtrusive compression library"]]></title><description><![CDATA[
<p>Next week on HN: “curl: A command line tool and library for transferring data with URL syntax”.<p>Anyway, the submission led to several very interesting technical comments so I don’t hate it.</p>
]]></description><pubDate>Wed, 26 Jan 2022 15:05:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=30086328</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=30086328</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30086328</guid></item><item><title><![CDATA[New comment by klmr in "AirPods don't “just work”"]]></title><description><![CDATA[
<p>I’m a huge fan of the Sony high-end line, and am currently using the WH-1000XM4 myself. They’re excellent, but they do share quite a few of the annoyances listed in the OP article (in particular the delay when going from call to audio and vice versa, and the audio quality degradation; though, truth be told, I believe that’s a macOS issue), and they have their own annoyances. Most prominently, the utterly useless “second device pairing” audio message that plays for a full <i>four seconds</i> and drowns out whatever else you were listening to. I routinely need to ask people on a call to repeat what they said because of this. Yet Sony arrogantly states that this message is somehow “important” and therefore can’t be disabled.</p>
]]></description><pubDate>Wed, 26 Jan 2022 14:19:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=30085654</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=30085654</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30085654</guid></item><item><title><![CDATA[New comment by klmr in "Sequencing your DNA with a USB dongle and open source code"]]></title><description><![CDATA[
<p>It’s a weird quote anyway since there <i>is</i> commercial, proprietary software for DNA sequence analysis. Just a few examples of companies in this space are Sentieon, Edico (acquired by Illumina) and Parabricks (acquired by Nvidia). And Michael knows this (they’re sufficiently well known, and his own research laid some of the earliest foundations that Parabricks would ultimately build upon) so I’m assuming the quote was taken out of context or he was talking specifically about his own lab.</p>
]]></description><pubDate>Mon, 27 Dec 2021 11:02:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=29701398</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=29701398</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29701398</guid></item><item><title><![CDATA[New comment by klmr in "Transatlantic ping faster than sending a pixel to the screen? (2012)"]]></title><description><![CDATA[
<p>I dunno, I don’t think it’s <i>that</i> obvious: the physical movement in an LCD is across tiny masses and distances (at molecular scale); the network signal has to cross a distance that’s <i>many orders of magnitude</i> larger. Comparing these two things without looking at actual number doesn’t strike me as valid, even for approximations.<p>Furthermore, if I’m reading the RTINGS.com source posted below correctly, modern LCDs have <i>smaller</i> latencies than a transatlantic ping. So not only is it not obvious, it’s no longer universally true.</p>
]]></description><pubDate>Thu, 25 Nov 2021 18:06:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=29343487</link><dc:creator>klmr</dc:creator><comments>https://news.ycombinator.com/item?id=29343487</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29343487</guid></item></channel></rss>