<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: rubber_duck</title><link>https://news.ycombinator.com/user?id=rubber_duck</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 08 Apr 2026 10:37:21 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=rubber_duck" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by rubber_duck in "C++20 has been approved"]]></title><description><![CDATA[
<p>My point is that in a good code base types should be obvious from context. If you don't know the context then you will be slow (and make a lot of mistakes) no matter what the type say because you'll likely misunderstand the domain logic (context) unless it's something trivial. I would hate to work somewhere where I'm expected to randomly drop into micro services I didn't have anything to do with and debug/support them - sounds stressful.</p>
]]></description><pubDate>Sun, 06 Sep 2020 21:20:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=24394769</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24394769</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24394769</guid></item><item><title><![CDATA[New comment by rubber_duck in "C++20 has been approved"]]></title><description><![CDATA[
<p>Pointless typing and verbose code has nothing to do with writing code - it's all about code being readable.<p>Java type declarations can be 20+ characers - just scanning through the code and having to skip all that junk makes my eyes more tired reading through. Types are implicitly deducible when you know the codebase 90% of the time (and should be added when they are not), and if you don't know the context you will be slow no matter what.</p>
]]></description><pubDate>Sun, 06 Sep 2020 20:39:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=24394476</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24394476</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24394476</guid></item><item><title><![CDATA[New comment by rubber_duck in "C++20 has been approved"]]></title><description><![CDATA[
<p>I'm not saying Java should have introduced ground breaking features - I'm saying they made design mistakes that they should have corrected far sooner (var/type inference) and refused to add some basic features (lambdas) that would have made the code a lot better for it.<p>They did add those features eventually (Java 8) - about 8 years behind C# (since C# 3.0)</p>
]]></description><pubDate>Sun, 06 Sep 2020 10:57:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=24390488</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24390488</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24390488</guid></item><item><title><![CDATA[New comment by rubber_duck in "C++20 has been approved"]]></title><description><![CDATA[
<p>Not really - Java designers were just plain wrong and it took forever to admit it - things like local type inference (var) made the language pointlessly verbose for ages, and simple features like lambdas made the standard libraries terrible.<p>There was a 8 year gap where C# users could use stuff like enumerable operators while Java users were stuck in the stone age of writing loops for collection manipulation in a high level language ...</p>
]]></description><pubDate>Sun, 06 Sep 2020 10:53:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=24390470</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24390470</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24390470</guid></item><item><title><![CDATA[New comment by rubber_duck in "C++20 has been approved"]]></title><description><![CDATA[
<p>When you add those to the mix you're dealing with destructors, ownership, etc. so I don't see anything wrong with using stuff like unique_ptr/shared_ptr.<p>And C tends to reinvent object oriented programming with each library so you might as well use language defined classes.<p>So I don't really see the point.<p>You don't need to use stuff like concepts, or "showing off how smart I can be with template libraries" (looking at boost), but C++ has a lot of features that make it much more productive than C.</p>
]]></description><pubDate>Sun, 06 Sep 2020 10:29:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=24390364</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24390364</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24390364</guid></item><item><title><![CDATA[New comment by rubber_duck in "C++20 has been approved"]]></title><description><![CDATA[
<p>>The Java strategy of being very conservative about what you add to the frontend would have done C++ a lot of good after C++11 (or even before that).<p>Java lost a lot of mindshare to C# and Kotlin due to that "strategy".</p>
]]></description><pubDate>Sun, 06 Sep 2020 10:23:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=24390351</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24390351</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24390351</guid></item><item><title><![CDATA[New comment by rubber_duck in "SoftBank unmasked as ‘Nasdaq whale’ that stoked tech rally"]]></title><description><![CDATA[
<p>I'd guess there is there is too much money in it due to the fact that central banks killed interest rates and started buying government bonds as needed - where pension funds would hold those they now need to search positivie returns and there's just not enough good bets there - would explain why the valuations are sky high</p>
]]></description><pubDate>Fri, 04 Sep 2020 22:58:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=24379744</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24379744</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24379744</guid></item><item><title><![CDATA[New comment by rubber_duck in "Islamic State: Giant library of group's online propaganda discovered"]]></title><description><![CDATA[
<p>>  and someone brings up the fact that ISIS used one of them...<p>They used Facebook, Twitter and YT for propaganda and Gmail for coordination (that thing about saving a mail draft on gmail instead of sending it), it's obvious the other side isn't using logic to make the argument (but beliefs, feelings or simply pushing an agenda) so using logic to argue back is pointless.</p>
]]></description><pubDate>Fri, 04 Sep 2020 08:45:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=24373030</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24373030</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24373030</guid></item><item><title><![CDATA[New comment by rubber_duck in "Small nuclear reactors: tiny NuScale reactor gets safety approval"]]></title><description><![CDATA[
<p>>Yes, it gains you some of the economics of factory construction and that you can start small and scale a location, but on the other side you lose that again because you lose the economics of scale that traditional PWR gets.<p>You mean they lose operational efficiency ? Economies of scale come from the ability to mass produce.<p>You forgot to mention the largest differentiator - eliminates the possibility of a global catastrophe.</p>
]]></description><pubDate>Thu, 03 Sep 2020 19:02:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=24367501</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24367501</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24367501</guid></item><item><title><![CDATA[New comment by rubber_duck in "Small nuclear reactors: tiny NuScale reactor gets safety approval"]]></title><description><![CDATA[
<p>Thing is this kind of design benefits massively from economies of scale, same kind of thing that has drawn the price of PV down and other green energy.</p>
]]></description><pubDate>Thu, 03 Sep 2020 18:53:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=24367387</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24367387</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24367387</guid></item><item><title><![CDATA[New comment by rubber_duck in "Show HN: ORM for TypeScript with no query-builder, supporting full SQL queries"]]></title><description><![CDATA[
<p>>As I said in another thread, the problem is not writing the SQL. The problem is everything else after you have written it (applying on deploy, automating for other's dev envs, rollback, etc)<p>What's wrong with migration managers ? They handle all you mentioned just fine. The only problem I've seen with this approach were when working on a team that didn't have proper CI flow, then it was possible for people to check in bad migrations and screw up branches, etc.<p>I've worked with both approaches in multiple languages, and frankly I prefer the no-magic migration manager approach.<p>Migrations automatically generated from model also mean your DB is tied to your app, which I'm not a fan of, if anything the reverse should be true, and the fat model approaches of rails are terrible IMO (I haven't used Django for anything serious in over 10 years so I don't remember how fat their model layer is - I know it has enough metadata to generate the admin CRUD but don't remember if it also encourages having logic on models).<p>The best solution I've seen is F# which uses dynamic type providers (basically compiler plugin) to auto-generate models from DB/schema at compile time, and yesql in clojure (clojure being dynamic and built arround working with data using SQL results inside of it is natural and amazing).</p>
]]></description><pubDate>Thu, 03 Sep 2020 15:50:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=24365217</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24365217</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24365217</guid></item><item><title><![CDATA[New comment by rubber_duck in "Nvidia Unveils GeForce RTX 30 Series GPUs"]]></title><description><![CDATA[
<p>IMO watching a few sci-fi movies in 4k+ looks ridiculous - I start noticing the difference between CGI environment and actors and it kills the immersion completely, it goes from "that character is really there" to "this guy is larping in front of a green screen"</p>
]]></description><pubDate>Tue, 01 Sep 2020 20:43:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=24346841</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24346841</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24346841</guid></item><item><title><![CDATA[New comment by rubber_duck in "Italian Ruby"]]></title><description><![CDATA[
<p>> I am really stoked for the future of programming languages, when localization is just a matter of translating some words.<p>My experience with localised codebases (in my native language) have been horrifying - like it or not terminology is developed in EN, you either get unnatural sounding "borrow" words and the translation is pointless or worse you get people coining new terminology nobody but them understands. Not to mention fragmented communities, knowledge bases, etc.<p>IMO localised codebases would be a regression not progress and I dread every time I see Chinese in a codebase (simply because they are a large enough market to split the dev community)</p>
]]></description><pubDate>Mon, 31 Aug 2020 14:11:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=24331610</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24331610</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24331610</guid></item><item><title><![CDATA[New comment by rubber_duck in "The “menu engineers” who optimize restaurant revenue"]]></title><description><![CDATA[
<p>>Simply, if a restaurant offers 20 different dishes, it means each dish gets 20x less attention than if you had only one choice. Less fresh ingredients, less time perfecting the recipe and preparation. Serving only one dish makes things simpler and the restaurant is going to spend more energy making sure it is worth it.<p>One of my favourite places has a decently sized menu (would say 40 items on there including starters/sides/deserts) while they aren't "the best" at anything, it's really good and I love the atmosphere.<p>I like the flexibility and that I can invite anyone there since the selection is varied and quality is reliable. I can't call my vegan sister to a smokehouse even if their ribs are the best I tried, can't take my wife to a fish restaurant but my friends could be in the mood for fish, I have no clue what my in-laws will want to eat when I have to take them somewhere, etc.</p>
]]></description><pubDate>Mon, 31 Aug 2020 05:31:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=24328753</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24328753</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24328753</guid></item><item><title><![CDATA[New comment by rubber_duck in "Melancholy of obsolete futures: on Soviet Brutalism"]]></title><description><![CDATA[
<p>You make a good point !<p>The thing I would put on communism is reduction of wealth and standards, so when the west rebuilt and went forward we got stuck with concrete slabs.<p>It's just shocking to me how the architecture and aesthetics regressed and never really recovered.<p>Here's an example of a building from 30s that I would consider built for common folk but inspired : <a href="http://www.lokalpatrioti-rijeka.com/forum/download/file.php?id=22612" rel="nofollow">http://www.lokalpatrioti-rijeka.com/forum/download/file.php?...</a><p>It's not grandiose - but it follows the hill line and the corner perfectly, it has distinctive visual elements. Compare it to that concrete slab you see in the background which the city is full off.</p>
]]></description><pubDate>Mon, 31 Aug 2020 02:07:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=24327858</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24327858</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24327858</guid></item><item><title><![CDATA[New comment by rubber_duck in "Multi-Tenant Architectures"]]></title><description><![CDATA[
<p>True, I'm just not sure that I'd trust the DB isolation once the user has SQL injection. I never saw a SQL injection report on a project (well since the PHP days) ORMs solved this for the most part, but I did see multiple instances of accidental data leaks from bugs on different projects.<p>It looks like you could also use SET SESSION AUTHORISATION for this but I haven't used it so I don't know how this works with data access/pooling</p>
]]></description><pubDate>Mon, 31 Aug 2020 01:18:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=24327572</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24327572</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24327572</guid></item><item><title><![CDATA[New comment by rubber_duck in "Multi-Tenant Architectures"]]></title><description><![CDATA[
<p>Well if you have SQL injection bugs then you have bigger issues to worry about - I've used this to enforce multi-tenancy on database access level (like another poster said - preventing queries accessing wrong data by accident, which is far more common I think).</p>
]]></description><pubDate>Sun, 30 Aug 2020 23:08:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=24326792</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24326792</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24326792</guid></item><item><title><![CDATA[New comment by rubber_duck in "Multi-Tenant Architectures"]]></title><description><![CDATA[
<p>>That makes connection pooling difficult and presents its own security issues on limiting the tenant to only their DB user.<p>Can you use SET LOCAL ROLE <user> on each transaction ?</p>
]]></description><pubDate>Sun, 30 Aug 2020 21:50:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=24326215</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24326215</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24326215</guid></item><item><title><![CDATA[New comment by rubber_duck in "After 48 years, Democrats endorse nuclear energy in platform"]]></title><description><![CDATA[
<p>My uneducated gut feeling is that the only way nuclear is going to be relevant is if they perfect micro-nuclear reactors.<p>I remember reading about these 10 years ago [1], and have seen a few more since. Basically they propose small "nuclear batteries" kin of design - this avoids catastrophic scenarios and benefits greatly from economies of scale.<p>The only issue I see with this approach is political - you would have a lot more nuclear material spread around, spreading this kind of teach where it's easily accessible and hard to protect doesn't sound reasonable with the political situation in the world.<p>[1] <a href="https://en.wikipedia.org/wiki/Toshiba_4S" rel="nofollow">https://en.wikipedia.org/wiki/Toshiba_4S</a></p>
]]></description><pubDate>Sun, 30 Aug 2020 21:37:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=24326129</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24326129</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24326129</guid></item><item><title><![CDATA[New comment by rubber_duck in "Remote Code Execution in Slack desktop apps"]]></title><description><![CDATA[
<p>That's kind bad - first of all 50$ can be really low depending on the region, but more importantly this disregards the time spend on looking for exploits that don't pan out.<p>So I would multiply that 50$ by at least 4.<p>But still like the other said bugs should pay by severity not by time spent.</p>
]]></description><pubDate>Sat, 29 Aug 2020 17:39:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=24317866</link><dc:creator>rubber_duck</dc:creator><comments>https://news.ycombinator.com/item?id=24317866</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24317866</guid></item></channel></rss>