Comment Warning! (Score 5, Funny) 48
Objects in Mirror Appear Smaller Than They Are (*)
(*) Astronomical telescope joke.
Objects in Mirror Appear Smaller Than They Are (*)
(*) Astronomical telescope joke.
We're running a business here. We need real software, not toys created as a fun weekend experiment with a chatbot or burning money to run an agent and get 50% (or more likely 5%) of the way there.
The market will kill it naturally
Yes there's a mechanism for that. It's called destroying a part of your life. Maybe you lose your job "naturally". Maybe you lose 10-20 years of your wealth growth "naturally". Maybe crime goes up in your neighborhood "naturally".
No. There's nothing "natural" about market repricing mechanisms, they are destructive, and many people get hurt. In the case of the AI bubble, those getting hurt are not the billionaires early investors, unless we actively resist it.
You're either with us or against us, like one of your compatriots used to say.
And it doesn't use MongoDB.
There are still 0.4% of people in denial and still running Windows 7 as well according to Statcounter, they are going to get just desserts if they don't install Linux or force an upgrade to Windows 11.
The real world is more complicated than that. For example, we still have a Windows 7 machine in my office. It has some very expensive but still very useful software locked to it that has no direct replacement available on either Linux or Windows 11. Obviously we have to be careful about security and controlling access to a legacy OS like that.
Blunt statements about "forcing an upgrade" are worthless in this kind of situation. Chances are anyone who is still using a system like that has a good reason for it, at least if it's in use professionally. We buy these assets because they solve problems. Those problems might or might not have a useful and cost-effective solution available on a different platform. If there is no modern solution available and the original still works, your statement that "the old ways are obsolete" is by definition false.
What you do need to do is rationally assess the risks and the threats you face and provide other ways of mitigating the risks and protecting against the threats if you can't rely on, for example, a legacy OS that no longer gets security updates to be secure by itself. But then ideally you shouldn't be relying on any single device or piece of software being secure as your only line of defence anyway, and assuming you already have some degree of defence in depth, accommodating unusual requirements is more a redistribution of security responsibilities than a fundamental change of approach.
Yes, it does look like we broadly agree here.
I suppose the main thing I'd have said very differently is the terminology, in that I wouldn't regard the kind of incompetent senior as a senior in the first place. But then I'm pretty old school about this: to me, a junior developer needs quite close supervision to produce useful results, a regular/mid developer can perform routine tasks with minimal supervision but might need more help with larger or more complex tasks, while a senior is someone you can give more or less any task on your project to and they'll figure it out, and senior is also the level of someone who would be capable of supervising and training a junior.
We've had a wave of people, particularly since the tech boom during COVID, who have obviously been over-promoted due to the employee's market and title inflation. They might now have titles like "senior" or even "lead" or "staff", but they don't have the skills and experience to operate successfully at those levels. I agree the acceleration of everything due to increasing AI use tends to show these people up and I agree that a good mid-level developer using AI might well outperform them. But then I suspect in reality a good mid-level developer was probably outperforming them before AI as well, it just wasn't so obvious.
Frontiers models are experts in all domains at this point. Chemistry, math, medicine, biology, legal, creative writing, programming, philosophy - you name it.
That is wildly optimistic IME. Frontier models do a great job of sounding authoritative on any given subject. This is not the same as actually having expert-level knowledge and understanding, and the choices the models make when you ask them to implement something can and often do reflect that. There are several domains I've worked in over the past few years where AIs lack even basic knowledge an expert practitioner would have, probably because these fields are too specialised to have a lot of books available or papers published, so presumably there hasn't been much subject-specific content to train the models on.
I don't think it's usually about what AI "did really badly on" at this point. It's more about whether the overheads of adding all the guard rails and then reviewing and correcting all the output end up costing at least a similar amount to just writing the code yourself.
For a junior developer, I'd say frontier models passed their standard some time ago. Today's LLMs routinely write code at the level of a competent junior-mid but with the advantage of an inhumanly broad knowledge base.
For a good senior, I'm much less convinced. The frontier models are hit-and-miss when it comes to writing good test suites, which matters a lot when they rely on tests so heavily to reach acceptable quality. IME, they are still mostly miss when it comes to the business insight that seniors will take into account and design/architecture decisions that keep the code manageable as it evolves. While they have become much better at recognising existing patterns in the code, and I would say they follow them reasonably well the majority of the time now, there are still bizarre anomalies that creep in, and they aren't very good at extending those patterns when necessary.
I think AI advocates also tend to underestimate just how much time it takes to properly review what they are doing. Take a half-day Claude session to implement some new feature. It might take half an hour to give it the initial brief and then review its plan. Make a few edits and it'll propose a new plan that is also long and detailed and has no edit markings to show what it changed so you have to review the whole thing, carefully and in detail, again to pick up the minor changes it also made for no obvious reason. Then you let it start doing its thing. You can't really leave it unattended for long because it'll stop to ask questions. Some of those questions might be whether it can run a screenful of ad-hoc Bash script to make some edits to your source files, because for some reason it decided not to show the actual edits as it usually would, so now you have to figure out what all the sed incantations are actually going to do while looking at those files in another editor or just trust it and then review all the changes properly later anyway. Sometimes it decides to change its plan mid-flight, but not always in a good way, and if you interrupt it to apply corrections or redirect, you break the neat plan flow it was in. Then you get to the end and you can finally see how everything it has done fits together, and you still need to review everything with the same care as you would with a junior developer's code and probably apply a few fixes where it's come up with weird names or not quite followed a pattern or imagined some instructions that were never there and made other changes in other parts of the system that should be out of scope.
If you read to the end of that last paragraph, you know how I typically feel at the end of a half day working with an agentic UI. And the thing is, I do those sessions as experiments fairly often to keep up with progress, but a lot of what I do is still written by hand, which gives me simple, objective data to compare the two ways of working and see whether the AI tools are really making me more productive once you take everything into account.
Currently, based on objective data comparing similar fully completed development tasks like for like, I still outperform agentic workflows using frontier models by about 25-50% on average, and I don't have to pay anyone extra fees to do that, and subjectively I also find it more engaging to work that way. So I don't really buy the hype about AIs making us all orders of magnitude more productive unless you're happy to YOLO everything forever and take the much-discussed risks that comes with.
Personally, I think the optimum use of LLMs right now is probably not to use them for the whole coding workflow like that or rely on agentic tools, but to use them for tasks like answering quick questions about the existing code, doing research like a fancy search engine, writing a first draft of some boilerplate, and writing quick and dirty throwaway code for experiments, one-shot tools and the like, where you don't really care about the quality as long as it gets the job done and you will see immediately if it has in fact got the job done. For these things, the LLM can read and type faster than me, and that's useful.
That's right, my point is exactly that. Humans live in the human world where herd mentality is the law and your job as a child is to master enough social patterns so that you can thrive during your lifetime. That game is a lot more complex than trying to pass off an LLM text as a human text.
On your second paragraph, I would merely indicate to you that the high water mark is not the same as the low watermark, or the median or the mean. Pointing to a few instances of "excellent writing" is statistical noise if the bulk of normal LLM written instances does not also qualify as "excellent writing". But if most or all instances of LLM writing objectively constituted "excellent writing" then it would be very easy to spot, as it would stand out against human "average writing". Either way, the in-crowd can recognize the out-crowd.
Nope. The Open Source ethos is that you get to use the software (you need explicit permission), and also to see the source code and modify it if you want, provided you contribute back. You can contribute with money, or with resources, or with bug reports, or even with explicit attribution, etc.
What you are seeing here is several generations of startups and small or large businesses using software they found on the internet for free, setting up a website once and never maintaining it. The fact that the software they use is open source is irrelevant. They're not looking at the source, the contractor who built the site is nowhere to be found, and the vulnerabilities are here to stay.
Truly no-one has to worry about this scenario. Anyone who interprets a rejection of AI slop writing as an AI classification problem misses the point.
The point is: humans have many ways to separate the in-crowd from the out-crowd, and it's not well defined what criteria are used.That's what nerds in High School always misunderstand. They think it's about breaking that one specific unfair rule. It's not and never will be.
People who fake their own writing using AI slop can be found out, either after the first incident, or the second, or the third, through a combination of many unrelated things. It doesn't matter what precisely.
Once you're labeled out-crowd, you probably stay there. Maybe you're incensed about it. Maybe you feel it's unfair that you're labeled this way for a single infraction. Doesn't matter. It's not about classification errors and well defined detection problems. It's about being socially accepted or not. There are no fixed rules.
If you fuck up you're out. So don't fuck up in trivial ways that are easy to spot.
OS/2 must die!