(评论)
(comments)

原始链接: https://news.ycombinator.com/item?id=43503295

Hacker News 上的一个帖子讨论了 Replit CEO 的言论,他认为由于 AI 的出现,学习编程正在变得过时。评论者大多不同意这种说法,认为即使在 AI 的辅助下,对编程基础的理解仍然至关重要。他们将此与工业革命以及计算器在数学中的应用作比较,强调工具可以增强技能,但不能取代技能。 一些用户指出了仅仅依赖 AI 生成的代码而不理解其含义的陷阱,列举了程序员难以调试甚至理解建议的解决方案的例子。有人认为,那些缺乏扎实基础概念理解的人,可能会构建出脆弱的系统。普遍的共识是,AI 将成为经验丰富的开发人员宝贵的工具,使他们能够提高生产力,但这并不会消除对编程专业知识的需求。一些用户已经开始看到 AI 在一些简单任务上的好处,例如生成文档和提交信息。

相关文章
  • (评论) 2025-03-14
  • (评论) 2025-03-22
  • (评论) 2025-03-23
  • (评论) 2025-03-22
  • (评论) 2024-03-13

  • 原文
    Hacker News new | past | comments | ask | show | jobs | submit login
    Learn to code, ignore AI, then use AI to code even better (kyrylo.org)
    23 points by kyrylo 53 minutes ago | hide | past | favorite | 12 comments










    If you spend time on places that attract newbie programmers (some subreddits focused on game dev or game engines, for example) you’ll see the outcome of “I no longer think you should learn to code.” And it’s not pretty.

    Many, many posts of people looking for help fixing AI-generated code because the AI got it wrong and they have no idea what the code even does. Much of the time the problem is simply an invented method name that doesn’t exist, a problem that is trivially solved by the error message and documentation. But they say they’ve spent several days or whatever going back and forth with the AI trying to fix it.

    It’s almost a little sad. If they just take the time to actually learn what they’re doing they’ll be able to accomplish so much more.

    Now of course people learning the traditional way have these same problems, but they’re debugging code they wrote, not gobbledygook from an AI. It’s also easier to explain the solution to them because they wrote the code, so it tends to be simpler. Several times I’ve pitied someone asking for help with AI code and even when I explained the solution they still didn’t understand it, and I had to just give up on them - I’m not getting paid to help them.



    > Because if you can vibe code… so can everyone else.

    That's really the money shot, right there.

    CEOs have this dream of firing all their "obnoxious" engineers, and "vibe-coding" their own products. That's not something new. People have been selling this dream to gullible C-suiters since I first started coding in Machine Code (1980s).

    The future will belong to the engineers that can leverage AI. Engineering is a lot more involved than "HAL, write me a Facebook," which is the C-suite dream.

    It's just that engineering will move another level up, as it has, for hundreds of years.



    The rise of tools like Cursor reminds me of the Industrial Revolution in France. When machines first appeared in factories, unskilled workers who didn’t understand how they operated often got injured - sometimes quite literally losing fingers. But for skilled craftsmen, these machines became force multipliers, dramatically increasing productivity and improving overall living standards.

    The same applies to software development. If you lack the fundamentals - how memory, I/O, networking, and databases work - you’re at risk of building something fragile that will break under real-world conditions. But for those who understand the moving parts, tools like Cursor supercharge efficiency, allowing them to focus on high-level problem-solving rather than boilerplate coding.

    Technology evolves, but the need for deep knowledge remains. Those who invest in learning the craft will always have the advantage.



    For a cynical take, 10, 15 years ago this headline would have been "Learn to code, ignore Stack Overflow, then use SO to code even better".

    In this context, AI is just one of many resources you can use - books, websites, SO, etc - to improve your coding. The big differentiator is that you can have a realtime conversation with AI, whereas when talking to other people - be it on SO, IRC, Github, forums etc - you may or may not get a response and it may or may not be helpful. AI tools are a bit more predictable that way.

    I'm of the opinion that AI will not replace developers but will be another tool in their arsenal. And part of the skillset of (some) developers will be working with an AI tool effectively. I don't have that yet, but then, I don't know much about Docker / K8S, cloud providers, low level memory management, pure functional coding, Rust, graphics programming etc etc either.



    I would also suggest getting off Twitter.


    The message those people are sending is truly awful.


    This is my reaction to the recent tweet by the Replit CEO, where he said that learning to code will be a waste of time.


    That is obviously just something he has to say, to pitch his AI company, but I reckon it is BS.

    Since AGI does not seem around the corner, coders will be required as ever.

    But I would not ignore AI to learn to code. Its great for asking endles stupid beginner questions. And yeah, some answers will be wrong, but my human tutors also taught me some very wrong concepts. But some coding without any help, is likely beneficial for learning.



    I wonder how much the success of AI coding tools hinges on having a decent learning set?

    Because if a lot, I predict that as more published code is generated, we will find ourselves locked in a certain point in history in terms of versions of dependencies.



    To me this is just like maths ... At school we learnt addition subtraction multiplication and division... Then we did it with a calculator... Same thing here ... Except the calculator needs much more compute and ram ... So the thing is we need to learn what is right before we can use these tools....


    Using LLMs to write code is a waste. If its rote code or boilerplate it sucks at writing it consistently.

    If its novel code, it's not in its training set.

    What LLMs don't suck as much is writing semi readable docs and commit messages.



    We've got an LLM analyzing merge requests. While most of what it writes is too wordy for my liking and I'd prefer if people making MRs would actually write good descriptions and commit messages instead of saying "we use squash merges", one thing I do like it is that it suggests a better title. The title of an MR is used in the squash merge commit, and that commit is used in the changelog which is what users of our library rely on to consider what they need to check before upgrading.

    On the one side, people should write good MR titles for this reason. On the other, sometimes you just don't know, and people's brains are already overflowing with all of the tasks they need to do in order to do their job properly.

    But also, finally, it's just a suggestion; we don't have AIs writing our changelog yet, except ironically to make them worse / cringe.







    Join us for AI Startup School this June 16-17 in San Francisco!


    Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact



    Search:
    联系我们 contact @ memedata.com