>Then we can look at Europe, you have this demilitarized continent that is doing things like seizing Russian ships because they are confident that the US will step and fight a war with Russia on their behalf. Well, they are going to learn that reality has changed and the US no longer has the power projection capability it once did. And what will they do? My guess is that at least one European state will nuclearize.
I was nodding along to your post until this point. Where are you from? Russia is not an innocent party in all of this, which is what your post is implying. Secondly, there are already two European states (who are not Russia) with nuclear weapons.
AI coding is only going to increase. Eventually coding is going to join several other fields where it is much more about verification than the building of the code. I predict that eventually most programmers are not going to be looking deeply at the internals of the code, but are going to be spending most of their time on the verification.
If that were to happen those companies, products and practices would fail. They would be out-competed by all the organic enterprise shovel-ware and SAAS shit-code that has set such a high bar of quality over the last 30 years.
Please, lets revisit in the next few years. I think one of us is blinded by bias, and I think it is you, and I think the only way to judge is evidence, since arguments obviously don't make any difference.
This was the exact line I heard during the brexit debate here in the UK. I am not from the UK. I'm not from the EU. I don't know whether than makes my view biased or not, but I hope that I was as unbiased as I could be during that referendum.
It seemed to consist of a bunch of unconstrained and disjointed lies, and whenever the other side tried to point out they were lies, they were told they just weren't listening.
You were right about one thing though, it was increasingly frustrating.
Never use analogies when arguing online. It only ever results in exactly this, people nitpicking the metaphor. You've essentially given them a way to "be correct", about something irrelevant.
You're not an outlier. The anti-AI stance is likely to be vocal online. They're quite incentivised to talk about it. Most programmers have adopted AI assisted programming (my own assertion) and most will feel like you and I, that it is useful. I know of a few programmers personally who hate it, but even they use it. There is no going back.
It is pretty obvious that when you come into a large incomprehensible codebase (which most are), AI will be able to reason about it more quickly and guide you through it.
I switched away from my work for a few minutes, but at the very moment I'm using AI to summarise some spaghetti code in a particular area in our codebase, so I can refactor it.
And that is my style of working at the moment. AI coding is useful, sometimes amazing, but sometimes irritating, and from experience I think just telling it to refactor this area would result in something I'm not happy with. So instead I'm getting a handle on it, I'll form the design I want, then tell it to do it. I have a feeling a lot of complaints are from people who won't bother to do that.
Congratulations. You've added another build tool and sprinkled your code with ugly annotations and ifs and Optional Optional.of(x).map(y) all over the place to get the same thing you'd get by moving to Kotlin.
I get it why this seems like a less drastic change, but this saddens me. Kotlin solves more issues with the type system (smart casts, reified types, immutability by default), without sacrificing readability. Unless I can see a solution in Java that makes dealing with NPEs as easier for lazy developers as ignoring them, I don't consider it a solved issue.
I don't really think about it too much, it works fine. We don't use Optionals, I'm not sure why you brought that up. I'm not a dogmatic person in this respect, rather pragmatic. I'm sure Kotlin is great, and I'd enjoy writing it, but for now, the vast majority of the finance world runs on Java, so it's what we use. I find it easy to work with, which counts for a lot.
> Congratulations. You've added another build tool and sprinkled your code with ugly annotations and ifs and Optional Optional.of(x).map(y) all over the place to get the same thing you'd get by moving to Kotlin.
You deserve the strawman award of the year.
NullAway and JSpecify encourage making as many types non-nullable as possible, thus they can actually also advice about removing redundant null checks. Nullable types become the painful exception that visibly spreads through the codebase, which discourages writing code that relies on null.
Optional doesn't enter the picture at all. NullAway kills their usecase within ones own code. They are anyway only recommend as return types to force others to check for an emoty case, but I think Optional will become fully optional when the Java platform gets nullable types on its own.
Google Error Prone is a code linting tool that's very useful in its own right, and NullAway is just another plugin.
I can't remember when I started reading HN. Possibly as late as around 2017/18. I lost one account I had when I changed company, and this is my latest account. Obviously you can't tell for sure, but I know that I am not a bot and I know that every single developer in my company (only a few hundred) have agents writing almost all of their code. I'm in the fintech industry (trading side). I have a lot of connections from my long career in the industry. Everyone else is using coding agents too.
I don't think I could find a job in my industry if I tried that didn't want me to write code using coding agents.
Obviously I can't prove any of this, so try emailing a recruiter and test it for yourself.
From what I can tell, a lot of newly registered users are equally as vehemently against AI as there are those that are pro. I guess we see things through our own personal filter.
That depends on how you see it. I started off studying physics, but transitioned to CS. I found I was good at CS and loved tinkering, but the tinkering was always for the exploration of problems. That was always the point, not typing characters on a screen.
I admit, there is/was a certain element of enjoying the zone during development sessions. But mostly, it was the problems, not the tool.
I happened to become good at coding, and good at doing it in a corporate setting, so I adapted my habits, learned to write the best sort of code that keeps a production system solid and fast. But as I say, typing the characters was never really the point. Now a very fast assistant helps me type the characters. I guide it very closely. A lot of the time I have to correct it. Often if I know it is going to probably take a wrong direction I'll write the skeleton of the code I want, write the skeleton of the tests to prove it, and give it this as a "spec". This gets fantastic results.
If they don't have the required knowledge before coding, how are they going to have the required knowledge if you skip the design and just hand them the finished code?
It isn't obvious which technology you mean by this. I'm assuming you mean LLMs.
Even then, you're almost certainly incorrect. The goalposts get moved constantly, this is just the latest. Within a few years this isn't going to be an argument.
I was nodding along to your post until this point. Where are you from? Russia is not an innocent party in all of this, which is what your post is implying. Secondly, there are already two European states (who are not Russia) with nuclear weapons.
reply