<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: postgressomethi</title><link>https://news.ycombinator.com/user?id=postgressomethi</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 03 May 2026 08:42:48 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=postgressomethi" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by postgressomethi in "An unordered list of things I miss in Go"]]></title><description><![CDATA[
<p>I always thought there should be a two-arg overload of new, so you could write new(bool, true) or new(int, 20).  Would solve the problem without any trickery.</p>
]]></description><pubDate>Sat, 17 Aug 2024 23:27:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=41278886</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=41278886</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41278886</guid></item><item><title><![CDATA[New comment by postgressomethi in "Nintendo blitzes GitHub with over 8k emulator-related DMCA takedowns"]]></title><description><![CDATA[
<p>A Nintendo Switch is a non-hardware decryption system?</p>
]]></description><pubDate>Mon, 06 May 2024 14:45:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=40275295</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=40275295</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40275295</guid></item><item><title><![CDATA[New comment by postgressomethi in "Nintendo blitzes GitHub with over 8k emulator-related DMCA takedowns"]]></title><description><![CDATA[
<p>Could "effectively controls access" be attacked here? The purpose of the hardware is not to control access.</p>
]]></description><pubDate>Sat, 04 May 2024 08:07:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=40255857</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=40255857</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40255857</guid></item><item><title><![CDATA[New comment by postgressomethi in "Common DB schema change mistakes in Postgres"]]></title><description><![CDATA[
<p>> You might think adding a UNIQUE index would cause the "losing" xact to get constraint errors, but instead both xacts succeed and no longer have a race condition.<p>This is not true.  What happens is that the (sub)transaction that loses the race to the index is aborted:<p><pre><code>  =# INSERT INTO foo (bar) (SELECT max(bar) + 1 FROM foo);
  ERROR:  duplicate key value violates unique constraint "foo_bar_idx"
  DETAIL:  Key (bar)=(2) already exists.</code></pre></p>
]]></description><pubDate>Tue, 30 Apr 2024 02:36:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=40206688</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=40206688</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40206688</guid></item><item><title><![CDATA[New comment by postgressomethi in "There has never been a better time to game on Linux"]]></title><description><![CDATA[
<p>> Imagine booting your computer and having to give an email to login offline.<p>As much as I hate what modern Windows has become, this is not actually true.  If you know the correct sequence of clicks you can avoid this.  Not defending this bullshit, though.</p>
]]></description><pubDate>Fri, 12 Jan 2024 19:44:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=38972952</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=38972952</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38972952</guid></item><item><title><![CDATA[New comment by postgressomethi in "How I destroyed the company's DB (a stupid SQL mistake)"]]></title><description><![CDATA[
<p>Ah, now I see I responded to the wrong message.</p>
]]></description><pubDate>Mon, 01 Jan 2024 20:09:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=38834922</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=38834922</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38834922</guid></item><item><title><![CDATA[New comment by postgressomethi in "How I destroyed the company's DB (a stupid SQL mistake)"]]></title><description><![CDATA[
<p>I'm sorry, I wasn't being clear.  Any column meaning "this row is to be ignored for most applications" is an annoying pattern.</p>
]]></description><pubDate>Mon, 01 Jan 2024 19:57:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=38834824</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=38834824</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38834824</guid></item><item><title><![CDATA[New comment by postgressomethi in "How I destroyed the company's DB (a stupid SQL mistake)"]]></title><description><![CDATA[
<p>While that's kind of convenient in a lot of ways, it also makes querying the database really annoying, since you have to remember to add the filtering to every single query or you're screwed.  Personally, I wish there was a database-implementation-acknowledged "deleted" flag, which could even expose a "history table"-like interface.</p>
]]></description><pubDate>Mon, 01 Jan 2024 19:35:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=38834650</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=38834650</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38834650</guid></item><item><title><![CDATA[New comment by postgressomethi in "Ways to capture changes in Postgres"]]></title><description><![CDATA[
<p>Sequences kind of have the same issue, because you don't know if a gap is because of a rollback or an uncommitted transaction.  Though with some logic you can do a pretty good job at this with sequences.  And then you're not in the realm of "simple" anymore, at all.</p>
]]></description><pubDate>Fri, 22 Sep 2023 13:37:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=37611907</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=37611907</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37611907</guid></item><item><title><![CDATA[New comment by postgressomethi in "Ways to capture changes in Postgres"]]></title><description><![CDATA[
<p>Polling an updated_at column is not robust in its most simple form, as transactions are not guaranteed to commit in that order.</p>
]]></description><pubDate>Fri, 22 Sep 2023 13:00:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=37611432</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=37611432</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37611432</guid></item><item><title><![CDATA[New comment by postgressomethi in "Zero-downtime schema migrations in Postgres using views"]]></title><description><![CDATA[
<p>No.</p>
]]></description><pubDate>Thu, 17 Jun 2021 22:39:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=27545235</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=27545235</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27545235</guid></item><item><title><![CDATA[New comment by postgressomethi in "Zero-downtime schema migrations in Postgres using views"]]></title><description><![CDATA[
<p>That's still, in my opinion, overkill and unnecessary.</p>
]]></description><pubDate>Thu, 17 Jun 2021 09:50:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=27537889</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=27537889</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27537889</guid></item><item><title><![CDATA[New comment by postgressomethi in "Zero-downtime schema migrations in Postgres using views"]]></title><description><![CDATA[
<p>> Adding a column, changing column's nullability and adding/changing constraints is already zero-downtime in PG.<p>Making a previously nullable column NOT NULL is not zero downtime.  Neither are adding constraints -- except in some cases with NOT VALID, which isn't quite the same thing.<p>> Dropping a column and changing the data type are not zero-downtime.<p>Dropping a column is zero downtime.</p>
]]></description><pubDate>Wed, 16 Jun 2021 23:08:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=27534526</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=27534526</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27534526</guid></item><item><title><![CDATA[New comment by postgressomethi in "Zero-downtime schema migrations in Postgres using views"]]></title><description><![CDATA[
<p>I don't like really solutions which force everything into a single schema just to do migrations.  They shouldn't be that difficult.<p>In this particular case, rather than making everything a view all the time, you could just use views during a migration window to get the same effect. Replace the table with a view which has all the columns plus the new name as an alias for the old one, migrate all the clients, replace the view with the table with the column renamed. No special permanent crap necessary.</p>
]]></description><pubDate>Wed, 16 Jun 2021 23:01:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=27534476</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=27534476</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27534476</guid></item><item><title><![CDATA[New comment by postgressomethi in "Do you really need Redis? How to get away with just PostgreSQL"]]></title><description><![CDATA[
<p>> This approach doesn’t work for LISTEN because typically a client will listen for its entire lifecycle so you can’t share connections in a pool.<p>But you only need one connection for LISTEN per database, total.  So I'm confused why this is made out to be a big issue.</p>
]]></description><pubDate>Sun, 13 Jun 2021 08:09:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=27490752</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=27490752</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27490752</guid></item><item><title><![CDATA[New comment by postgressomethi in "The code on the laptop in the stock photo at developer.bbc.com is user-editable"]]></title><description><![CDATA[
<p>Can this quote die already?  Rob has repeatedly demonstrated he doesn't know what's best for everyone.</p>
]]></description><pubDate>Sun, 13 Jun 2021 00:09:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=27488553</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=27488553</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27488553</guid></item><item><title><![CDATA[New comment by postgressomethi in "Do you really need Redis? How to get away with just PostgreSQL"]]></title><description><![CDATA[
<p>> LISTEN ties up one connection completely<p>I've seen this twice in this thread, but I don't know what that means.  Can you explain a bit?</p>
]]></description><pubDate>Sat, 12 Jun 2021 18:51:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=27486633</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=27486633</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27486633</guid></item><item><title><![CDATA[New comment by postgressomethi in "EU Parliament Wants Pirated Sports Streams Taken Down Within 30 Minutes"]]></title><description><![CDATA[
<p>Huh?  The VPN isn't for privacy.</p>
]]></description><pubDate>Sun, 11 Apr 2021 18:50:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=26772496</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=26772496</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26772496</guid></item><item><title><![CDATA[New comment by postgressomethi in "Securing a Postgres Database"]]></title><description><![CDATA[
<p>> Unless you edit pg_ident.conf, your postgres install will not listen for connections outside of on localhost.<p>I don't know what the defaults are, but pg_ident.conf has absolutely nothing to do with this.  The main configuration file (I think postgresql.conf usually) has listen_addresses, which controls the addresses on which postgres listens, as you might guess.<p>pg_hba.conf (not pg_ident.conf) controls the authentication methods the server asks from the client, depending on how they're connecting.</p>
]]></description><pubDate>Fri, 02 Apr 2021 21:23:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=26676145</link><dc:creator>postgressomethi</dc:creator><comments>https://news.ycombinator.com/item?id=26676145</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26676145</guid></item></channel></rss>