Live data from Hacker News

A coder considers the waning days of the craft

newyorker.com

711–720 of 1001 posts

Re: A coder considers the waning days of the craft

#711
* AI is good at hard (to human) tasks like explaining complex code but bad at easy (to human) tasks like counting C files in a codebase. * AI is particularly effective at taking over repetitive work full of toil e.g., reviewing large PRs. As a result, it will allow more developers to focus on fun things like building new features. * AI will increase the number of developers worldwide because it reduces the barrier to entry for programming. * AI will reduce the fear involved in starting large-scale projects like migrating codebases from one framework/technology to another.

Re: A coder considers the waning days of the craft

#712

Earlier quoted context omitted.

Yep, lots of people are using LLMs for problems LLMs aren't good at. They still do an alright job, but you get that exact situation of 'eh, its just okay'. Its the ability to use those responses when they are good, and knowing when to move on from using an LLM as a tool.

Not terribly different than Google Translate. Ff you have a familiarity with the foreign language, you can cross check yourself & the tool against each other to get to a more competent output. If you do not know the foreign language at all, the tool will produce word salad that sort of gets your point across while sounding like an alien.

[dead]

Re: A coder considers the waning days of the craft

#713
post #592

Earlier quoted context omitted.

so-so? Thats a problem too basic to ask in a coding interview, almost.

Yea, he says multiple times that he's not a good coder but that his friend is even worse. However, his worse friend + GPT combined can build whole apps.

> his worse friend + GPT combined can build whole apps.

Which is cool and noteworthy! But cute little apps are not the "craft". The craft is solving problems in novel ways, managing enormous complexity, scaling massively, delighting users, choosing just the right amount of future-proofing so that future migrations are smooth but the code remains comprehensible, balancing performance and readability, enabling other developers to build on your work... those sort of things.

Now, if senior-level developers or successful start-up CTOs start expressing that they feel AI can replace them... then I will worry that the craft is waning! (I'm not doubting it'll happen in my lifetime. It's just that this article isn't it.)

Re: A coder considers the waning days of the craft

#714
post #501

Earlier quoted context omitted.

I'm always asking it to stitch together ad hoc bash command lines for me, eg "find all the files called *.foo in directories called bar and search them for baz". (`find / -type d -name 'bar' -exec find {} -type f -name '*.foo' \; | xargs grep 'baz'` apparently.) I would have done that differently, but it's close enough for government work.

Except you should at least try to write code for someone else (and probably of lower level of competence - this also helps for your own debugging later) - obscure one-liners like these should be rejected.

If the someone elses on my team can't read a short shell pipeline then I failed during interviewing.

Re: A coder considers the waning days of the craft

#715
post #29

Earlier quoted context omitted.

AI taking over one of the only professions able to afford someone a proper middle class existence is pretty shitty. It will be great for capitalists though.

This is the real point. If the profits from AI (or robots) replacing Job X were distributed among the people who used to do Job X, I don't think anyone would mind. In fact it would be great for society! But that's not what's going to happen. The AI (and robots) will be owned by the Shrinking Few, all the profits and benefits will go to the owners, and the people who used to do Job X will have to re-skill to gamble on…

"Someone makes an invention by which the same number of men can make twice as many pins as before. But the world does not need twice as many pins: pins are already so cheap that hardly any more will be bought at a lower price. In a sensible world everybody concerned in the manufacture of pins would take to working four hours instead of eight, and everything else would go on as before. But in the actual world this would be thought demoralizing. The men still work eight hours, there are too many pins, some employers go bankrupt, and half the men previously concerned in making pins are thrown out of work. There is, in the end, just as much leisure as on the other plan, but half the men are totally idle while half are still overworked. In this way it is insured that the unavoidable leisure shall cause misery all round instead of being a universal source of happiness. Can anything more insane be imagined?"

https://harpers.org/archive/1932/10/in-praise-of-idleness/

Re: A coder considers the waning days of the craft

#716

Earlier quoted context omitted.

