5 ms·
from the original tweet linked in the post "ceiling is being raised. cursor's copilot helped us write "superhuman code" for a critical feature. We can read this
by blueappconfig 2y ago
from the original tweet linked in the post
"ceiling is being raised. cursor's copilot helped us write "superhuman code" for a critical feature. We can read this code, but VERY few engineers out there could write it from scratch."
I don't really agree that code is superhuman if VERY few is able to understand it haha..! Code should complex but easy to follow to make it brilliant in my opinion
- janikvonrotz 2y agoI agree! This is not superhuman code, this is machine code.
- zarzavat 2y agoEven an average programmer can understand it if they bothered to read the TypeScript documentation. “Superhuman” in this case means “has read the manual”.
- blueappconfig 2y agoNo average person would be happy if they saw that mess
- frou_dh 2y agoThat's also how you become an extreme outlier at Bash. Actually read the manual.
- abathur 2y agoMy favorite kind of manual to actually read is sprinkled with hijinks-enabling arcana, and the Bash manual doesn't disappoint on this front.
- throwaway11460 2y agoI read hundreds of the funny chat logs!
- nertirs 2y agoSeems like the tweet is another AI hype pr piece. Since Devin was making outlandish statements, CoPilot can't fall far behind.
- jameshart 2y agoThat’s not the claim. It’s well commented and formatted so actually quite readable. The claim is that very few could write it. Though I would say that ‘very few’ is a larger group than they think - there are plenty of people doing metatype programming in TS; I’ve dabbled enough that given the problem I could probably tackle it and I know I learned from seeing others do it (because I am far from a typescript professional). So it’s not ‘superhuman’ if many of the humans who have found themselves wanting to work with the typescript type derivation model could have written it. These capabilities - type ternaries and inferred type parameters - were put into TypeScript with a view that humans would use them. The danger here is kidding yourself that this sort of code is beyond human.
- nicklecompte 2y ago[flagged]
- rtpg 2y agoBlog author, yes on being a PLT dork. It was mainly very funny to me how I _immediately_ knew what category of code the tweet's snippet was about. Just instantly knew this was a type spec translator. Seen 10 of them, seen them all.
- hesviiggvv 2y agoI have `MaybeRequired` serving almost the exact same purpose! You are right it’s a common problem, a useful approach, and I just wish TS had better support for case analysis than chained ternaries.
- michaelt 2y ago> It’s well commented and formatted so actually quite readable. Are you looking at the same code I'm looking at? The first block of code from the article? I've seen more readable code in Perl Golf competitions.
- jameshart 2y ago
- Octoth0rpe 2y agoI think Kernighan said something along the lines of "Because debugging code is twice as hard as writing it, only write code half as smart as you are or you'll never be able to fix it later". AI-assisted code generators seems to make this problem much worse as I can now write code 2x, or 3x as smart as I am. What hope will there ever be in debugging this? A more optimistic take is that maybe such tools will let us write competent code in languages we do NOT specialize in, and in the future either a more competent version of ourselves or some actual expert can fix it if it breaks? That doesn't sound a whole lot better :/
- hobs 2y agoThe optimistic take is a feedback loop that makes them both better and more capable, writing code you can't debug is bad, but it could help you understand and build your own skills to a point that you can. The pessimistic and more likely outcome is that people just want shit done and so they will slap any half working garbo together as they have done for the last 20 years I have been in the industry.
- AnimalMuppet 2y agoAnd AI-assisted code is almost certainly code that AI can't debug...
- ozim 2y agoWhat if I told you that one can write code again from scratch instead of fixing broken one? Writing replaceable code instead of maintainable code seems to be already working for a lot of projects. With LLMs and all that fast computing we have it seems it will be more of replaceable code in the future. Of course there are always projects where it will never work. It already works for infrastructure as nowadays servers are not fixed and treated like important things but you spin up fresh one.
- rezonant 2y ago> Writing replaceable code instead of maintainable code seems to be already working for a lot of projects. I contend that these two concepts aren't different. If you have the ability to easily replace a small part of the code and have everything still work, then that's very maintainable. Unless you are talking about throwing out the whole codebase and replacing it, which for sufficiently complex codebases will inevitably lead to the second system effect. If replacing the whole thing is easy, it was probably not that valuable or complex to begin with, but that's not the kind of code where maintainability is paramount. > It already works for infrastructure as nowadays servers are not fixed and treated like important things but you spin up fresh one. For that metaphor to work, the programmer would have to be patching the binary output instead of fixing the source code and recompiling.
- shiandow 2y agoTechnically they're saying they can read it but wouldn't be able to come up with it on their own. Which is impressive, generally reading code is considered harder than reading it so in that sense it is inhuman.