TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: What skills are worth learning long-term against AI?

33 点作者 candrewlee14大约 1 年前
I&#x27;m graduating this semester with my MS in CS and I&#x27;m beginning what will likely be 45+ years of career work. With the pace of AI&#x2F;ML developments in the past 5 years, what kinds of skills are most worth investing in for long-term benefit&#x2F;stability?<p>Everyone and their dog has been told in the last decade that learning to code is important. I&#x27;ve grown up hearing that sentiment consistently and I&#x27;m sure it contributed a lot to me falling in love with this field.<p>However, coding (at least in its current form) seems like one of the most at-risk forms of work in terms of AI automation. I love writing code and I think I&#x27;m good at it, but I&#x27;m not so sure I&#x27;ll be able to compete long-term with AI. I&#x27;m sure there&#x27;ll be a few &quot;John Henry&quot;s, but many devs will probably change. Keep in mind, I&#x27;m thinking on the scale of length of a whole career and not saying this is happening already. However, with LLM context lengths increasing and special hardware made for ML inference (like groq), it feels like we&#x27;re not far out from repo-level AI coding. At this rate of development, I could imagine a decade of progress might transform many aspects of day-to-day work for software development.<p>With all that being said, what advice would you give to someone just starting their career who wants to avoid shorter-term local maxima? I&#x27;ve heard lots of mixed reviews on PhDs and advanced degrees compared to working in industry, but should that calculus change with AI? Thank you!

11 条评论