That's about my experience. The worst dev on my team uses ChatGPT a lot, and its facilitated him producing more bad code more quickly. I'm not sure it's a win for anyone, and he's still unlikely to be with the team in a year. It allows a dev who doesn't care about their craft or improving to generate code without learning anything. The code they generate today or a year from today is the same quality. Part of it is t…

Bless this person your team, he is creating work out of thin air and will keep your team and possibly other teams employed for a really long time

Exactly - and people say AI will take away jobs!

Re: A coder considers the waning days of the craft

#717

Earlier quoted context omitted.

We’ll see - but given the gap between chatgpt 3 and 4, I think AIs will be competitive with mid level programmers by the end of the decade. I’d be surprised if they aren’t. The training systems we use for LLMs are still so crude. ChatGPT has never interacted with a compiler. Imagine learning to write code by only reading (quite small!) snippets on GitHub. That’s the state llms are in now. It’s only a matter of time b…

With today's mid level programmers, yes. But by that time, many of today's mid level programmers will be able to do stuff high level programmers do today. Many people underestimate an LLM's most powerful feature when comparing it with something like Stackoverflow: the ability to ask followup questions and immediately get clarification on anything that is unclear. I wish I had had access to LLM's when I was younger. S…

A lot of what we learned was learned by hours and days of frustration.

Just like exercise trains you to be uncomfortable physically and even mentally, frustration is part of the job.

https://www.thecut.com/2016/06/how-exercise-shapes-you-far-b...

Those who are used to having it easy with LLMs will be up against a real test when they hit a wall.

Re: A coder considers the waning days of the craft

#718
post #602

Earlier quoted context omitted.

Sometimes it requires expert guidance to get something meaningful out.

This is the correct answer. I have 23 years of experience in datacenter ops and it has been a game changer for me. Just like any tool on one's arsenal, it's utility increases with practice and learning to use it correctly. ChatGPT is no different. You get out of it what you put in to it. This is the way of the world. I used to be puzzled as to why my peers are so dismissive of this tech. Same folks who would say "We…

I think it's more akin to using compilers in the early days of BCPL or C. You could expect it to produce working assembly for most code but sometimes it would be slower than a hand-tuned version and sometimes a compiler bug would surface, but it would work well enough most of the time.

For decades there were still people who coded directly in assembly, and with good reason. And eventually the compiler bugs would be encountered less frequently (and the programmer would get a better understanding of undefined behavior in that language).

Similar to how dropping into inline assembly for speeding up execution time can still have its place sometimes, I think using GPT for small blocks of code to speed up developer time may make some sense (or tabbing through CoPilot), but just as with the early days of higher level programming languages, expect to come across cases where it doesn't speed up DX or introduces a bug.

These bugs can be quite costly, I've seen GPT spit out encryption code and completely leave out critical parts like missing arguments to a library or generating the same nonce or salt value every execution. With code like this, if you're not well versed in the domain it is very easy to overlook, and unit tests would likely still pass.

I think the same lesson told to young programmers should be used here -- don't copy/paste any code that you do not sufficiently understand. Also maybe avoid using this tool for critical pieces like security and reliability.

Re: A coder considers the waning days of the craft

#719
post #658
post #618

Earlier quoted context omitted.

Well no, you shouldn't use it for your top-end problems, but your bottom-end problems. Aren't there things that you have to do in your job that really could be done by a junior programmer? Don't you ever have one-off (or once-a-year) things you have to do that each time you have to invest a lot of time refreshing in your brain, and then basically forgetting for lack of use? Here's an example I used the other day: Our…

Perhaps by learning to use the YT API (seriously something that should take 2 hours max if you know how http works) you'll learn something from their design choices, or develop opinions on what makes a good API. And by learning a bit more python you'll get exposed to patterns you could use in your own language.

If anything, using GPT-4 makes a lot of that more efficient. Rather than scrolling through loads of API documentation trying to guess how to do something, writing Python with a "C" accent, I can just read the implementation that GPT-4 spits out, which is almost certainly based on seeing hundreds of examples written by people who are fluent in python, and thus using both to best effect.
Post reply on HN