This weekend I had some time with Opus 5.5 and GLM 5.3. I went over some findings in a library of Claude Mythos 5.1. These were minor, low-severity bug fixes and Mythos provided a PR to address them. Its PR was functionally correct. I still spent ~5 hours looping over them until I was really happy, even though a fully working PR already existed.
Some of the differences were:
- Mythos recommended salvaging damaged labels. I pushed back: data whose structure is broken shouldn’t be trusted
- My simpler more readable test caught a regression that Mythos’s more elaborate test missed
- Mythos allowed invalid values, citing real-world data that I could not reproduce, while I decided to follow the spec
- Mythos kept the old error types. I made every kind of malformed input raise the same error, and accepted a small, documented breaking change for anyone who relied on the old ones
Overall, I much preferred the final version of my PR to the initial draft Mythos provided. However, getting there involved quite a bit of time messing around with the code, as well as some back and forth with Opus (which was valuable).
This is a recent example that matches my overall experience working with current SOTA models (the ones mere mortals like me have access to).
TL;DR: I don’t think AI already has better judgment than (most) senior people. Obviously, that might change with future models. But that’s a hypothetical scenario. It might as well not change anytime soon.
I'll add they also seem to make 'bad' judgement calls around which layer to implement something, often preferring downstream fixes/hacks/workarounds when upstream fixes would be better.
They also duplicate code lots rather than finding and reusing existing.
Both of these patterns lead to degradation and time wasting in complex code bases. Part of the behavioural adaptation I've made in using these tools is heading these off as much as possible at prompt-time
My prompts are often verbose to several paragraphs
This is true, but we also don’t know the long term architectural tradeoffs that are right for an LLM-maintained codebase.
For human-maintained code you manage duplication and locality of changes in the codebase because you want concepts to fit inside a human’s working memory. Keeping method bodies short is so they fit in one code window on the screen.
LLMs’ working memory works in very different ways; they see codebases not as windows of code but as blips of grep results. It might be that it’s easier for an LLM to just ensure five pieces of code are all modified in sync with one another than to safely implement a DRY refactoring.
> It might be that it’s easier for an LLM to just ensure five pieces of code are all modified in sync with one another than to safely implement a DRY refactoring.
One thing they are definitely not doing is making decisions based on how easily and quickly they will be able to maintain those decisions in the future, or considering that duplicating code rather than creating abstractions will be easier for them to keep track of because of their "very different working memories."
They're just doing a bad job. It's not some sophisticated work avoidance/efficiency in defiance of feeble human abilities to maintain what they have written. 1) LLMs are not lazy, and 2) if writing maintainable code is part of the remit, they're consistently failing. You can't convince me simultaneously that LLMs can handle everything, and also that they can't figure out how to factor their code in a way that would be a pleasure to review.
It simply doesn't make sense. If they're so good, they can make it easy to read and well-factored. If they can't make it easy to read and well-factored, they ain't so good. Saying that they're so good that the code has to be this bad is a very weird rationalization. One that apparently involves speculating about their internal states in a strange way that sounds a lot like the projection of fantasies.
I’m just saying we don’t yet know what works best long term for LLM managed code. Not suggesting that what LLMs produce today is optimized for that, and ‘human-readable’ is for sure a good default place to start.
It also differes between human-maintained codebases, too.
For some greenfield project I'm developing, 99% of the time, fixing architecture and going as far upstream as possible is the right choice.
For the codebase I'm working on professionally, doing the hacky thing is the right choice most of the time, because there's enough people changing it frequently enough, with little coordination, that architecture is fluid, and hacks only survive if they work well enough (otherwise someone will come around and fix it).
That was true pre-LLM, too, and is simply a function of scale. And ironically, it's not laziness but pragmatism - at this scale, you just can't assume code you worked on last month will look today like anything you remember. Code review process + extensive linting and testing and AI-assisted analysis filters out most of the junior-style mistakes and flag ugly hacks, so you get a moment to pause and double-check, but if it's good enough, you merge it in and go do another useful thing.
This is how you end up with a big ball of mud [1]. If the argument is that LLMs are just as capable as humans at building big balls of mud, then I'm not sure it's much of an endorsement of their use.
I've thought about that and I agree. One thing I'm wondering though is, are we really ready to go all-in on making a codebase that is effectively unmaintainable by humans?
They're very tuned towards 'solve the problem now with the resources you have'. They can implement a hacky downstream fix and then there is a fix. A proper upstream fix takes time and probably requires access that they don't have, and it might not be accepted.
That mostly matches my experience, but there is a caveat that you're not considering.
You don't know what good judgement calls the AI made along the way. Or rather you do but not in detail because those are the part you looked at that said, okay, this is good code and I should ignore it. Your judgment is biased because you're looking at the bad parts and not the good parts.
I think we are already at the point where code quality doesn't matter anymore because no human can keep up with the output. I don't like the code that these AI agents produce, but what do I care when I no longer have to read the code? As long as other AI agents can continue to understand it, it's good enough.
This seems to assume more code shipped equals more work done. I am still not convinced that this is necessarily the case. Sometimes it is. Sometimes it is not. You mentioned that reviews are now the bottleneck and that your familiarity with the code has decreased. That tradeoff might eat into the parallelization gains over time.
Definitely not - the biggest risk with this increased speed is going full-bore in the wrong direction. A product mindset (and a critical eye to architecture) matters more now than ever.
Most people hyping their AI use mention the short-term gains without taking into account how it affects overall long-term success. We are creatures of convenience.
>I notice another trend were a lot of AI naysayers haven't really spent a ton of time getting intimately familiar with AI.
I don't think that's really true, it's more your feels than anything. I've noticed this thing where everyone that's using AI think nobody else is using AI, or at least not the cool way they are doing it. It's typically nonsense.
I've been using AI for quite a while, personally and professionally, and I can already see the clusterfuck it's causing. I still don't let it work on my important personal projects, but for simple tools and websites, sure. At work we're told to use AI exclusively to code, and it's already causing problems - the AI just endlessly applies bandaid after bandaid and it's turned the code to spaghetti. Nobody even reads the code, the people above just tell us to approve it and ship it. I'm looking for a new job because I already know this isn't going to produce the long-term success they are expecting. All it is doing is making it more expensive to write software, without the knowledge of how the code works, and if you can't already understand how that looks in the future, well... I don't know what to tell you.
These are exactly the kinds of people who should NOT base their diabetes management on the "suggestions" of LLMs! There is the real risk that such users lack the competence or judgement to critically assess the convincing-sounding output of an LLM.
I don't think that LLMs are trustworthy companions in managing a complex metabolic disease like diabetes - especially if you deviate (ever so slightly) from the norm (very lean, very active, strict diet, etc.)!
I'm a T1D myself and like to experiment with ChatGPT (or Opus). My experiences are mixed
LLMs are overly cautious when it comes to correcting with insulin. They regularly advise against correcting before going to bed, even if this means that my blood glucose remains above 140 mg/dl for the whole night.
I am following a low to medium carb diet (<100g a day). ChatGPT always nudges me to consume more carbohydrates, even though I have a TIR of 90% (70-150 mg/dl). Why would I change my diet if it currently works very well for me? Still, most LLMs seem to favor carbs for some reason.
I am using Fiasp as my fast acting insulin. Typically, I inject around 1 to 4 IUs of Fiasp. Its glucose-lowering effect typically lasts for roughly 2-3 hours. Therefore, I know that it is safe to re-inject after three hours without risking insulin stacking. But ChatGPT regularly advises against that and wants me to wait another 1-2 hours.
I am not against automating diabetes management. In fact, I really appreciate projects that help with that. But I don't consider LLMs to be helpful in this regard. Their combination of training data bias, liability aversion, lack of context, and one-size-fits-all thinking disqualifies them from such tasks.
Really appreciate this, every failure mode you named is real.
What's in today: prompts forbid specific dose recommendations, suggestions are directional only, ratio/factor changes capped at ±20%, dangerous phrasing pattern-blocked, and the model gets your actual pump profile (basal, IC, ISF) as context so it's not applying generic defaults.
What's not in today: no diet pattern signal. If you're running low-carb the model won't know unless it shows in glucose response. The Fiasp timing issue you described generic ADA framing overriding actual pharmacokinetics is exactly what I want to catch and don't have a great answer for yet.
Phase 1 of the roadmap has adaptive response profiles (different framing for experienced T1Ds vs newly diagnosed) and an expanded curated RAG knowledge base aimed at this. Not shipped yet though.
Would genuinely love an issue with your Fiasp + low-carb examples. Concrete test cases from someone running a non-standard protocol are what would actually move this forward.
Really appreciate this feedback. Every failure you named is real. I have had similar experiences with ChatGPT giving me bad information. I plan on solving for this by expanding on the RAG system that's being used. The AI gets its context based on settings you are giving it. The platform has some settings built in around insulin types but this needs to be expanded. The platform is not designed to give you dosing recommendations I really built this to help you understand your own data so you don't fly blind. Any thing the AI says to you is clearly labeled as not medical advice and the expectation is that your medical provider is in the loop before you make any medical decisions. I will take your feedback into consideration as I continue to explore new ways to shape the output you get from the platform.
I understand this instinct, but I can see the appeal of capabilities that are well within the limits of a well-designed agentic system.
Imagine asking such a system, "look at my postprandial response to dosing for the past week and make ratio suggestions for breakfast, lunch, and dinner." This is genuinely helpful, saves time, and well within the reasoning limits. You could spot check if you like.
Is it worth setting up such an assistant for the value you'd get out of it? I guess that's on the user and how many similar use cases exist.
> look at my postprandial response to dosing for the past week and make ratio suggestions for breakfast, lunch, and dinner
I'm not so sure about that. A patient absolutely must critically evaluate the LLM's suggestions. A naive user risks severe complications. A user with that kind of competence, however, doesn't need an LLM for such trivial adjustments - they're obvious
I've had a rough time with the last two EVs I've owned. I bought a Honda e in 2020 because of its retro-future charm, but ended up being disappointed by several things:
- the range was miserable
- the software quality was bad
- no OTA updates ever (despite Honda's promises)
- slow charging
- poor public charging infrastructure in Germany
I should have known that a 35 kW battery wouldn't deliver great range or charging speed. But I didn't fully appreciate how limiting it would be.
Last year, I bought a new Mini Cooper e. Larger battery. Better software. BMW's quality actually delivered this time. The car feels objectively nice. The software is polished. There are updates. Few bugs. But the range still leaves something to be desired. In summer it's okay. During winter 30-40% of the range just melts away.
Public charging in Northern Germany still sucks:
- too few public chargers
- chargers are often broken or out of service
- pricing is intransparent
Municipal utility companies ("Stadtwerke") seem especially bad at maintaining their charger fleets. Every second charger that I want to use is out of service. The one next to my apartment has been labeled as "defective" for a couple of weeks now. Nobody seems to care...
I still like (love during summer) my car. It's a cool car. It feels luxurious. It's comfortable. It's fun to tear around corners. It's still compact enough to maneuver through the city. And it looks cool. But it also costs 40-50k EUR and only has limited range. And public charging really needs to improve.
I really don't know why EVs necessitate a new software platform. Car makers are shit at software. Actually nearly everyone is shit at software. I know they want to turn their cars into mobile subscription-based analytics platforms for the money but combining it with the concept of the drivetrain power supply is just unnecessary and it's actually potentially lethal for the future company. Yes it's a nice try to bamboozle people into thinking that it's normal and actually somehow necessary for a car to be a wheeled iPad when it's electric, but that only works if the iPad side actually works.
When people see you your EVs are a bug ridden mess and say no thank you, they're not rejecting your electric cars because they're electric. The answer isn't to retreat from electric and then excrete the same shitty software from the shelved EVs into the legacy ICE models. Now you just made people annoyed by the remaining cars that you do sell.
If the manufacturer downclocks your car for safety, can't you sue them for the loss of value? Surely they're admitting that they sold you an unsafe vehicle.
In theory if you bought your phone from one of their vendors you could get your cash back. In practice, the phone was old enough to have already been resold and there's no way you could claim that rebate
Inversely I leased a Fiat 500e for a year in Detroit Michigan and had no issues with range ~130 miles. I would plug it in nightly as I had a level 2 charger installed at my house.
The experiment was quite successful. I just didn’t like front wheel drive on somedays with heavy snow.
I used it for commuting to work, buying groceries and visiting friends nearby. It met my needs and I feel a slightly bigger car with 4 doors and 200-250 mile range should be sufficient for most of the people (assuming it is affordable)
It's not a prerequisite: I see lots of people plugging their cars at public chargers in my residential area; I assume they charge once a week while doing groceries or dining out.
And being in your car doing nothing waiting for the charge for 25mn is frustrating. Even more so when it’s the height of summer (and that was in a car where the AC didn’t block charging).
If you can time it with some errands it’s less of a hassle, but that was one of the main non-car annoyances with my EV rental (the other was the flakiness / unreliability of getting a charging session to start).
I only use public fast charging when on a long road trip. So the 30 min charge always coïncides with me emptying my bladder, so it's never been a hassle.
As I wrote, this was a rental, there was no charger where I was and no mains adapter provided with the car, so my options were fast charger or pushing the thing.
And even during long legs I don’t need to piss for 30mn every two hours.
I charge my car with the granny charger dangling out the window next to where I park. Been doing so for 2 years now. I have some high density foam packed in the window crack to keep the cold out. Im in Ireland.
My friend has had one for about 6 years and put about 40,000 miles on his. Then one day some battery control module died. Now the car is a brick, and isn't worth fixing. The whole battery has to come out to get to the module, and it's possible that the battery itself is still bad. But we won't know until the module is replaced... which means putting the battery back into the car before knowing it's condition.
Shouldn't that still be covered under the battery warranty?
Related: The problem I have with Fiat is that there's an obvious step to combat the impression of poor reliability/durability: Increase the standard warranty. If Fiat declines to increase the standard warranty, the impression is even worse — it's that they're not increasing the warranty because it isn't financially viable for them to do so, because the reliability is bad and that Fiat can't afford to warranty the cars past 3 years. Compare to e.g. Hyundai with a 10-year/100k-mile powertrain and 5-year/60k-mile general in the USA.
Also related: I'm in Canada but looked up Hyundai's USA warranty there just to give more-broadly-applicable numbers. It seems that Fiat's warranty in the US is actually better than in Canada, where it just seems comically low — other than for the high-voltage battery the Fiat 500e new vehicle warranty is lesser of 3-years/37k miles.
>Compare to e.g. Hyundai with a 10-year/100k-mile powertrain and 5-year/60k-mile general in the USA.
Most cars are sold by the first owner between 30,000 and 60,000 miles. Hyundai's warranty is cut in half for the second owner, 5/50k powertrain and 2.5/30k general. There's nothing to cover, so it's basically free to put 10/100k in all of the commercials.
Ice car engines also sometimes grenade themselves for no reason sometimes. Same story: too expensive to fix and on cheaper cars that means a write off.
Lithium batteries are highly recyclable, so is all the copper in the motor. I can promise you that fiat will never en on a landfill battery and all.
And fake meat is highly edible. But do many people eat fake meat? No. Do many people recycle lithium ion batteries? Also, no. Less than 5% is the current estimate for what percent of lithium ion batteries is recycled.
I'm curious where you got those numbers from. I did a quick search and find wildly different numbers (depending on method and source, from ~60% to >98%).
However I don't find anywhere claiming anywhere near <5%. Can you back that up?
Example source of manufacturers claiming >95% [0].
This is probably because it's not economical to recycle lithium ion batteries, certainly not for the lithium itself. Lithium is an extremely abundant element. If this ever stopped being the case, or if there are other battery components that were scarce enough to make batteries economical to recycle, we'd start doing that.
There's no virtue in recycling equipment for recycling's sake alone, we do it in exactly the situations where some raw material in the equipment is expensive enough to justify the cost of the recycling process.
Anything at all is recyclable if you're willing to spend enough money on the recycling process. If the raw materials of that thing are cheaper to get from nature than they are to get by recycling old versions of the item, then this is a good sign that it's not worth recycling the item and therefore we shouldn't do it.
Dunno, had a trip through it last year, there are more than enough chargers. Some of them were literally free.
I have 70kWh battery though. Also, I paid much less than 40k for my chinese SUV. The software is buggy though, a random reboot on motorway doesn't feel nice.
Does the random reboot affect the motor, lights, defogger, signals, anything else absolutely essential to driving?
Don't get me wrong, I'd be annoyed and unsettled if the sound system or gps or whatever rebooted while I was driving, I'm just curious just how dire it is
On my Renault Megane e-Tech, the Android infotainment system sometimes requires a reboot while driving. If I have the route visualized on the instrument cluster screen, that stays working fine while the infotainment reboots.
So clearly entirely separate systems, despite it is obviously also running Google maps to show the route. Presumably this is quite common.
Well we're talking about a Chinese-made car purchased and driven in Germany, so I'm not sure what American safety standards have to do with the situation...
Cars which are built to sell into the US market (Japanese and European) all follow these regulations. If the EU has similar laws, then a Chinese car that sells into the EU would need to follow the same rules here, but I don't know enough about EU safety regulations to be sure.
It depends where you are. I live in a somewhat rural area in Northern Germany. There are some chargers, but many of them are out of service like the one next door. I've never stumbled upon a free charger though.
Do you not charge at home? I charge at home 99% of the time. I only really need the public infra when I'm going to the big city, or when going on a roadtrip.
I work all over Europe and I’m not super impressed with the state of charging infrastructure in general and it seems particularly bad in German.
One thing that’s super annoying and this is not specific to Germany, but why the fuck do I need some shitty app to use your charger? Should be tap and go like any other purchase. You know, like how I pay for my petrol?
Seems to me like everyone wants to force an app down my throat where it’s really not needed. It especially sucks when you’re a visitor to the country.
> why the fuck do I need some shitty app to use your charger?
I have PHEV that doesn't pull much from a charger, and I usually don't use chargers for money, but... When I charged for fun while I was shopping at a grocery store, it ended up being like a 70 cent charge. If you bill 70 cents to a credit card, it doesn't make sense. Tieing it to an app, you can either charge more and have me loan you the balance, or you can wait until I acrue enough debt that it's economic to charge me.
With full EVs, they can usually pull enough current to reach a billable amount in a short time, but aggregating charges may still be useful.
This is where China has it right. You can pay 1 yuan by WeChat no problem. Scan the QR code, enter "1", the shop terminal says "1 yuan paid" out loud, job done. And yes some things are 1 yuan, for example picking up a parcel from a parcel locker a day late.
Yes, the entire economy is beholden to two payment portals (WeChat and Alipay) and I'm sure the analytics are off the scale and you're completely fucked if you can't use or get banned from the platform but the actual 99% user experience is exactly the microtransaction dream that people have been unable to solve in the west for decades.
It doesn't have to be an app to handle small transactions - different countries already have mechanisms in place to handle that - e.g. any credit card purchase under $5 gets a $1 surcharge, to avoid the surcharge you can tap with a debit card (with much lower transaction costs).
Sounds Bad in the north. In the south I have a charger max 10 min away in every direction. And 300kw charger are also the norm for long distance charging. I was surprised to see that even some Aral gas stations removed some of their pumps and replaced them with high speed chargers around here.
You're making me very happy with my decision in 2021 to resist the appealing design of the Honda and buy an id3 with a reasonably sized battery.
Also your in winter are you running the heater constantly? I find just dressing for outdoors, leaving the heater off and using heated seats/wheel means I only lose maybe 15% range.
That's not really the context of the comment though. The point is just that an EV turns ~80% of its fuel energy into motion (with the rest as heat) and an ICE turns about ~30% of its fuel energy into motion (with the rest as heat).
If you need heat, an EV needs to turn more of its fuel energy into heat, while an ICE can just repurpose what was otherwise being dumped.
The second factor is your battery needs heat. So you may be forced to generate excess heat even if you aren't using it in the cabin.
The point being is that EV cars are a great idea, but the American auto market was not a good _general_ fit, and manufacturers didn't tailor their products enough to actually be successful. They really just pushed a bunch of product onto the market to capitalize on government subsidies.
Which, to me, is the real "risk." Manufacturer incompetence. That all being said my next car will probably be a hybrid.
What is your point exactly? That EVs manufacturers should be held to standards higher than everyone else who markets products by focusing on the upsides? Or that we should continue to use inefficient climate destroying technology because it happened to provide a side benefit that we've become habituated to?
Seams to be a non issue in the south, I can charge near my house, everywhere I have to do something and at work.
Aka, every super market has at least one charger. Most parking spaces have 2-3 chargers. From various vendors. Some even for less money then you can get for your own house per kWh.
I also had no issues in the north east so far or in north rein westfalia.
Chargers usually don’t break but get shut down when the grid can’t handle their load currently.
Public AC charging in Germany isn't great, but DC/Fast charging is quite good. I traverse the entire country with a Kia Nero EV, and that's not really a problem using either EnBW, Tesla or Ionity chargers. Besides these networks there are enough others with mostly nation-wide coverage (but not as cheap as these).
(EnBW and Ionity for 39ct/kwh, tesla for a bit more or less, depending on time and location)
The Mini Cooper E, the one adapted from the i3 platform from 2013 but without the nice parts of the i3 such as the light carbon fiber monocoque, the aluminium frame, and the rear wheel engine and rear wheel drive?
I hate to say it, but doesn't a lot of this have to do with your poor choice of vehicles? You bought a 35kW battery-equipped EV and replaced it with an EV with a 32.6kW battery. What did you expect?
I don't see poor software as a problem that's related to the powertrain. My ICE vehicle from 2016 has poor software that never gets updates.
You overspent on a Mini because Minis are overpriced vehicles. On mobile.de I see a used VW ID3 (82 kW (Pro S)) with 60000 km miles on it listed for 22000 euros. I see a Kia EV6 GT-line with 18000km (77 kW) for 33000 euros.
I totally understand the issues with broken and insufficient chargers, as we have that same issue in the USA, but that's why you maybe avoid getting the kind of vehicle that has some of the smallest battery on the market if you need that range.
I agree. Though I replaced it with a car with a capacity of 40 kW and better overall efficiency. You're right, however, that I could have bought a used VW ID.3 or similar. But I can't stand how these cars look or feel. I'm also not complaining. I really like my car. I just wanted to share my experience :)
Germany is a car country. They live in the cult of ICE. It seems to me that the less people give a shit about cars the more likely they are to embrace EV.
JFrogs platform is fairly robust. Only time will tell if this project can keep up. I highly doubt it's more than a fancy-looking prototype at this stage
A few weeks ago I noticed DNS4EU couldn’t resolve archive.is and assumed it was just a configuration mistake. I emailed them about it, and after a couple of days or weeks (not really sure) the domain started resolving again. Given AdGuard’s recent report about suspicious pressure on DNS providers to block Archive.today, I’m starting to wonder if DNS4EU’s temporary block was actually related to the same campaign
member of DNS4EU ops team here - This was not the case, we had reachability issues with the authoritative servers of archive.is and had to reach out to the team to allow our source IPs.
>The archive.is owner has explained that he returns bad results to us because we don’t pass along the EDNS subnet information. This information leaks information about a requester’s IP and, in turn, sacrifices the privacy of users.
Someone asked the archive.is owner why he does this in the past. It's because of similar situations to this one where someone who wants to get archive.is taken down uploads illegal content, requests archive.is to save it, and immediately reports archive.is to their country's legal authorities. His solution to this is using the EDNS information to serve requests from the closest IP abroad, so any takedown procedure requires international cooperation and therefore enough bureaucratic overhead that he gets notified and has time to take the content down. https://news.ycombinator.com/item?id=36971650
I also find the "we don't want to leak a requester's IP" explanation for blocking EDNS to be suspect. The way DNS works is that you ask for the IP address for a domain name, you get the IP, and then you connect to it. With Cloudflare's DNS, the server doesn't know your IP when you do the DNS lookup, but that doesn't matter because you're connecting to the server anyway so they'll still get your IP. Even if you're worried about other people sniffing network traffic, the hostname you're visiting still gets revealed in plaintext during the SNI handshake. What Cloudflare blocking EDNS does do is make it much harder for competing CDNs to efficiently serve content using DNS based routing. They have to use Anycast instead, which has a higher barrier to entry.
> Even if you're worried about other people sniffing network traffic, the hostname you're visiting still gets revealed in plaintext during the SNI handshake
Many sites now support Encypted Client Hello. This makes it possible to send the hostname after the connection has been encrypted. This is enabled by default on cloudflare hosted domains (when cloudflare also manages DNS).
There was a report some years ago that found the IP address being connected to is often enough to identify the website being visited, even when using a CDN. I think you have to go to VPNs at a minimum, or Tor preferably. Tor doesn't help with correlation attacks from global passive/active adversaries though, or even folks with access to a lot of netflow data.
Personally, I have never liked the PEP 634 pattern matching. I write a lot of code in Python. 99% of the time when I could use pattern matching, I am going to use simple if statements or dictionaries. Most of the time, they are more straightforward and easier to read, especially for developers who are more familiar with traditional control flow.
Dictionaries with a limited key and value type definition are fine, but dictionaries as a blind storage type are a recipe for crashing in prod with type errors or key errors. Structural pattern matching exists to support type safety.
I'll argue that code is in fact not easy to read if reading it doesn't tell you what type an item is and what a given line of code using it even does at runtime.
What’s the problem using it as a switch statement if you care about typographic issues? I do this so I’d like to know if I missed something and this is a bad practice.
It's not an issue, but that's not where most of the power is and can also be confusing since if you use variables in the case statement, the way it watches does not behave like a simple switch.
Some of the differences were:
- Mythos recommended salvaging damaged labels. I pushed back: data whose structure is broken shouldn’t be trusted
- My simpler more readable test caught a regression that Mythos’s more elaborate test missed
- Mythos allowed invalid values, citing real-world data that I could not reproduce, while I decided to follow the spec
- Mythos kept the old error types. I made every kind of malformed input raise the same error, and accepted a small, documented breaking change for anyone who relied on the old ones
Overall, I much preferred the final version of my PR to the initial draft Mythos provided. However, getting there involved quite a bit of time messing around with the code, as well as some back and forth with Opus (which was valuable).
This is a recent example that matches my overall experience working with current SOTA models (the ones mere mortals like me have access to).
TL;DR: I don’t think AI already has better judgment than (most) senior people. Obviously, that might change with future models. But that’s a hypothetical scenario. It might as well not change anytime soon.