mindcrime大约 1 年前
In 45 years? I predict the skills you&#x27;ll need then will include:<p>foraging, scavenging, hacking, repurposing old junk into shelter and transportation, hydroponics, stealing electricity, small scale farming, digging, ammo reloading, evading AI, creating improvised explosive devices, smuggling, ICE breaking, soldering, welding, firearms maintenance, broadcasting pirate radio and television, etc.
评论 #39645985 未加载
评论 #39619296 未加载
评论 #39634810 未加载
评论 #39628758 未加载
评论 #39613019 未加载
评论 #39611993 未加载
paulpauper大约 1 年前
Writing has proven to be surprisingly resistant to Ai. Or re-writing people&#x27;s AI-generated papers to sound more human or readable. AI-generated writing has a certain unmistakable clunkiness that tends to give it away.
评论 #39611797 未加载
评论 #39649792 未加载
aristofun大约 1 年前
It may sound banal but the more i live the more i see it’s true.<p>Learning basics never gets old.<p>Philosophy, logic, seeking truth, foundations of math, of basic nature laws etc.<p>Whatever skills gonna be needed in future- you’ll adapt, if you’re smart and flexible.<p>And only seeking the truth keeps you in shape, exploring basics helps you get smarter.
评论 #39646112 未加载
chadash大约 1 年前
Building something the right way doesn’t matter if you don’t build the right thing. Requirements are never fully specified and it is your job to use good judgment on the ambiguous parts. Figure out what business problem you are being asked to solve and recommend solutions accordingly. “If I asked people what they wanted, they would have said a faster horse” - Henry Ford<p>Also, you most likely think your job is what’s in the job description. That is not true. Unless you are in a field where output is super easy to measure (e.g., professional golf) your job is to make life easier for your boss and other people above you at your company.
austin-cheney大约 1 年前
Performance, security, and written communication. In my experience CS graduates are hilariously and profoundly bad at each of those.<p>When it comes to performance most developers are absolutely and utterly incapable of measuring things, a bridge too far. As a result most developers simply just guess at this. The problem with guessing is that people tend to guess wrong more 80% of the time and more those 50% of those wrong guesses are off by one to three orders of magnitude.<p>In my experience most developers have absolutely no idea about security best practices and yet somehow believe themselves quite brilliant at it. Security in software is Dunning-Kruger at its finest, and the confidence therein is superbly comedic. Don’t lie to yourself about security. If you want to prove to the world just how much you aren’t full of shit get a CASP, CISA, or CISSP. In my experience you are typically much safer listening to the security opinions of software developers and executing the exact opposite.<p>Written communication is also a poor developed skill for most software developers. I have seen people insane things to avoid having to send brief emails. Your ability to articulate your thoughts in writing with precision and clarity are the best way to unintentionally prove to the world just how brilliant you are. Good written communication requires practice. Don’t be that coward that hides from this because you are only harming your own professional development.
评论 #39614368 未加载
omosubi大约 1 年前
I think if you understand the fundamentals of how computers work and can debug anything to figure out what is causing a problem you will be valuable for a long time. most people either don&#x27;t have the requisite knowledge to do this, or just simply lack the drive and curiosity to figure out weird bugs. also, there are senior engineers with 10+ years exp. at the company that I work at that don&#x27;t bother to google or do any real debugging before asking a question in slack. don&#x27;t be one of those people.
f0e4c2f7大约 1 年前
Poker. Game of skill. Looks like gambling from the outside. Rich people use it as a way to socialize while wasting money. Not dependent on any technology. Has existed for hundreds of years (Lindy).<p>Practice enough to win at an average table and then know at any time you can get on a plane for Vegas, Atlantic City, or another place with consistent games and make a living playing cards.<p>Perfect as a backup plan &#x2F; hedge. Poker also teaches lots of life skills so still useful if you never really use it too.
fragmede大约 1 年前
Fundamentals don&#x27;t go away. I&#x27;d recommend getting into understanding how LLMs work, from scratch, and getting into that corner of the industry. Even if the LLMs write all the code, someone still has to direct them on what to write. They&#x27;re not going away, so expertise on how to train and operate them is going to be valuable for the foreseeable future. What is MoE or RAG? If I&#x27;d just graduated, I&#x27;d force myself into that corner of the industry.
usgroup大约 1 年前
You have to learn to maths and to code, that takes about a decade. It requires a lot of output from you. There’s no way around that. Even if it was all redundant due to AI , it is essential mental scaffolding for higher thought unreachable without it.
评论 #39616826 未加载
quickthrower2大约 1 年前
Coding will change but still exist. If the computer is coding for you you still need to understand what it did, review it etc. If it can automate everything to do with coding it can probably automate sales, marketing, finance and support :-).
gregjor大约 1 年前
I have almost 45 years experience in software development, so I can describe the skills that led to my own longevity.<p>Hardware and the tools and languages available for writing software changed and improved in many ways during my career. My phone has more compute power and memory than the mainframes I worked on in the &#x27;70s and &#x27;80s. We have more expressive and safer languages, and better tools for writing and testing code. On the other hand I still use, every day, things that date from early in my career: C and C-family languages, relational databases and SQL, Unix in the form of Linux, modern versions of the vi editor. Very little about the practice of software development changed in the last 4.5 decades -- programming books written in the &#x27;70s have the same lessons as those published last year, you just have to read PL&#x2F;I in one and Javascript or Rust in another. Read anything by Brian Kernighan to understand how little software development has actually changed in 40 years, and how programmers continue to repeat the same mistakes, &quot;reinvent the flat tire,&quot; as Alan Kay put it.<p>A big lesson learned way back in the history of software development: Getting the requirements right is the hard part. That hasn&#x27;t changed, software projects still succeed or fail mostly due to success or failure in the requirements and specification steps. A lot of programmers don&#x27;t have the experience or interest to learn the business domain or engage with management and users, so they can&#x27;t write or even correctly interpret requirements. When I started my career I worked with analysts who translated business domain expertise and business requirements into actionable software development plans for the programmers to implement [1] [2]. The analyst role faded away in many companies as software development changed from an ancillary activity (supporting an accounting or logistics department, for example) to a standalone discipline producing products that businesses would adapt to. Today software often dictates requirements rather than the other way around -- if you&#x27;ve ever worked at a company that adopted Salesforce or SAP or Oracle you know what I mean.<p>Another lesson known as least as far back as Brooks[3] wrote a book about it: People and organizational issues determine the success of software projects to a greater degree (I&#x27;d say much greater) than technical skill or choice of language. Learning how to manage teams and projects and work with all of the business stakeholders will prove more durable and valuable than learning the new language of the year.<p>Writing code got more mechanical over the years, and bugs and performance issues and resource usage became less critical because modern hardware can handle sloppy and bloated code, and modern operating systems and programming languages have a lot more guardrails and fault tolerance. That glosses over a lot of bad code, which in my opinion led to even more sloppy programming. Since LLMs will train mostly on modern code in modern languages I think we can expect more of the same -- workable code that just reiterates what someone else already wrote. That describes what a majority of programmers do now, plugging APIs together, so LLMs can join the team.<p>To answer your question: I would focus on the fundamentals, which have little to do with programming languages. The fundamental technologies that have stood up for decades with no sign of going away:<p>- Relational databases and SQL.<p>- Unix-family operating systems [4].<p>- C, because it influenced so many later languages, and expresses the essence of programming succinctly.<p>- Lisp, because it offers a counterpoint to the imperative C style that came to dominate, even if almost no one writes Lisp code today.<p>- Algorithms and data structures, and algorithmic complexity, which you can learn from &#x27;70s-era books by Knuth and Wirth.<p>I&#x27;ll add networking and security, things we didn&#x27;t have or worry much about pre-internet, but today I see a lot of demand for actual experts and few people going that direction, preferring to join the front-end web dev React swarm because of the relatively low bar to entry.<p>I would also focus on learning business domains and the systems that keep businesses running. I can&#x27;t get a job today because I know Javascript or Go, but I can get a job because I know a lot about enterprise-level logistics. Outside of the Silicon Valley tech meat grinder you find millions of companies solving business problems they can describe and attach actual costs and risks to, not looking for the next disruption (or grift) with a small chance of success. Businesses don&#x27;t have requirements like &quot;We need another thousand lines of Javascript by next month.&quot; They have requirements like &quot;We need to reduce late deliveries and mistakes by 20%.&quot; So learn at least one business domain (best to learn on the job), pay attention to the whole organization and the people, make contacts and friends who aren&#x27;t fellow Rust geeks, and hone your skills translating business needs into actionable software specifications.<p>Learn and practice speaking and writing. People who can effectively communicate have a significant advantage over those who can&#x27;t. [5]<p>You face a tough job market, especially for people trying to enter the field. Look beyond the big tech companies. You can&#x27;t ignore AI (what we&#x27;re calling &quot;AI&quot; this decade) and the possibility it will eventually write entire working software applications, though today that&#x27;s more hype and VC dreams than reality. But if that does happen I think businesses will still need actual experts who have experience and skills, not just a good memory and algorithm for spewing out code. And I know businesses will need people who can solve business problems rather than just write code.<p>[1] <a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Structured-Design-Fundamentals-Discipline-Computer&#x2F;dp&#x2F;0138544719" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Structured-Design-Fundamentals-Discip...</a> (for example)<p>[2] <a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Reliable-software-through-composite-design&#x2F;dp&#x2F;0884052842" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Reliable-software-through-composite-d...</a> (for example)<p>[3] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;The_Mythical_Man-Month" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;The_Mythical_Man-Month</a><p>[4] <a href="http:&#x2F;&#x2F;doc.cat-v.org&#x2F;bell_labs&#x2F;utah2000&#x2F;" rel="nofollow">http:&#x2F;&#x2F;doc.cat-v.org&#x2F;bell_labs&#x2F;utah2000&#x2F;</a><p>[5] <a href="https:&#x2F;&#x2F;www.dreamsongs.com&#x2F;Files&#x2F;PatternsOfSoftware.pdf" rel="nofollow">https:&#x2F;&#x2F;www.dreamsongs.com&#x2F;Files&#x2F;PatternsOfSoftware.pdf</a>
评论 #39612735 未加载
评论 #39614212 未加载
评论 #39612346 未加载
评论 #39617214 未加载
评论 #39613132 未加载