<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: jedwards1211</title><link>https://news.ycombinator.com/user?id=jedwards1211</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 29 Jul 2026 23:29:11 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=jedwards1211" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by jedwards1211 in "Post Mortem: axios NPM supply chain compromise"]]></title><description><![CDATA[
<p>The streams API exists on the FE, you can pipe an upload or download through a TransformStream to monitor progress</p>
]]></description><pubDate>Mon, 06 Apr 2026 03:17:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47656590</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=47656590</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47656590</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Coding agents have replaced every framework I used"]]></title><description><![CDATA[
<p>The other thing that's dumb about this is frameworks are usually consolidating repetitive boilerplate so it's going to cost a lot more tokens for an AI to inline everything a framework does.</p>
]]></description><pubDate>Sat, 07 Feb 2026 19:18:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=46926662</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46926662</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46926662</guid></item><item><title><![CDATA[New comment by jedwards1211 in "After two years of vibecoding, I'm back to writing by hand"]]></title><description><![CDATA[
<p>I know what you mean, but from a physics perspective, no, it just takes force to move mass.  More mass will generate more downward force due to gravity, and more force in other directions due to momentum once it’s moving, but there’s more to generating force than just mass.  I’m not a kinesiologist but I would think how much force muscles generate depends on the amount and size of the fibers (mass) but also on their contractive efficiency and the amount of energy they can obtain and employ to contract (not necessarily proportional to mass, involves cardiovascular fitness)</p>
]]></description><pubDate>Tue, 27 Jan 2026 01:25:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=46774285</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46774285</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46774285</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Your brain on ChatGPT: Accumulation of cognitive debt when using an AI assistant"]]></title><description><![CDATA[
<p>for example, I got fed up with the old form library we were using because it wasn't capable of checking field names/paths and field value types at compile time and I kept having unexpected runtime errors.  I wrote a replacement form library that can deeply typecheck all of that stuff.<p>If I had turned an AI loose against the original codebase, I think it would have just churned away copying the existing patterns and debugging any runtime errors that result.  I don't think an AI would have ever voluntarily told me "this form library is costing time and effort, we should replace it with such and such instead"</p>
]]></description><pubDate>Thu, 22 Jan 2026 19:45:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=46724238</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46724238</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46724238</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Your brain on ChatGPT: Accumulation of cognitive debt when using an AI assistant"]]></title><description><![CDATA[
<p>Some of the biggest improvements I've made in the clarity and typesafety of the code I write came from seeing the weak points while slogging through writing code, and choosing or writing better libraries to solve certain problems.  If everyone stops writing code I can only imagine quality will stagnate</p>
]]></description><pubDate>Thu, 22 Jan 2026 19:39:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=46724159</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46724159</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46724159</guid></item><item><title><![CDATA[New comment by jedwards1211 in "I hate GitHub Actions with passion"]]></title><description><![CDATA[
<p>I’ve VNCed into CI to debug selenium tests failing because of platform font and scrollbar rendering.  I never really thought about doing that locally in a docker container, but it definitely wouldn’t be convenient to <i>always</i> run those tests locally in a docker container.  I guess having an option to would sort of simplify debugging, but I’d still have to VNC into the docker container I think</p>
]]></description><pubDate>Sat, 17 Jan 2026 03:23:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=46654937</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46654937</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46654937</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Web development is fun again"]]></title><description><![CDATA[
<p>The people who love writing code were the ones who created the languages and frameworks that make it even possible for an LLM to cobble something together for you.<p>There is tons of satsifaction in actually creating nuts and bolts frameworks.  After you encounter difficulties in creating a real world product you see the need for tools to solve those problems, so crafting those tools and then using them does feel like winning and shipping and solving real problems.</p>
]]></description><pubDate>Mon, 05 Jan 2026 14:45:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=46499303</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46499303</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46499303</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Web development is fun again"]]></title><description><![CDATA[
<p>I think it’s <i>easier</i> to manage full-stack development as a solo developer now even without AI.<p>Now TypeScript catches a lot of my mistakes before they reach runtime.<p>Now I have good enough browser automation testing tools to catch regressions in the frontend.<p>Now it’s quick and easy to run a specific database version for each app I’m working on with docker.<p>Now I can automate deployment to the cloud instead of having to rely on an entire IT department.<p>Now I have a scalable way to publish and consume reusable units of code as npm packages.<p>None of this was the case in what this author seems to think were the good old days.  If web development seemed easy to him back then, I doubt he was working on complex projects</p>
]]></description><pubDate>Mon, 05 Jan 2026 14:32:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=46499158</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46499158</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46499158</guid></item><item><title><![CDATA[New comment by jedwards1211 in "It's hard to justify Tahoe icons"]]></title><description><![CDATA[
<p>I don’t think it’s a good idea to require an icon for everything, some actions are hard to depict with an icon.<p>But on the other hand, I think 95% of the icons in the first menu in this article are clear and probably help most people navigate faster.</p>
]]></description><pubDate>Mon, 05 Jan 2026 14:16:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=46498987</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46498987</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46498987</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Was it a billion dollar mistake?"]]></title><description><![CDATA[
<p>Yeah in Typescript I rarely run into null deference errors at runtime either.  It can happen if you unsafely cast the type of values coming into your code, but if you runtime validate input at your application boundary it’s very unlikely<p>Now looking back at a lot of other languages that don’t express nullability, it’s like, what were they thinking?  How did I not wish for nullability in type declarations in all my years of dealing with NullPointerExceptions?</p>
]]></description><pubDate>Mon, 05 Jan 2026 14:06:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=46498876</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46498876</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46498876</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Was it a billion dollar mistake?"]]></title><description><![CDATA[
<p>After using TypeScript I see userland Maybe types as a workaround for a language design flaw.  When the builtin type system allows you to declare nullable and non-nullable reference types and produces compile errors when you don’t check a nullable value before dereferencing it, the problems with null go away</p>
]]></description><pubDate>Mon, 05 Jan 2026 13:54:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=46498754</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=46498754</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46498754</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Forth: The programming language that writes itself"]]></title><description><![CDATA[
<p>Stack-based programming may be simple but it doesn’t seem like it would be easy to read and understand for large-scale programs at all.</p>
]]></description><pubDate>Tue, 21 Oct 2025 01:29:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=45651486</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=45651486</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45651486</guid></item><item><title><![CDATA[New comment by jedwards1211 in "What is going on right now?"]]></title><description><![CDATA[
<p>There’s been a lot of criticism that Koko’s language abilities were overblown and her expressions were overinterpreted as well.</p>
]]></description><pubDate>Fri, 22 Aug 2025 19:27:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=44988798</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=44988798</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44988798</guid></item><item><title><![CDATA[New comment by jedwards1211 in "PHP 8.5 adds pipe operator"]]></title><description><![CDATA[
<p>I think it’s mainly because they struggled to get consensus on which syntax to go with for pipelines, since people were divided into three different camps.  I wish they would just standardize all three options with a slightly different operator for each one</p>
]]></description><pubDate>Tue, 05 Aug 2025 22:58:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=44805550</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=44805550</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44805550</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Modern Node.js Patterns"]]></title><description><![CDATA[
<p>You’re shooting yourself in the foot if you put naked fetch calls all over the place in your own client SDK though.  Or at least going to extra trouble for no benefit</p>
]]></description><pubDate>Mon, 04 Aug 2025 03:30:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=44781902</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=44781902</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44781902</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Modern Node.js Patterns"]]></title><description><![CDATA[
<p>What is a validation quirk that would happen when using server side Zod schemas that somehow doesn’t happen with a codegened client?</p>
]]></description><pubDate>Mon, 04 Aug 2025 03:28:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=44781888</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=44781888</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44781888</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Modern Node.js Patterns"]]></title><description><![CDATA[
<p>The schema definition is more efficient than writing input validation from scratch anyway so it’s completely win/win unless you want to throw caution to the wind and not do any validation</p>
]]></description><pubDate>Mon, 04 Aug 2025 03:21:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=44781851</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=44781851</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44781851</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Modern Node.js Patterns"]]></title><description><![CDATA[
<p>This has been the case for quite awhile, most of the things in this article aren’t brand new</p>
]]></description><pubDate>Mon, 04 Aug 2025 03:18:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=44781843</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=44781843</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44781843</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Postgres LISTEN/NOTIFY does not scale"]]></title><description><![CDATA[
<p>Oof.  Now I’m looking into using an extension someone wrote to publish to Redis straight from Postgres, as a replacement for NOTIFY statements in triggers.  Kind of a mess but any other way of waking up our app logic that walks change queues in Postgres seems worse</p>
]]></description><pubDate>Wed, 16 Jul 2025 04:58:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=44578817</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=44578817</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44578817</guid></item><item><title><![CDATA[New comment by jedwards1211 in "Tell HN: I Lost Joy of Programming"]]></title><description><![CDATA[
<p>I think the pain of explaining to the LLM what I want is what's kept me from using AI at all so far</p>
]]></description><pubDate>Wed, 09 Jul 2025 21:15:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=44514809</link><dc:creator>jedwards1211</dc:creator><comments>https://news.ycombinator.com/item?id=44514809</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44514809</guid></item></channel></rss>