Posted by mooreds 2 days ago
Why would I choose to slow myself down in the short term and allow my skills to atrophy in the long term (which will also slow me down)?
I can live without these things, but they're nice to have without expending the effort to figure out all the boilerplate necessary for solving very simple problems at their core. Sometimes AI can't get all the way to a solution, but usually it sets up enough of the boilerplate that only the fun part remains, and that's easy enough to do.
Managing a team of interns isn't fun, and I have no idea why someone who is a competent developer would choose to do that to themselves.
But among people I’ve worked with whose capabilities I can judge, the competent programmers are not building things like this. Among my own sample size there is a near perfect negative correlation between AI use and competency.
This is just being a TL. the agent is an assistant or a member of the team. I don't know why we need to call it "Async AI programming", unless we want to shy away from or obscure the idea that the agent is actually performing the job a human used to perform.
And then, I need to detail very precisely what "Promise.all()" (and "return") really mean in the context of async/await. Which is something that (I feel) could have been abstracted away during the async/await syntax definition, and make the full magic much more natural.
ChatGPT explanation: https://chatgpt.com/share/68c30421-be3c-8011-8431-8f3385a654...
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...
prior to any dev they plan to do in JS/TS.
PS: 10 bucks that none of them would stay.
[spoil: "when you are already an expert of the tool detailled in it"]
Update: oh my god, I read the article. And feel completely cheated!!!!
Note for my future self: continue to read only the HN comments
1- Define what task the program should perform
2- Define how the program should do it
3- Writing the code that does it.
Most SWEs usually skip to step 3 instead of going through 1 and 2 without giving it much thought, and implement their code iteratively. I think Step 3 also includes testing, review, etc.With AI developers are forced to think about the functionality and the specs of their code to pass it to AI to do the job and can no longer just jump to step 3. For delegating to other devs, the same process is required, senior engineers usually create design docs and pass it to junior engineers.
IMO automated verification and code reviews are already part of many developers workflows, so it's nothing new.
I get the point of the article though, that there are new requirements for programming and things are different in terms of how folks approach programming. So I do not agree that the method is new or should be called "async", it's the same method with brand new tools.
[1] https://www.youtube.com/watch?v=-4Yp3j_jk8Q
[2] https://www.youtube.com/watch?v=uyLy7Fu4FB4
The thing I like least about software engineering will now become the primary task. It's a sad future for me, but maybe a great one for some different personality type.
> This version of "async programming" is different from the classic definition. It's about how developers approach building software.
Oh async=you wait until it is done. How interesting.