Forgot your password?
typodupeerror

Comment Re:Harm (Score 1) 107

While this is true, being the subject of an experiment to see what happens when you do that is not something most people would choose for themselves. It's not *irrational* to be concerned. Absence of evidence on a largely unexplored question like microplastic infiltration in human bodies is not the moral equivalent of absence of evidence in an extensively studied question like a vaccine-autism link.

Comment Re:Good (Score 3, Insightful) 146

While it's true every issue has its own dimension, even if those dimensions are linearly independent, they're not necessarily orthogonal. Independent basis vectors can still have a non-zero dot product—in other words, issues which are distinct from each other can align to some degree.

Comment Re: I don't get it (Score 1) 39

But even Trillion dollar companies like Meta essentially freeload off the likes of Php where a contribution in the low millions or tens of millions works help bend development to their liking,

Even less: clearly most of these companies don't particularly want to influence the directions (they could hire the devs if they really wanted to). They're jut content to use them. If they chucked, say, 10 grand a year at a handful of projects, the problem would be solved.

But I guess companies are now meeting their doing good quota

It's not even doing good, it ought to be pure, bloody minded self interest. The cost of things like the PHP exploit, heartbleed and so on are absolutely immense. Investing a small amount in the future i jut good business. Trouble it it needs everyone to do it to make it so cheap they don't notice.

Comment Re:Yes. (Score 1) 172

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

The best phrase I heard (I think here) was "10 years experience or 1 year experience repeated 10 times".

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.

Ostensibly yes. The juniors I'm thinking of certainly do need close supervision, though I don't think Claude replaces them because the good one use claude.

What I've noticed is there are a lot of jut plain crap mid level and senior people (for some value of senior). They can do more or less what you say, except they're still crap. The results will be overengineered piles of crap where they've decided to use the latest "technologies" which are really due to curiosity not some actual need. And the whole thing comes with an attitude problem too.

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.

This is true, but my big corporate job spanned COVID, and I can assure you that the problem existed before COVID. Some of the refugees (haha they were in for a shock) from other big corporate shitshows had much the same to say.

Comment Re:There is no such thing as legacy anymore (Score 4, Interesting) 68

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.

Comment Re:Yes. (Score 1) 172

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.

Comment Re:I don't get it (Score 5, Insightful) 39

Even that somewhat inflated sum is pocket change for just one of the many major corporations which rely on PHP.

I challenge you (well obviously this is impossible but you get the rhetorical point) to find one corporation in the entire world valued at over a billion that doesn't, say, use openssh. The OpenBSD foundation struggles to raise CAD 400,000 a year.

Sure they are legally allowed to be freeloaders. The point of the license is anyone can use it. It's really stupid however to contribute absolutely nothing when it's critical infrastructure you rely on day to day and you could easily afford a sponsorship. But it's the tragedy of the commons.

Comment Re:Yes. (Score 2) 172

For a junior developer, I'd say frontier models passed their standard some time ago.

No, I disagree, and now that I'm thinking about it more, quite strongly. I think frontier models passed the mediocre programmers of all seniority levels some time ago. I've worked with so many arrogant pillocks who are convinced they are the shit and will not listen to someone with domain expertise and then get pissy when they turn out to be wrong. Or worse, get political and push through an objectively broken thing.

Good juniors can drive AI really well and do good stuff. I had a summer intern the summer just gone. 2 month placement in the middle of an engineering degree. Basically gave him a problem I didn't have time to work on: you know "here's the current solution, here's what I know, this is the problem, go nuts" kind of deal. Obviously there were regular feedback sessions, but he did all the work, and used AI heavily but not religiously. And that's now part of the product. He was obviously very very junior, but I've had seniors who were less capable and flexible.

The frontier models are hit-and-miss when it comes to writing good test suites,

I've also found the mediocre are very much monkey-see-monkey do kind of programmers who write tests because those are Bet Practices and they are the Best. But they also as I say convinced they are the shit and don't appear to actually believe their code need testing really. CI is there to put the halt on all the fools they are surrounded with, not them of course, but they know they need to model Best Practices for the unwashed.

End result, a lot of programmers are shockingly bad at writing tests and basically test useless things that are easy to test and unlikely to break but don't do what's actually hard but important. This appears to be what Claude has been trained on: basically the average, on average and it tends to write long batteries of more or less meaningless tests.

Naturally good juniors aren't very good at tests initially. They're juniors, but I find it's the attitude that matter. It's not hard to convince them they might be wrong and that there's a need for testing. Or "prove to me Claude hasn't messed it up", kind of thing. I'd much rather work with an enthusiastic junior who wants to prove me, Claude or themselves wrong than a senior programmer who I have to beg to consider the notion that their code might not be perfect.

TL;DR I broadly agree, but I think Claude makes the competent/incompetent split starker, not the junior/senior split.

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.

Yes, though as you say quite a lot of stuff can be YOLO'd.

Comment Re:It's complexity related (Score 4, Informative) 172

It's amazingly good at some stuff and not at others.

It can bash out a CRUD app with a web based UI in basically no time, and really well. Think some boring internal tool like inventory management or something. Would cost a fortune to buy and also suck massively. It would from a project perspective count as long and complex, but from a pure software point of view, it's not complicated stuff. It's well documented. It's also a horrible tech stack.

It's also very good at indexing an unseen codebase and figuring out entry points for things. I've known people, or rather a person, that good, but I ain't.

But I've also seen it make a complete shitshow of threading in a small, contained task. It's also so-so if that at optimization. I set it on making thing go faster. I had the dataset, and specified tests. It found the hotspot and made it faster, which is frankly more than a lot of programmers can do. Most of them will smugly tell you everyone knows e.g. std::unordered_map is slow (and you're implicitly a moron for using it), change everything to their own implementation on a Friday night then bugger off. So yeah better than that, but I let it churn for ages with its agents and it didn't get much further. So I put some easy wins in by hand.

It is quite often wrong and i definitely worse in areas requiring domain expertise. But then again that's the case with your average programmer. It's also a bit weirdly pissy at time, but much less so that many programmers, so that's a net win. It won't flounce off if you tell it to delete a bunch of code it just wrote.

So...

Yeah I use it and quite a lot.

Comment Re:Additional Question (Score 1) 172

This isn't wrong. One of my devs is on a bit of a side quest to see how far he an get with Qwen locally (5070Ti) compared to Claude. He was basically trying to answer the GP's question. Resort so far: it's not as good as the latest frontier model feels like 4.6 instead which is pretty solid. Main thing is it's got a pretty small context, but that's due to the 16GB size of the GPU not the model per-se.

Comment Re:They can do a better jon than most people (Score 2, Insightful) 172

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.

Comment Re:Yes. (Score 4, Insightful) 172

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.

Slashdot Top Deals

Why be a man when you can be a success? -- Bertolt Brecht

Working...