<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: mjr00</title><link>https://news.ycombinator.com/user?id=mjr00</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 24 Aug 2026 17:13:08 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=mjr00" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by mjr00 in "AI-Generated GitHub Copilot “Autofix” Allowed Compromise of Snowflake's Jira"]]></title><description><![CDATA[
<p>> Prediction: programming is going to change massively not only because the cost of creating code will go down, but because people are so tired of this sort of gatekeeping "we know better" from programmers.<p>I assume the "gatekeeping" decision to not implement a feature request is coming from someone responsible for the product, not from a developer.</p>
]]></description><pubDate>Mon, 17 Aug 2026 16:44:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=49333929</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49333929</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49333929</guid></item><item><title><![CDATA[New comment by mjr00 in "AI-Generated GitHub Copilot “Autofix” Allowed Compromise of Snowflake's Jira"]]></title><description><![CDATA[
<p>It's interesting to look at what was being attempted when the vulnerability was introduced[0]<p>> Workflows like jira_close.yml use deprecated atlassian JIRA actions and have a dependency on the gh-actions repo. This is not ideal and unecessarily complex. PR updates jira_close workflow to use direct API calls via curl. It preserves custom fields used too.<p>I won't speak to this projects' management and how they prioritize things, but from my own experience, pre-AI, this type of change would have been firmly in the "this is a minor annoyance, put it in the Tech Debt Backlog alongside the 50000 other tickets" and never actually done. The cost of a human investing the time understanding how to fix the problem, doing code changes, testing them, and deploying them is just way too high for what actual value this change brings, which is close to nothing.<p>Now with AI, it's as simple as firing up an agent and telling them to make a change; as much effort as writing that backlog Jira ticket in the first place.<p>Similar to the problem open source is having with low-value PRs, companies are going to have to start realizing that code is <i>not</i> free to review or maintain, even when it's <i>generated</i> for ~free, in their internal processes. Just because an agent <i>can</i> fix a minor tech debt annoyance with a few lines of instructions doesn't mean it <i>should</i>.<p>[0] <a href="https://github.com/snowflakedb/snowflake-connector-net/pull/1218" rel="nofollow">https://github.com/snowflakedb/snowflake-connector-net/pull/...</a></p>
]]></description><pubDate>Mon, 17 Aug 2026 15:13:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=49332391</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49332391</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49332391</guid></item><item><title><![CDATA[New comment by mjr00 in "When Genius Fails: The Intellectual Arrogance of the AI Labs"]]></title><description><![CDATA[
<p>> Anyone remember when YC declared they would replace Hollywood?<p>I specifically remember a prolific HN commenter working on an AI video startup claiming that by the end of 2025, children would be able to create Hollywood-quality, feature-length movies using available AI video tools.<p>I believe this person's startup has (wisely) pivoted to building AI-powered tools for the movie industry.</p>
]]></description><pubDate>Fri, 14 Aug 2026 15:47:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=49300383</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49300383</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49300383</guid></item><item><title><![CDATA[New comment by mjr00 in "When Genius Fails: The Intellectual Arrogance of the AI Labs"]]></title><description><![CDATA[
<p>> It’s much easier to say someone else’s job is going to be fully replaceable by AI when you don’t actually know what they do.<p>Too true. This isn't limited to AI, either. The most obvious example in my lifetime was during peak blockchain hype, when people who had never worked in finance convinced themselves that blockchain was going to act as the backbone for how money gets moved around. As if the problem that needing solving was Bank of America doesn't trust Capital One to update a number in their database.<p>The nice thing about AI, at least, is I can always push back and tell people, "Sure, we can do this with AI. I just need you to use Claude or ChatGPT manually to prototype how it would work." This normally results in the requestor realizing that there's human judgment calls involved in the inputs, process, or outputs that require meatbag intelligence.</p>
]]></description><pubDate>Fri, 14 Aug 2026 15:24:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=49300020</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49300020</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49300020</guid></item><item><title><![CDATA[New comment by mjr00 in "AI is removing the middle class of software engineering?"]]></title><description><![CDATA[
<p>> the opportunity costs of throwing everything onto your "competent developers" isn't free. They still need time to review and correct output on top of whatever else they were doing in their day to day.<p>Maybe it wasn't clear in my comment, but this was <i>already</i> happening in many large organizations pre-AI: you had a small contingent of competent senior developers whose job was to review and correct outputs from junior and/or outsourced staff. From people I've spoken to in these types of situations, they're very happy with getting rid of their offshore teams and using AI instead.</p>
]]></description><pubDate>Thu, 13 Aug 2026 14:24:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=49286451</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49286451</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49286451</guid></item><item><title><![CDATA[New comment by mjr00 in "AI is removing the middle class of software engineering?"]]></title><description><![CDATA[
<p>I don't agree here. Yes Claude is great at following patterns, and for very standard tasks (e.g. "add this HTTP handler" which can copy existing patterns for database transaction management, session management, authentication, etc etc) it does great! The problem is that when you do something that doesn't quite fit int an existing pattern, Claude will optimize for solving the task at hand, producing code that doesn't use a sensible architecture. Doing things like checking user credentials or establishing a database connection deep in domain logic.<p>If you're a good dev, you can totally prompt Claude to not do this and correct itself, that's not an issue. The issue is that bad devs won't even notice this is happening in the first place.</p>
]]></description><pubDate>Wed, 12 Aug 2026 15:12:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=49273671</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49273671</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49273671</guid></item><item><title><![CDATA[New comment by mjr00 in "AI is removing the middle class of software engineering"]]></title><description><![CDATA[
<p>> In a few years, it just might.<p>If you're in a product company and your development backlog is empty, run. That company is about to go out of business.</p>
]]></description><pubDate>Wed, 12 Aug 2026 14:40:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=49273109</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49273109</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49273109</guid></item><item><title><![CDATA[New comment by mjr00 in "AI is removing the middle class of software engineering?"]]></title><description><![CDATA[
<p>It's very true, you used to have to hire people you knew were not very good just to have warm bodies who could throw together widgets, minor bug fixes, etc. You still had to have a competent developer review what they did, which was annoying, but ultimately a time saver over doing it themselves.<p>Now the competent developer can just run agents and do the same review process, except it's ~free (relative to human salaries, even outsourced).<p>So we've got a bimodal distribution going on where the bottom X% of developers have become essentially worthless while the top Y% of developers are now more valuable than ever.</p>
]]></description><pubDate>Wed, 12 Aug 2026 14:37:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=49273070</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49273070</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49273070</guid></item><item><title><![CDATA[New comment by mjr00 in "Half of Europe's towns and villages have fewer residents than 60 years ago"]]></title><description><![CDATA[
<p>If you could reliably work from your autonomous vehicle for two hours you might be able to include that as part of your work day, e.g. 2 hours working on the ride in, 4 hours in the office, 2 hours on the ride home for the full 8 hours. If not, you could fall asleep in the backseat, watch some TV shows, or... you know. Just make sure your windows are tinted. In any case, I'd definitely take a 2 hour "do whatever in the backseat" commute over an hour-long "pay attention to the road at all times" commute.<p>This is all predicated on <i>true</i> autonomous vehicles though, not the half-baked non-solutions that exist today.</p>
]]></description><pubDate>Tue, 11 Aug 2026 06:44:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=49254236</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49254236</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49254236</guid></item><item><title><![CDATA[New comment by mjr00 in "Software is about people, not code (2020)"]]></title><description><![CDATA[
<p>Yes, I mean you've basically explained it without realizing it; "being a manager is about writing" and "being a software developer is about coding" are equally overly reductive statements.</p>
]]></description><pubDate>Fri, 07 Aug 2026 19:20:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=49215088</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49215088</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49215088</guid></item><item><title><![CDATA[New comment by mjr00 in "Software is about people, not code (2020)"]]></title><description><![CDATA[
<p>Yes but also no I guess? Like would you say being a manager or in marketing is about writing, or that being in sales is about talking? Those are the main methods of accomplishing what those roles are meant to do, but it's not like they're <i>about</i> writing and talking.</p>
]]></description><pubDate>Fri, 07 Aug 2026 18:00:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=49214083</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49214083</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49214083</guid></item><item><title><![CDATA[New comment by mjr00 in "Software is about people, not code (2020)"]]></title><description><![CDATA[
<p>> software jobs still hire based on how good your coding is primarily<p>ehhh. In my experience, being able to code is a <i>necessary</i> but not <i>sufficient</i> skill for a software developer. The only exceptions I've seen is having some extremely deep expertise in a niche technical field (and even then I wouldn't call that being able to code well, so much as technical domain knowledge).<p>When I was hiring at AWS the view for my team (RDS) was that there wasn't much difference in expectations between algorithmic coding ability for juniors and seniors. The primary technical differentiator for seniors was architectural and operational. But even more important than those was the nontechnical stuff; mentorship, being able to communicate ideas clearly and succinctly (no point in being able to architect a system if you can't communicate it in a way people understand), interacting with other teams, demonstrating understanding customer and business value, etc.</p>
]]></description><pubDate>Fri, 07 Aug 2026 15:40:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=49212151</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49212151</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49212151</guid></item><item><title><![CDATA[New comment by mjr00 in "AI financial advice is surprisingly good, especially if you ask right questions"]]></title><description><![CDATA[
<p>Stock/bond ratios are way too advanced for what's qualifying as good advice here:<p>> AI consistently advised people to save during their working years, draw down savings in retirement, invest heavily in diversified stock funds, and reduce stock exposure after age 45.<p>This is analogous to saying to an aspiring software developer, "You should write clean and testable code, have clearly defined API boundaries, and a repeatable build process." All very true, but also so general and basic that it's not helpful.</p>
]]></description><pubDate>Sat, 01 Aug 2026 23:25:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=49139603</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49139603</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49139603</guid></item><item><title><![CDATA[New comment by mjr00 in "AI financial advice is surprisingly good, especially if you ask right questions"]]></title><description><![CDATA[
<p>AI financial advice is surprisingly good... <i>for now</i>. But given the historical trajectory of both the finance and advertising sectors I can't imagine it will, for long. AI responses without ads are unoptimized space!<p>It only takes Draftkings writing a very large check to Google before it responds to financial questions with solid advice before ending with, "Since you have a few spare hundred dollars laying around, why not try a high-risk investment into same-game parlays?"</p>
]]></description><pubDate>Sat, 01 Aug 2026 23:18:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=49139553</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49139553</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49139553</guid></item><item><title><![CDATA[New comment by mjr00 in "The startup's Postgres survival guide"]]></title><description><![CDATA[
<p>Sure, and you need to do the build vs buy math, but why not take the "If you can’t handle that comfortably in an afternoon, you probably shouldn’t be entrusted with customer data." logic further and say<p>1. Don't use a third-party auth provider, if you can't build out an OAuth provider in an afternoon you shouldn't be entrusted with login credentials<p>2. Don't use Github, if you can't build out an internal Gitlab instance in an afternoon you shouldn't be entrusted with securing source code<p>3. Don't use Github Actions or CircleCI, if you can't self-host a Jenkins server in an afternoon you shouldn't be entrusted with secure deployments<p>4. Don't use a lawyer or outsourced HR, if you can't draft legally binding employment agreement in an afternoon you shouldn't be entrusted with hiring people</p>
]]></description><pubDate>Thu, 23 Jul 2026 16:35:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=49024414</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49024414</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49024414</guid></item><item><title><![CDATA[New comment by mjr00 in "The startup's Postgres survival guide"]]></title><description><![CDATA[
<p>> We’re not talking about maintaining your own k8s cluster here mind you, but a basic Postgres setup. If you can’t handle that comfortably in an afternoon, you probably shouldn’t be entrusted with customer data.<p>Intelligence is being able to set up your own postgres database with backups, PITR, retention policies, HA/replicas, and everything else needed to prevent catastrophic data loss. Wisdom is realizing that's a solved problem completely unrelated to your business, so you don't have to.</p>
]]></description><pubDate>Thu, 23 Jul 2026 14:17:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=49022027</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49022027</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49022027</guid></item><item><title><![CDATA[New comment by mjr00 in "The startup's Postgres survival guide"]]></title><description><![CDATA[
<p>I might get flak for saying this but if you aren't a postgres expert already: just use RDS or a similar cloud DB. The amount of money you're saving by hosting and managing your own postgres instance is absolute peanuts compared to having battle-tested infrastructure for HA, backup and restores, point-in-time recovery, read replicas, etc.</p>
]]></description><pubDate>Wed, 22 Jul 2026 16:43:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=49009624</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49009624</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49009624</guid></item><item><title><![CDATA[New comment by mjr00 in "The startup's Postgres survival guide"]]></title><description><![CDATA[
<p>Good article overall, some comments:<p>> Use foreign keys with cascading deletes for low-volume tables, particularly where database consistency and correctness are important. Careful at higher volume.<p>This might be just me, but I <i>hate</i> cascades, for a very simple reason: at most places, the majority of developers "live" in the Python/Node/Go/whatever application that talks to the database, not the database itself. Cascading deletes (or updates) is basically magic and it can be very hard to understand "why did deleting a row from table A delete something from table B automatically". <i>Especially</i> if someone sets up the cascading wrong! IMO it's better for long-term maintainability to emit explicit delete clauses. Correct use of foreign keys will prevent any issues with database consistency.<p>> Tricks for large table migrations<p>The pitfalls and workarounds are all correct, but worth pointing out tooling already exists[0] for managing this for you. Making changes to large tables should be as simple as running a command (and then nervously monitoring for the next 24 hours as the data copies).<p>Other things to consider,<p>1. Get used to separating application and database deployments early. It is impossible to transactionally deploy both a schema change and an application change simultaneously, there will always be some delay where the versions of database and application are out of sync, and you will eventually run into a situation where the database change deploys fine but your application change does not. Once your app is in production, get in the habit of only doing backwards compatible schema changes: all new columns are nullable or have a default, no renaming of tables/columns, etc.<p>2. In the same vein, figure out a schema management strategy early. You really don't want your database deployment process to be "senior dev runs some DDL manually on production from his machine". I'm still partial to liquibase because it's the devil I know, but there's other tooling like Flyway which exists.<p>[0] <a href="https://github.com/shayonj/pg-osc" rel="nofollow">https://github.com/shayonj/pg-osc</a></p>
]]></description><pubDate>Wed, 22 Jul 2026 15:44:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=49008631</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=49008631</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49008631</guid></item><item><title><![CDATA[New comment by mjr00 in "China’s open-weights AI strategy is winning"]]></title><description><![CDATA[
<p>> Kubernetes vs AWS?<p>How is this even a direct comparison? Most companies I know of which use Kubernetes are using it on a cloud provider. Even if it's kubernetes on EC2 rather than hosted e.g. EKS, those companies are also happy to use lock-in services like RDS and S3.</p>
]]></description><pubDate>Mon, 20 Jul 2026 15:44:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=48980469</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=48980469</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48980469</guid></item><item><title><![CDATA[New comment by mjr00 in "After 7 years in production, Scarf has reluctantly moved away from Haskell"]]></title><description><![CDATA[
<p>> Also, for some reason Optional[T] became deprecated, just as the ecosystem finally embraced types ~3 years ago.<p>Optional[T] is now T | None. Means exactly the same thing but doesn't require an import. Support for the older syntax presumably won't be removed for a long while regardless.</p>
]]></description><pubDate>Fri, 10 Jul 2026 14:52:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=48860818</link><dc:creator>mjr00</dc:creator><comments>https://news.ycombinator.com/item?id=48860818</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48860818</guid></item></channel></rss>