<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: tedchs</title><link>https://news.ycombinator.com/user?id=tedchs</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 13 May 2026 21:20:21 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=tedchs" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by tedchs in "Postmortem: TanStack NPM supply-chain compromise"]]></title><description><![CDATA[
<p>This is another indicator that "lifecycle" scripts in NPM (or other packaging systems, except perhaps Debian or RPM) are an idea we need to learn to live without.  At most, packages should be able to emit a message to the user asking them to invoke a one-liner if a setup action is truly necessary.<p>As a side benefit, eliminating package scripts will contribute toward reproducibility of Docker and VM images.<p>I realize this will be a controversial opinion.</p>
]]></description><pubDate>Tue, 12 May 2026 01:31:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=48103106</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=48103106</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48103106</guid></item><item><title><![CDATA[New comment by tedchs in "DAG Workflow Engine"]]></title><description><![CDATA[
<p>How does this compare to Temporal?  That seems to be the current baseline for application-oriented workflow engines.</p>
]]></description><pubDate>Mon, 04 May 2026 17:05:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=48011526</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=48011526</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48011526</guid></item><item><title><![CDATA[New comment by tedchs in "Skip the Tips: A game to select "No Tip" but dark patterns try to stop you"]]></title><description><![CDATA[
<p>The "buy me a coffee" button at the end is :chefskiss:</p>
]]></description><pubDate>Fri, 13 Feb 2026 03:00:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=46998427</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=46998427</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46998427</guid></item><item><title><![CDATA[New comment by tedchs in "Real engineering failures instead of success stories"]]></title><description><![CDATA[
<p>I was excited about this idea, but based on the writing patterns and vague stories I'm pretty sure these writeups are mostly AI slop.  For example, this is classic ChatGPT phrasing:<p>> The growth I’d been celebrating wasn’t real growth—it was just a spike of first-time buyers who never came back.<p>If I'm wrong, and these were actually written by a human, I'd love a chance to stand corrected and apologize.</p>
]]></description><pubDate>Sun, 01 Feb 2026 18:33:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=46848200</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=46848200</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46848200</guid></item><item><title><![CDATA[New comment by tedchs in "Internal RFCs saved us months of wasted work"]]></title><description><![CDATA[
<p>My favorite section in an RFC is "alternatives considered".  I've seen many times that an option that had been initially discarded  became the solution after review and discussion.  It's also a great way to answer later questions about "why didn't you do X instead".</p>
]]></description><pubDate>Tue, 16 Dec 2025 18:24:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=46292205</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=46292205</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46292205</guid></item><item><title><![CDATA[New comment by tedchs in "Kohler's Dekoda Toilet Camera"]]></title><description><![CDATA[
<p>Just imagine being the designer of this thing and sitting at Thanksgiving dinner with your family.  "Oh, tedchs, what've you been up to at work?" "Okay well this is gonna sound odd but we invented a camera for your stool... No, not that stool... Yes, it clips onto the bowl..."</p>
]]></description><pubDate>Tue, 21 Oct 2025 12:59:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=45655197</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=45655197</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45655197</guid></item><item><title><![CDATA[New comment by tedchs in "Ruby core team takes ownership of RubyGems and Bundler"]]></title><description><![CDATA[
<p>Is this announcement just about the gem and bundler packages themselves?  I don't think Ruby core team is taking over the rubygems.org site right?</p>
]]></description><pubDate>Sat, 18 Oct 2025 01:54:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=45624216</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=45624216</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45624216</guid></item><item><title><![CDATA[New comment by tedchs in "Enlisting in the Fight Against Link Rot"]]></title><description><![CDATA[
<p>My question is, why can Google themselves not just provide a dump to archive.org themselves?  Having volunteer middlemen doing the work seems like an artificial crisis.</p>
]]></description><pubDate>Tue, 12 Aug 2025 18:24:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=44880036</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=44880036</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44880036</guid></item><item><title><![CDATA[New comment by tedchs in "Ask HN: What are the best programmable holiday lights?"]]></title><description><![CDATA[
<p>I've used strings of Twinkly lights for a couple seasons now.  They can sometimes be found on eBay for cheap.  They're easy to set up, whether standalone or by clustering multiple units into one larger virtual canvas.  The app has a lot of good looking animated patterns included.</p>
]]></description><pubDate>Sun, 08 Dec 2024 17:41:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=42358568</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=42358568</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42358568</guid></item><item><title><![CDATA[New comment by tedchs in "Obtainium: Get Android App Updates Directly from the Source"]]></title><description><![CDATA[
<p>Wow, what a great name!</p>
]]></description><pubDate>Sat, 09 Nov 2024 12:39:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=42094097</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=42094097</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42094097</guid></item><item><title><![CDATA[New comment by tedchs in "PineNote Community Edition: Preorder coming soon"]]></title><description><![CDATA[
<p>I've had the reMarkable 2 for years and it's <i>amazing</i>.  FYI, the reMarkable is itself quite hackable.  There is a supported way to run an SSH server on it and push your own binaries and other files to use on the device.  One example resource for hacks/mods is <a href="https://github.com/danielebruneo/remarkable2-hacks">https://github.com/danielebruneo/remarkable2-hacks</a> .</p>
]]></description><pubDate>Sun, 27 Oct 2024 13:35:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=41962520</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=41962520</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41962520</guid></item><item><title><![CDATA[New comment by tedchs in "Smart TVs take snapshots of what you watch multiple times per second"]]></title><description><![CDATA[
<p>FYI you can use a universal infrared remote with Apple TV, which might have larger buttons or a more familiar interface.  I have mixed feelings myself about the "touchpad" in the apple remote.</p>
]]></description><pubDate>Fri, 27 Sep 2024 12:10:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=41669465</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=41669465</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41669465</guid></item><item><title><![CDATA[The Queueing Shell Game]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.danslimmon.com/2024/08/21/the-queueing-shell-game/">https://blog.danslimmon.com/2024/08/21/the-queueing-shell-game/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41347585">https://news.ycombinator.com/item?id=41347585</a></p>
<p>Points: 11</p>
<p># Comments: 2</p>
]]></description><pubDate>Sun, 25 Aug 2024 14:35:21 +0000</pubDate><link>https://blog.danslimmon.com/2024/08/21/the-queueing-shell-game/</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=41347585</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41347585</guid></item><item><title><![CDATA[New comment by tedchs in "No "Hello", No "Quick Call", and No Meetings Without an Agenda"]]></title><description><![CDATA[
<p>What I've found best is a compromise: send a chat message like "Hi foo, I hope you're having a good day!  I'm trying to figure something out with Postgres and I wonder if you might have 30 minutes to chat about it?".  As a remote worker, there is also a social cohesion upside to having a synchronous call sometimes.</p>
]]></description><pubDate>Thu, 22 Aug 2024 16:48:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=41322107</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=41322107</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41322107</guid></item><item><title><![CDATA[New comment by tedchs in "'Rare species' not seen in the area for 50 years spotted on Arizona trail camera"]]></title><description><![CDATA[
<p>They say this is the first time an ocelot has been spotted in 50 years, but I beg to differ.  An ocelot is /always/ spotted.</p>
]]></description><pubDate>Tue, 20 Aug 2024 02:20:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=41296184</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=41296184</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41296184</guid></item><item><title><![CDATA[New comment by tedchs in "9/11 tragedy pager intercepts (2009)"]]></title><description><![CDATA[
<p>I see.  It's a different reading of the first word "from".  Thanks for pointing that out.</p>
]]></description><pubDate>Thu, 18 Apr 2024 14:50:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=40076887</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=40076887</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40076887</guid></item><item><title><![CDATA[New comment by tedchs in "9/11 tragedy pager intercepts (2009)"]]></title><description><![CDATA[
<p>The first line has two errors.  First, 9/11 was on a Tuesday.  Saying it was a Sunday is just foolish, as it happened at the start of a busy workday.  Many of us still remember it like it was yesterday.  Also, the line says 2011.<p>Further question - how do we know these intercepts are authentic?<p>> From 3AM on Sunday September 11, 2011</p>
]]></description><pubDate>Thu, 18 Apr 2024 14:31:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=40076689</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=40076689</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40076689</guid></item><item><title><![CDATA[New comment by tedchs in "Incident report for February 21st, 2024"]]></title><description><![CDATA[
<p>I did this, around 2005, but I dropped ALL the prod tables.  I was using a SQL GUI called Toad (awesome) and had separate windows open, for both "dev" and "prod".  I was trying to reset the dev database, and used the wrong window.  Thankfully, the "real" DBA at the time had 15-minute backups, and was able to restore it, and then I replayed a few transactions from logs.  Lesson learned!<p>> While building a feature, we performed a database migration command locally, but it incorrectly pointed to the production environment instead, which dropped all tables in production.</p>
]]></description><pubDate>Fri, 23 Feb 2024 11:54:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=39479481</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=39479481</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39479481</guid></item><item><title><![CDATA[New comment by tedchs in "Pkl, a Programming Language for Configuration"]]></title><description><![CDATA[
<p>This page has helpful comparisons: <a href="https://pkl-lang.org/main/current/introduction/comparison.html" rel="nofollow">https://pkl-lang.org/main/current/introduction/comparison.ht...</a></p>
]]></description><pubDate>Sat, 03 Feb 2024 15:16:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=39241068</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=39241068</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39241068</guid></item><item><title><![CDATA[New comment by tedchs in "Fixing a broken smart cat feeder with ESP32"]]></title><description><![CDATA[
<p>This is a clever hack.  However, if the intent is serious use, I'd be concerned about resiliency.  It sounds like the schedule is maintained in Home Assistant, and that it sends a command to the ESP8266 to dispense food.  That means a ton of moving parts have to all be working, otherwise the cat doesn't eat: Home Assistant's server and power source, Wi-Fi, and the $1 microcontroller.<p>If this is intended for serious usage, i.e. the cat won't eat if it fails to dispense, a different design would be more resilient: maybe still define the schedule in Home Assistant or another control plane, but then have it "push" the whole schedule to the device.  The device will also need time sync and a realtime clock.  Then, the device manages its scheduled dispensation autonomously, even if the network or control plane are unavailable.  And, the dispenser should have a little battery so it can run for a couple days with the power out.</p>
]]></description><pubDate>Fri, 02 Feb 2024 21:10:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=39234447</link><dc:creator>tedchs</dc:creator><comments>https://news.ycombinator.com/item?id=39234447</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39234447</guid></item></channel></rss>