<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: gcommer</title><link>https://news.ycombinator.com/user?id=gcommer</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 19 Oct 2026 21:08:37 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=gcommer" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by gcommer in "I never authorized an integration that scans my secrets"]]></title><description><![CDATA[
<p>This is not an issue if you are running Home Assistant Core in a self hosted container; the relevant "supervisor" service that does the scanning is only part of "HA OS" and "HA Supervised."</p>
]]></description><pubDate>Fri, 16 Oct 2026 22:48:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=50125815</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=50125815</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50125815</guid></item><item><title><![CDATA[New comment by gcommer in "Google Engineers Launch "Sashiko" for Agentic AI Code Review of the Linux Kernel"]]></title><description><![CDATA[
<p>Only two commits have 'Co-Authored-By: Claude' and they're both PR contributions from a non-google email.</p>
]]></description><pubDate>Thu, 19 Mar 2026 00:55:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=47433400</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=47433400</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47433400</guid></item><item><title><![CDATA[New comment by gcommer in "JetKVM – Control any computer remotely"]]></title><description><![CDATA[
<p>For feature parity, the old PC will require USB OTG, HDMI input, wiring for ATX control, and a software stack.</p>
]]></description><pubDate>Mon, 27 Oct 2025 20:35:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=45725956</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=45725956</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45725956</guid></item><item><title><![CDATA[New comment by gcommer in "JetKVM – Control any computer remotely"]]></title><description><![CDATA[
<p>This is why I recently went with a PiKVM. Pricier and clunkier but much more open and transparent.</p>
]]></description><pubDate>Mon, 27 Oct 2025 20:21:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=45725800</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=45725800</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45725800</guid></item><item><title><![CDATA[New comment by gcommer in "A laser pointer at 2B FPS [video]"]]></title><description><![CDATA[
<p>AlphaPhoenix mentions in the description that he wants to try and image an interference pattern, and it seems possible.<p>Though it wouldn't really be showing you the quantum effect; that's only proven with individual photons at a time. This technique sends a "big" pulse of light relying on some of it being diffusely reflected to the camera at each oscilloscope timestep.<p>Truly sending individual photons and measuring them is likely impractical as you'd have to wait for a huge time collecting data for each pixel, just hoping the photons happens to bounce directly into the photomultiplier tube.</p>
]]></description><pubDate>Tue, 21 Oct 2025 04:53:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=45652575</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=45652575</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45652575</guid></item><item><title><![CDATA[New comment by gcommer in "US economy shrank 0.5% in the first quarter, worse than earlier estimates"]]></title><description><![CDATA[
<p>The article never claims tariffs going into effect caused the Q1 issues.</p>
]]></description><pubDate>Thu, 26 Jun 2025 22:32:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=44392130</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=44392130</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44392130</guid></item><item><title><![CDATA[New comment by gcommer in "AI cheats: Why you didn't notice your teammate was cheating"]]></title><description><![CDATA[
<p>Yep, and that's what I stick to today. I just worry how much longer until the remaining games that support this die out...</p>
]]></description><pubDate>Thu, 03 Apr 2025 22:49:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=43576402</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=43576402</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43576402</guid></item><item><title><![CDATA[New comment by gcommer in "AI cheats: Why you didn't notice your teammate was cheating"]]></title><description><![CDATA[
<p>Agreed. To be more precise: I think the solution is small, community-run servers. This allows large, consistent groups of players to play together regularly with a much higher percentage of admins who can handle cheaters manually.<p>I also maintain that human judgement, can still catch things anti-cheat software is yet incapable of. Example: it doesn't matter how well hidden your aimbot is, I still notice cheaters when their accuracy is wildly out of proportion with their strategic understanding of the game.</p>
]]></description><pubDate>Thu, 03 Apr 2025 21:52:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=43575922</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=43575922</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43575922</guid></item><item><title><![CDATA[New comment by gcommer in "Node.js, Pipes, and Disappearing Bytes"]]></title><description><![CDATA[
<p>Even better: never use process.exit(). Set process.exitCode instead.<p><a href="https://nodejs.org/api/process.html#processexitcode" rel="nofollow">https://nodejs.org/api/process.html#processexitcode</a></p>
]]></description><pubDate>Sun, 13 Oct 2024 17:38:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=41829880</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=41829880</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41829880</guid></item><item><title><![CDATA[New comment by gcommer in "The anatomy of a 2AM mental breakdown"]]></title><description><![CDATA[
<p>I know solo projects always have an infinite list of "nice to haves". But personally I never skimp on vendoring dependencies.<p>In my experience, not vendoring has _always_ led to breakages that are hard to debug and fix.<p>Meanwhile, vendoring is quite easy nowadays. Every reasonable package manager, and even npm, can do this near-trivially.</p>
]]></description><pubDate>Tue, 20 Aug 2024 17:21:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=41301977</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=41301977</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41301977</guid></item><item><title><![CDATA[New comment by gcommer in "NixOS: Declarative Builds and Deployments"]]></title><description><![CDATA[
<p>Avoiding side effects does not require inventing a brand new purely functional language programming language.</p>
]]></description><pubDate>Mon, 15 Jan 2024 00:31:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=38995989</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=38995989</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38995989</guid></item><item><title><![CDATA[New comment by gcommer in "Tinc, a GPLv2 mesh routing VPN"]]></title><description><![CDATA[
<p>Tinc is incredible, it has worked flawlessly for me for 6+ years with exactly 0 maintenance.<p>As trustworthy as it is, I am sadly on the hunt to replace it.  Compared to wireguard, the throughput ain't great, and it takes way too much CPU on my low power nodes. I would pay good money for "tinc, but with wireguard transport" -- there's of course projects purporting to do this but I haven't found one I trust yet.</p>
]]></description><pubDate>Tue, 27 Jun 2023 13:33:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=36492484</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=36492484</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36492484</guid></item><item><title><![CDATA[New comment by gcommer in "Why would anyone need JavaScript generator functions?"]]></title><description><![CDATA[
<p>It is a weird example. But that transform does not work generally. Consider if you want to stop when insertIntoMouth() returns a particular value. Or if there is some filter() step, so that you don't know that `n` input items will map to `n` output items.<p>The difference here is push vs pull (also called eager vs lazy). It is often easier to write pull computations that only do the work that is actually needed.</p>
]]></description><pubDate>Mon, 07 Nov 2022 16:54:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=33508430</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=33508430</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33508430</guid></item><item><title><![CDATA[New comment by gcommer in "JSX Mail: Ending All Your Problems When Creating Email Templates"]]></title><description><![CDATA[
<p>I know multiple companies doing the same thing -- it's really great to use JSX that most JS shops will already know instead of introducing a whole other template language that (typically) have a brand new syntax, weird logic-in-html, and/or poor componentization.<p>Lot's of cool follow-on value-adds you can do once your emails are in JS like this.  Like writing test cases to validate that none of your emails are susceptible to HTML injection. Or writing tests about never exceeding Gmail's 100kb limit. Or rendering your emails in Storybook.</p>
]]></description><pubDate>Thu, 06 Oct 2022 01:49:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=33103391</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=33103391</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33103391</guid></item><item><title><![CDATA[New comment by gcommer in "Ask HN: Location based pay is killing my motivation, how do others handle it?"]]></title><description><![CDATA[
<p>This is a common thought but it certainly hasnt been the case at any of the bay area startups or faangs I have worked at or interviewed for. Always 40 hrs.<p>Are there super heavy hustle places? Probably, but most places realize more time is not linearly more output for creative/knowledge work.<p>(Similarly, the internet would have you think anywhere offering "unlimited vacation" is a scam but I used and loved it)</p>
]]></description><pubDate>Mon, 05 Sep 2022 10:16:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=32722588</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=32722588</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32722588</guid></item><item><title><![CDATA[New comment by gcommer in "I cheated on my Microsoft interview (2019)"]]></title><description><![CDATA[
<p>In every interview I've done, lunch was explicitly bracketed by "this is a free, casual lunch that won't affect your interview at all".<p>And as an interviewer, I've never been asked to report on lunch chats.<p>> You're not my peer. We're not having fun.<p>Actually, most interviewers are your peers, and they typically know that you're under interview stress and are trying to help. If you can't take a break and de-stress during lunch, you're just hurting yourself.</p>
]]></description><pubDate>Sun, 05 Jun 2022 15:50:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=31632050</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=31632050</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31632050</guid></item><item><title><![CDATA[New comment by gcommer in "A vision of a multi-threaded Emacs"]]></title><description><![CDATA[
<p>There's tons of little details and inefficiencies in elisp that crop up such that easy things like "listen to responses" are hard to get fast. Random example: before native json support, large lsp responses (which can be multiple megabytes from some servers!) would take over a second and hitch the UI just to parse the json response. And that was after a lot of work to get response parsing dominated by json instead of GC time.</p>
]]></description><pubDate>Mon, 30 May 2022 21:09:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=31563651</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=31563651</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31563651</guid></item><item><title><![CDATA[New comment by gcommer in "iViewed your API keys"]]></title><description><![CDATA[
<p>Plenty of server-rendered apps have been caught putting private data in responses. In this very same comment section people have mentioned the story of a state website that included teacher SSN's in hidden fields[1], and OJFord shared a story of a server that included a full env var dump in error messages[2].<p>This sort of thing happens all the time to all sorts of services. Rather than just blaming JS, it's far more productive to think of technical controls that could catch this. For example Taint Checking[3] or scanning server responses for API keys.<p>[1]: <a href="https://news.ycombinator.com/item?id=31026374" rel="nofollow">https://news.ycombinator.com/item?id=31026374</a><p>[2]: <a href="https://news.ycombinator.com/item?id=31026415" rel="nofollow">https://news.ycombinator.com/item?id=31026415</a><p>[3]: <a href="https://en.wikipedia.org/wiki/Taint_checking" rel="nofollow">https://en.wikipedia.org/wiki/Taint_checking</a></p>
]]></description><pubDate>Thu, 14 Apr 2022 15:31:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=31028244</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=31028244</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31028244</guid></item><item><title><![CDATA[New comment by gcommer in "Start Self Hosting"]]></title><description><![CDATA[
<p>Fair point, but I haven't hit it in practice. Tons of services are embracing docker as a first-class output. I just checked and I run exactly 2 images that are from a third party.</p>
]]></description><pubDate>Thu, 24 Mar 2022 01:33:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=30785583</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=30785583</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30785583</guid></item><item><title><![CDATA[New comment by gcommer in "Start Self Hosting"]]></title><description><![CDATA[
<p>I feel for you. I also wasted a lot of very painful hours trying to get it to work. I even had it working for a while before a docker update broke it -- turns out docker-compose's ipv6 support that many people relied on for years was a "bug" that they "fixed".<p>Ultimately I also gave up and now have a combination of port forwarding, nat64, and 10+ socat proxies in my docker-compose file. (Specifically, intranet->container and container->intranet are ipv6; but container->container is still ipv4)<p>More generally, I now try to keep my docker host as stock as possible. Whenever I'm reaching for daemon.json I just catch myself, take a step back, and say "what's the stupid but easy way to get this working".</p>
]]></description><pubDate>Thu, 24 Mar 2022 01:29:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=30785556</link><dc:creator>gcommer</dc:creator><comments>https://news.ycombinator.com/item?id=30785556</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30785556</guid></item></channel></rss>