<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: acidbaseextract</title><link>https://news.ycombinator.com/user?id=acidbaseextract</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 19 Apr 2026 21:52:46 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=acidbaseextract" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by acidbaseextract in "A database for 2022"]]></title><description><![CDATA[
<p>The normal way? You can implement whatever kind of index you like — b-tree index, bitmap index, hash index are all useful and conceptually simple if you're familiar with the backing data structures.<p>For example, if you want to index a "foreign key" id stored in each "record" in a JSON array of objects, you build a hash table from the FK id values to the JSON array indices of the objects that have that id. It can be as stupid simple as an `fk_index = defaultdict(set)` somewhere in your program, to use a Pythonism.<p>Now when someone wants JSON objects in that array matching a given FK id, they can just O(1) look in the index to know the position of records that match. Much better than an O(N) scan of every item in the array.<p>Of course you have to to maintain the index as writes to the JSON happen, but that's not bad once you understand how things work. No real secret sauce.</p>
]]></description><pubDate>Sat, 02 Apr 2022 05:17:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=30885994</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30885994</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30885994</guid></item><item><title><![CDATA[New comment by acidbaseextract in "But life had other plans"]]></title><description><![CDATA[
<p>I'm so sorry. Thank you for sharing your story.</p>
]]></description><pubDate>Thu, 24 Mar 2022 10:11:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=30787928</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30787928</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30787928</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Ask HN: What do you wish you had done/known in your 30s?"]]></title><description><![CDATA[
<p><i>I don't regret putting it off until my 40s because it let me find a person I want to have a family with</i><p>Thank you for including this tidbit. I'm a man in my early 30s interested in having kids and recently discovered that I've poorly vetted my 5+ year SO's interest in having kids. Her "yeah, I'm hypothetically interested" has become "hard not interested".<p>The requirement to break up with her if I want kids is deeply painful, but the real source of my dread is the feeling that I won't then be able to find someone good in time. I'm very glad you found someone good to have a family with.</p>
]]></description><pubDate>Wed, 23 Mar 2022 21:58:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=30784020</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30784020</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30784020</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Hooks Considered Harmful"]]></title><description><![CDATA[
<p>I'll give you my answers to your questions as someone writing production JS/TS. Answering your questions is precisely illustrative of why hooks issues are hard to catch.<p><i>unexpected null/undefined values</i><p>This is an issue and has led to bugs. Switching to TS and making the compiler flag them fixed it.<p><i>mistyping variable or attribute names</i><p>Not an issue. Code obviously breaks if you have incorrect names.<p><i>using the wrong number of equal signs</i><p>This is an issue but causes few bugs. Linting generally catches it, though cute boolean punning still bites us.<p><i>failing to catch errors and handle rejected promises, etc.</i><p>This is an issue and has led to bugs.<p>Pretty much anything where there's some implicit details that the compiler or linters can't reason about programmers find a way to get wrong. One thing I like about the hooks linter setup is that what it encourages you to do by default will prevent most bugs, only lead to potential performance issues, unnecessary rerenders, unnecessary refetches.</p>
]]></description><pubDate>Mon, 21 Mar 2022 16:43:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=30756286</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30756286</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30756286</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Hooks Considered Harmful"]]></title><description><![CDATA[
<p>I'm curious if you've used useDeepCompareEffect, the use-deep-compare-effect npm package? I've found that it is pretty reasonable foolproofing for many of these identity questions. I'm well aware of Dan Abramov's objections to the deep equality checking [1] but I still find it a bit easier for me and other devs to reason about when doing things like data fetching.<p>[1] <a href="https://twitter.com/dan_abramov/status/1104414469629898754" rel="nofollow">https://twitter.com/dan_abramov/status/1104414469629898754</a></p>
]]></description><pubDate>Mon, 21 Mar 2022 16:30:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=30756074</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30756074</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30756074</guid></item><item><title><![CDATA[New comment by acidbaseextract in "I think US college education is nearer to collapsing than it appears"]]></title><description><![CDATA[
<p>Polymatter recently had a great video on the way the college ranking system is a hustle for foreign student money, and just how heavily it distorts colleges incentives: <a href="https://www.youtube.com/watch?v=cQWlnTyOSig" rel="nofollow">https://www.youtube.com/watch?v=cQWlnTyOSig</a></p>
]]></description><pubDate>Sun, 20 Mar 2022 19:47:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=30745955</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30745955</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30745955</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Podman can transfer container images without a registry"]]></title><description><![CDATA[
<p>Wut? I just make websites man.<p>I don't want to be dismissive, but I hate deploying my applications for this reason. I'm an application developer. I'm not averse to infrastructure as code, and containerization, and I'm happy to do ops for my preferred stack. But I can't learn all this stuff too.</p>
]]></description><pubDate>Tue, 15 Mar 2022 06:57:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=30682390</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30682390</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30682390</guid></item><item><title><![CDATA[The BeOS file system, an OS geek retrospective (2018)]]></title><description><![CDATA[
<p>Article URL: <a href="https://arstechnica.com/information-technology/2018/07/the-beos-filesystem/">https://arstechnica.com/information-technology/2018/07/the-beos-filesystem/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=30680035">https://news.ycombinator.com/item?id=30680035</a></p>
<p>Points: 9</p>
<p># Comments: 1</p>
]]></description><pubDate>Mon, 14 Mar 2022 23:50:39 +0000</pubDate><link>https://arstechnica.com/information-technology/2018/07/the-beos-filesystem/</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30680035</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30680035</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Apple M1 Ultra Meanings and Consequences"]]></title><description><![CDATA[
<p>Gassée also started Be Inc which created BeOS. Beyond being great in and of itself, BeOS was also slated to be the successor to Mac OS 9. If you're an operating system or file system nerd, you will find it very worth looking into BeOS. Gassée overplayed his hand and Apple's acquisition of Be Inc fell through.<p>Apple ultimately went with the NeXT / Steve Jobs combo, quite wisely, but for a long time there was a whole gang of BeOS fanboys lamenting that decision.</p>
]]></description><pubDate>Mon, 14 Mar 2022 23:45:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=30680011</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30680011</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30680011</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Universal Chiplet Interconnect Express UCIe 1.0 Launched"]]></title><description><![CDATA[
<p>You mean like SoCs or SiPs? <a href="https://en.wikipedia.org/wiki/System_on_a_chip" rel="nofollow">https://en.wikipedia.org/wiki/System_on_a_chip</a> <a href="https://en.wikipedia.org/wiki/System_in_a_package" rel="nofollow">https://en.wikipedia.org/wiki/System_in_a_package</a></p>
]]></description><pubDate>Fri, 04 Mar 2022 01:43:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=30549562</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30549562</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30549562</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Building data-centric apps with a reactive relational database"]]></title><description><![CDATA[
<p>I've always had a soft spot in my heart for PHP style "raw query in the template". Even as we've moved away from that I feel like GraphQL recapitulates a lot of the reasons why having queries tightly bound to views is convenient.<p>It feels like "put the template in the query" is a great Uno reverse to "put the query in the template" and the associated issues it brings, but I'll have to think on the consequences more. Thought provoking article!</p>
]]></description><pubDate>Wed, 02 Mar 2022 22:04:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=30533850</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30533850</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30533850</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Hooks: React’s Do-Notation"]]></title><description><![CDATA[
<p>The progressive C++ification of JS is scary and exciting in equal measure.</p>
]]></description><pubDate>Mon, 28 Feb 2022 07:04:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=30497160</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30497160</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30497160</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Moving the Linux Kernel to Modern C"]]></title><description><![CDATA[
<p>It's been a long time since I was there, but I thought there were plenty of 15,000 call site refactorings done in a single final CL. Not that the Linux kernel should do the same!</p>
]]></description><pubDate>Thu, 24 Feb 2022 22:41:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=30461354</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=30461354</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30461354</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Professional maintainers: a wake-up call"]]></title><description><![CDATA[
<p>I don't know why you're getting downvoted. This seems like exactly the right move.</p>
]]></description><pubDate>Sun, 12 Dec 2021 01:35:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=29526205</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=29526205</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29526205</guid></item><item><title><![CDATA[New comment by acidbaseextract in "The future of Python build systems and Gentoo"]]></title><description><![CDATA[
<p>Yeah, that little bit made my jaw drop. Package manifests in a format the language doesn't have stdlib support for is insane.</p>
]]></description><pubDate>Fri, 10 Dec 2021 19:32:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=29514412</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=29514412</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29514412</guid></item><item><title><![CDATA[New comment by acidbaseextract in "PDM: A Modern Python Package Manager"]]></title><description><![CDATA[
<p>No shenanigans for any library-ish code with few dependencies that targets relatively modern Python.<p>I've had one or two fundamental version conflicts with a 5+ year old application with 100+ dependencies and a decent amount of legacy stuff. They were a pain in the ass, and the sdispater's stance on not allowing overrides is a pain in the ass. We ended up forking the upstream libraries to resolve the version conflict.<p>With all of that, poetry is amazing and a huge step forward. I'd advocate it wholeheartedly.</p>
]]></description><pubDate>Thu, 09 Dec 2021 22:17:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=29503739</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=29503739</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29503739</guid></item><item><title><![CDATA[New comment by acidbaseextract in "Corded headphones are making an unexpected return"]]></title><description><![CDATA[
<p>For those who are into this kind of thing, here's a 25 minute mini-documentary of the US electrical system's history and problems. It's more focused on wiring, but has a lot to say on plugs: <a href="https://youtu.be/K_q-xnYRugQ" rel="nofollow">https://youtu.be/K_q-xnYRugQ</a></p>
]]></description><pubDate>Mon, 15 Nov 2021 04:54:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=29223857</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=29223857</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29223857</guid></item><item><title><![CDATA[New comment by acidbaseextract in "You Shouldn’t Use GraphQL"]]></title><description><![CDATA[
<p>I think the GitHub GraphQL API docs are particularly badly organized and basically show the API as a bucket of stuff, rather than as CRUD entities (which is how it's actually organized). I don't think this a GraphQL issue.</p>
]]></description><pubDate>Fri, 12 Nov 2021 22:14:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=29205173</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=29205173</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29205173</guid></item><item><title><![CDATA[New comment by acidbaseextract in "You Shouldn’t Use GraphQL"]]></title><description><![CDATA[
<p>FTA, though the misspellings are frustrating:<p><i>In a GraphQL API, tools such as Dataloader allow you to batch and cache database calls. But in some cases, even this [isn't] enough and the only solution is to block queries by calculating a maximum execution cost or query [depth]. And any of these solutions will depend on the library you’re using.</i></p>
]]></description><pubDate>Fri, 12 Nov 2021 22:03:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=29205064</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=29205064</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29205064</guid></item><item><title><![CDATA[New comment by acidbaseextract in "A quantum walk down Wall Street"]]></title><description><![CDATA[
<p><a href="https://archive.md/Ye8v3" rel="nofollow">https://archive.md/Ye8v3</a></p>
]]></description><pubDate>Mon, 08 Nov 2021 05:26:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=29146326</link><dc:creator>acidbaseextract</dc:creator><comments>https://news.ycombinator.com/item?id=29146326</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29146326</guid></item></channel></rss>