<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: HdS84</title><link>https://news.ycombinator.com/user?id=HdS84</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 12 Apr 2026 23:42:25 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=HdS84" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by HdS84 in "An incoherent Rust"]]></title><description><![CDATA[
<p>Personally, I am comfortable with Pythons "linter warning and we are all adults here" - it works well and I have never seen that somebody cried "I overwrote this private method and after an upgrade it did not work!". 
.Net allows it via reflection and considering that .Net Frameworks could run untrusted code it was okay that it was forbidden out of the box (since reflection was forbidden for untrusted code). But in the current world, where untrusted code does not really exist anymore? It's just legacy cruft.</p>
]]></description><pubDate>Thu, 26 Mar 2026 12:59:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=47529893</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=47529893</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47529893</guid></item><item><title><![CDATA[New comment by HdS84 in "An incoherent Rust"]]></title><description><![CDATA[
<p>There are always corner cases where you might need to do something differently. 
I had three memorable cases in my career:
1. Python 2.6x had a a stdlib bug where windows event logging did crash the process when the user had some rights set differently. Fix submitted but for the meantime we simply overwrote the private function and could ship.
2. Also python: scikit-learn had a primitive "print everything" strategy, but we need to get it into a logging framework. We overwrote their print wrapper and could ship.
3. In C#, a third party lib insisted on dumping a result to a file. We used reflection to get that as a stream.<p>All three are <i>not</i> ideal - but I think having escape hatches is important. I also think private/public is overrated. Having it as a signal is ok. Forbidding access to privates is too strong.</p>
]]></description><pubDate>Tue, 24 Mar 2026 08:27:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=47499906</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=47499906</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47499906</guid></item><item><title><![CDATA[New comment by HdS84 in "CATL expects oceanic electric ships in three years"]]></title><description><![CDATA[
<p>The germans tried that in the 60s see <a href="https://en.wikipedia.org/wiki/Otto_Hahn_(ship)" rel="nofollow">https://en.wikipedia.org/wiki/Otto_Hahn_(ship)</a>. 
It was uneconomical. 
You need specialized engineers for that, you need special permissions for ports and the important canals are off limits due to risk.</p>
]]></description><pubDate>Mon, 08 Dec 2025 15:02:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=46192989</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=46192989</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46192989</guid></item><item><title><![CDATA[New comment by HdS84 in "Asynchronous Error Handling Is Hard"]]></title><description><![CDATA[
<p>Many "developers" think print("OOOPS") is a good way to debug - so I guess it's an education problem.</p>
]]></description><pubDate>Tue, 01 Jul 2025 06:28:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=44431169</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=44431169</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44431169</guid></item><item><title><![CDATA[New comment by HdS84 in "Containerization is a Swift package for running Linux containers on macOS"]]></title><description><![CDATA[
<p>Probably not... So they will have issues, too.</p>
]]></description><pubDate>Tue, 10 Jun 2025 19:31:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=44240500</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=44240500</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44240500</guid></item><item><title><![CDATA[New comment by HdS84 in "Containerization is a Swift package for running Linux containers on macOS"]]></title><description><![CDATA[
<p>Yes, halfway decent security runs counter to most people's inclinations. Like osha or medecine rules. So enforcement is important, though it is annoying</p>
]]></description><pubDate>Tue, 10 Jun 2025 19:30:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=44240495</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=44240495</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44240495</guid></item><item><title><![CDATA[New comment by HdS84 in "Conformance checking at MongoDB: Testing that our code matches our TLA+ specs"]]></title><description><![CDATA[
<p>Thanks! I am a little disappointed that it seems to be trash :(</p>
]]></description><pubDate>Tue, 10 Jun 2025 07:06:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=44233595</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=44233595</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44233595</guid></item><item><title><![CDATA[New comment by HdS84 in "Containerization is a Swift package for running Linux containers on macOS"]]></title><description><![CDATA[
<p>We introduced MDM for our Mac boxes early this year. Over half(!) had outdated mac versions and missed multiple major updates. Before that - it was always really obvious that you needed to run the newest version ASAP (asap=All dev tools run on the newest version, which was not a given, so a few weeks delay was ok).
We have lots of linux boxes and I suspect their patch state is even worse - but how to check that? There are a dozen distros and a few self build systems...</p>
]]></description><pubDate>Tue, 10 Jun 2025 06:54:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=44233508</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=44233508</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44233508</guid></item><item><title><![CDATA[New comment by HdS84 in "Marines being mobilized in response to LA protests"]]></title><description><![CDATA[
<p>History shows that to simply not the case.
Individuals are bringing down democracies all the time. Especially presidential democracies are super vulnerable to this because the president has outsized power compared to the other branches of the government.</p>
]]></description><pubDate>Tue, 10 Jun 2025 06:09:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=44233163</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=44233163</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44233163</guid></item><item><title><![CDATA[New comment by HdS84 in "Marines being mobilized in response to LA protests"]]></title><description><![CDATA[
<p>I studied political sciences twenty years ago - even then it was established consensus that presidential democracies are vulnerable to authoritarian takeover. The position has too much power, is easily abused and there are not enough checks on that position. The US escaped that problem for a long time due to strong cultural norms - but you abolished them (i.e. gatekeeping the presidential nominees and replacing that with a televised drama) and working checks (but again, now party in congress and president march in lockstep).
FPTP and gerrymandering just exacerbate that problem and entrench a very unhealthy "the winner takes it all without need for compromise" culture.<p>You need electoral reform post haste - but I do not seed even a start to that discussion, so I think you are hosed. Might not be Dictator Trump, but maybe Vance or some other guy who succeeds in this game.<p>And all who cry "if the democrats win everything will be ok again!!!!" - not it won't. The democrats are too slow to recognize the problem and even if they eventually do, there are no majorities to change the system. And finally: Democracy needs at least two parties - democrats cannot be expected to keep branches of the government forever. You need a sane and democratic second party. Republicans ain't it - but the current system gives them success, so why change?!</p>
]]></description><pubDate>Tue, 10 Jun 2025 06:05:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=44233138</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=44233138</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44233138</guid></item><item><title><![CDATA[New comment by HdS84 in "Conformance checking at MongoDB: Testing that our code matches our TLA+ specs"]]></title><description><![CDATA[
<p>Did you evaluate RavenDB? Just out of interest</p>
]]></description><pubDate>Tue, 03 Jun 2025 12:44:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=44169381</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=44169381</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44169381</guid></item><item><title><![CDATA[New comment by HdS84 in "The Ingredients of a Productive Monorepo"]]></title><description><![CDATA[
<p>Hey, do you think Gitlab should do anything except running after the next trend and develop shitty not-solutions for that?
Why, that could improve Gitlab. We cannot have that!</p>
]]></description><pubDate>Wed, 28 May 2025 07:10:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=44113403</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=44113403</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44113403</guid></item><item><title><![CDATA[New comment by HdS84 in "I Don't Like NumPy"]]></title><description><![CDATA[
<p>As a simple example : once upon a time a
We needed to generate a sort of heat map.
Doing it in pure python takes a few seconds at the desired size (few thousand cells where each cell needs a small formula). Dropping to numpy braucht that downs to hundreds of milliseconds. Pushing it to pure c got us to tens of milliseconds.</p>
]]></description><pubDate>Thu, 15 May 2025 19:48:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=43998612</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=43998612</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43998612</guid></item><item><title><![CDATA[New comment by HdS84 in "I don't like NumPy"]]></title><description><![CDATA[
<p>R with its 4(?) class systems enters the chat.</p>
]]></description><pubDate>Thu, 15 May 2025 19:44:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=43998570</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=43998570</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43998570</guid></item><item><title><![CDATA[New comment by HdS84 in "Inheritance was invented as a performance hack (2021)"]]></title><description><![CDATA[
<p>I don't think Inheritance is always bad - sometimes it's a useful tool. But it was definitely overused and composition, interfaces work much better for most problems.<p>Inheritance really shines when you want to encapsulate behaviour behind a common interface and also provide a standard implementation.
I.e: I once wrote a RN app which talked to ~10 vacuum robots. All of these robots behaved mostly the same, but each was different in a unique way.
E.g. 9 robots returned to station when the command "STOP" was send, one would just stop in place. Or some robots would rotate 90 degrees when a "LEFT" command was send, others only 30 degrees.
We wrote a base class which exposed all needed commands and each robot had an inherited class which overwrote the parts which needed adjustment (e.g. sending left three times so it's also 90 degrees or send "MOVE TO STATION" instead of "STOP").</p>
]]></description><pubDate>Thu, 08 May 2025 06:36:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=43923643</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=43923643</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43923643</guid></item><item><title><![CDATA[New comment by HdS84 in "Graceful Shutdown in Go: Practical Patterns"]]></title><description><![CDATA[
<p>Overall, I think centralized logging and metrics are super valuable. But stacks are all missing the mark.
For example, every damn log message has hundreds of fields,. Most of which never change. Why not push this information once, on service startup an not with every log message?
OK, obviously the current system provides huge bills to the benefit of the company or's offering these services.</p>
]]></description><pubDate>Mon, 05 May 2025 14:37:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=43895619</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=43895619</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43895619</guid></item><item><title><![CDATA[New comment by HdS84 in "Why Flatpak apps use so much disk space on Linux"]]></title><description><![CDATA[
<p>Exactly. In theory, the original windows 10 model is the one most users want:  a perpetually up to date os which runs also up to date software. Yes, of there might be reasons the pin something to an older version, but it this pc is on a network, security alone tells you to update ASAP.
Don't get me wrong, a working package manager is a very good addition to this model. But currently, most of the time setting up a ltm Linux system I spent on updating ancient git/docker whatever versions.</p>
]]></description><pubDate>Sun, 04 May 2025 21:39:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=43889805</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=43889805</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43889805</guid></item><item><title><![CDATA[New comment by HdS84 in "The True Size Of"]]></title><description><![CDATA[
<p>I only visited Realschüler and switched to gymnasium in 11.
Tbh I don't remember much of my geography lessons, was not my primary interest in school</p>
]]></description><pubDate>Wed, 30 Apr 2025 20:03:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=43850041</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=43850041</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43850041</guid></item><item><title><![CDATA[New comment by HdS84 in "The True Size Of"]]></title><description><![CDATA[
<p>German is Mercator only. Learned about different projection on the internet years after school</p>
]]></description><pubDate>Wed, 30 Apr 2025 14:35:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=43845865</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=43845865</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43845865</guid></item><item><title><![CDATA[New comment by HdS84 in "The True Size Of"]]></title><description><![CDATA[
<p>I wish schools would stop using it so much. Mercator is useful, yes. But having good size comparisons is much more important for most everyday tasks.</p>
]]></description><pubDate>Wed, 30 Apr 2025 11:27:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=43843684</link><dc:creator>HdS84</dc:creator><comments>https://news.ycombinator.com/item?id=43843684</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43843684</guid></item></channel></rss>