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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

Ask HN: Platform for senior devs to learn other programming languages?

134 点作者 Raed6676 个月前
A few months ago there was a post about a platform looking for funding (i think ?) that was highly praised for the quality of its content.<p>I thought I favored the link, but I can&#x27;t seem to find it ? Any help ?

22 条评论

roetlich6 个月前
I think you are looking for Exercism: <a href="https:&#x2F;&#x2F;exercism.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;exercism.org&#x2F;</a><p>Great website!<p>Edit: This also looks good, haven&#x27;t tried it yet: <a href="https:&#x2F;&#x2F;app.codecrafters.io&#x2F;catalog">https:&#x2F;&#x2F;app.codecrafters.io&#x2F;catalog</a>
评论 #42277199 未加载
fifilura6 个月前
These days my main problem when learning is coming to terms with the development environment.<p>Python, how do I install and work with venvs? What is poetry and why is it better?<p>Scala, what is sbt and how do I make it work in Intellij?<p>Things I have learned under way, but still more of a headache than the actual language, since most ideas there are recognizable. And problems in the dev env can make you get stuck for several hours.<p>Docker helps a bit as an abstraction, but not all the way to the development environment.
评论 #42281868 未加载
评论 #42282445 未加载
评论 #42280135 未加载
评论 #42280534 未加载
评论 #42281874 未加载
评论 #42282464 未加载
评论 #42282770 未加载
评论 #42293225 未加载
suprjami6 个月前
There is also<p><a href="https:&#x2F;&#x2F;learnxinyminutes.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;learnxinyminutes.com&#x2F;</a><p>It gives small language syntax&#x2F;feature tours.<p>Each file is legitimate syntax for the language it documents.
评论 #42278482 未加载
评论 #42277724 未加载
labarilem6 个月前
As a self-guided alternative, you could try going through <a href="https:&#x2F;&#x2F;adventofcode.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;adventofcode.com&#x2F;</a> problems with your language of choice.
shay_ker6 个月前
I&#x27;m a big fan of Execute Program from Gary Bernhardt:<p><a href="https:&#x2F;&#x2F;www.executeprogram.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.executeprogram.com&#x2F;</a><p>It uses interactive exercises + spaced repetition. It&#x27;s really the only way I&#x27;ve managed to learn Regular Expressions.
评论 #42279827 未加载
kristianp6 个月前
On a related note, I found going through &quot;The Raytracer Challenge&quot; helped me to re-familiarise with C++ (after 20 years). Note that the book isn&#x27;t language-specific. Installing clangd (and getting it to work with my text editor) really helped too, to speed up the edit-fix loop. Perhaps going through a book like that is a good way to challenge yourself to learn enough of a language and its tools. The test-driven format of the book was good to make sure that my code is correct at every stage.<p><a href="https:&#x2F;&#x2F;pragprog.com&#x2F;titles&#x2F;jbtracer&#x2F;the-ray-tracer-challenge&#x2F;" rel="nofollow">https:&#x2F;&#x2F;pragprog.com&#x2F;titles&#x2F;jbtracer&#x2F;the-ray-tracer-challeng...</a>
keyle6 个月前
Alternatively rewrite some non trivial work of your own from X to Y language. You&#x27;ll learn more than making frivolous programs about made up stuff.
评论 #42279727 未加载
thebigspacefuck6 个月前
Not sure which post you reference but <a href="https:&#x2F;&#x2F;codecrafters.io">https:&#x2F;&#x2F;codecrafters.io</a> is pretty cool for learning a new language
评论 #42277804 未加载
ecuaflo6 个月前
What’s the difference between how a senior and non-senior learn that would warrant a unique platform for each?
评论 #42278128 未加载
评论 #42277765 未加载
评论 #42278113 未加载
评论 #42277932 未加载
评论 #42277723 未加载
pseudocomposer5 个月前
I’d like to echo what others are saying about building stuff you want to exist in the language you want to learn. I learned Flutter&#x2F;Dart largely by building BeatScratch (<a href="https:&#x2F;&#x2F;beatscratch.io" rel="nofollow">https:&#x2F;&#x2F;beatscratch.io</a>), and Rust entirely (and parts of functional React) by building Jonline (<a href="https:&#x2F;&#x2F;jonline.io" rel="nofollow">https:&#x2F;&#x2F;jonline.io</a>).<p>But secondly, <i>if you can, get work or your career path to let you build something in a new language.</i> A lot of learning new languages (both programming and human) comes from social reinforcement and riding social waves. Smaller companies are a lot better for this than bigtech.<p>I learned Ruby at a company I was hired as a Java dev for initially (that had lots of Ruby staff). I learned Go and my first bits of React when a Ruby company I worked for was acquired by a Go company. My current company hired me to work on an Elm frontend without me having written a line of Elm in my life.
paxys6 个月前
As long as you know basic programming, the best way to learn a new language is to just jump into an existing project or start a new one from scratch. Classes and tutorials will get you nowhere.
danjl6 个月前
Learning a new syntax takes a day or two, a week or two at the most. Having a site or product that helps you with that doesn&#x27;t seem important, at least to me. The hard part about learning a new language is learning <i>how</i> to use it, not its syntax. Learning how to use it requires working with it, and for a long time, somewhere in the 3 to 10 year range to really become an expert. You can&#x27;t <i>learn</i> experience quickly using any product or YouTube video.
0xmarcin5 个月前
My bet would be to write a small program using your target language. With ChatGPT this is extremely easy as you will get a list of recommended libraries to use. Try to choose an app that requires some serious coding e.g. creating an image board like 4chan is better than coding a tic-tac-toe.<p>My recommendation is that the learning app should:<p>- Interact with an SQL database<p>- Expose an HTTP endpoint (REST or GraphQL)<p>- Use a logging framework<p>- Use concurrency<p>- Use a unit testing framework and a few integration tests<p>- Build should be automated using GitHub actions<p>In my opinion that&#x27;s the fastest way to learn a language or more broadly a platform (as every language now is a kind of platform with its own set of libraries, conventions, idioms and untold rules).<p>PS. My list is probably not good for a system language like Rust or C++, but should work for languages from Ruby &amp; Python, though Java &amp; C#, up to Go and Erlang.
t-writescode6 个月前
My old boss gave me some good pointers: find Koans. Ruby Koans, Kotlin Koans, there&#x27;s probably a Koan for your language. It&#x27;ll help you wrap your head around the basics of the language, and sometimes they&#x27;ll even help you set up the development environment, which some people have alluded to being difficult.<p>From there, it&#x27;s just ... using it. Making lots and lots of mistakes.<p>I didn&#x27;t start really learning Typescript until it was a very real obligation for me, and my style of programming and the reasons for it have definitely changed over the last year as a reflection.<p>Accept that this sort of change is going to happen and that it&#x27;s natural and even a good thing. It&#x27;s okay to be new at things again and to make mistakes :)
itronitron5 个月前
I&#x27;ve found <a href="https:&#x2F;&#x2F;www.boot.dev&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.boot.dev&#x2F;</a> useful for picking up the language specifics of Python and Go, and they have many other courses as well.
bhasi6 个月前
Codecrafters! Highly recommend it. Also the second half of Nand2Tetris.
revskill5 个月前
Create or realize your own problems first. Then reuse and improve existing solutions.
cannibalXxx5 个月前
you could look for help here on this site. there you will find a lot of pertinent information related to programming <a href="https:&#x2F;&#x2F;chat-to.dev" rel="nofollow">https:&#x2F;&#x2F;chat-to.dev</a>
nunez5 个月前
Honestly, if you&#x27;re looking for practical experience, you can learn a lot just from having that language&#x27;s linters&#x2F;security&#x2F;style cops up and running and building a toy app (with tests) in that environment. If you want high-level understanding, the tutorials are usually enough.
zifpanachr236 个月前
This is a bad question cause it comes off as judgmental and everything...<p>But what do you think you are getting out of a &quot;platform&quot; when it comes to learning a language?<p>I agree with keyle that you&#x27;ll learn more working on a real project than doing a platform curriculum that is usually designed around beginners.<p>Just my personal hot take. I like exercise I suppose if that&#x27;s the sort of thing you really think would be helpful.<p>The only reason I&#x27;m giving you this answer is cause you said explicitly &quot;for senior devs&quot;. I don&#x27;t really know any senior devs personally (that would admit to) using &quot;platforms&quot; or exercises to learn new languages. For me, I open up the docs and start writing a project, and I think that usually gets the job done learning a new language a bit faster.<p>Most platforms are way too beginner oriented, and you&#x27;ll rarely get anything that requires more than a small amount of code...it&#x27;s tough to learn a language very well until you have more than say 1000 lines and are seeing how the tooling and modules and whatnot really work on a realistic size of project...
评论 #42279904 未加载
swishman6 个月前
Use LLMs. Claude could generate a full course plan and execute it
hn_throwaway_996 个月前
Honestly, I find ChatGPT excellent for this. There are two basic things I usually ask it for:<p>1. First, I ask it to give me a conceptual overview, going through the main features of a language I know well and then asking for the equivalent in the new language. I also ask it for specifics&#x2F;features in the new language that aren&#x27;t present in the language I know well.<p>2. If I have specific questions, I&#x27;ll write a code snippet in a language I know well and ask it to translate it to the other language. I might also ask it for &quot;library equivalents&quot;, e.g. if there is some specific library that is the &quot;standard&quot; for doing something in one language, I&#x27;ll ask what is the standard in the other language.<p>Related example: I <i>suck</i> at shell scripting because there is so much esoteric shit in it, so I used to just write short scripts in JavaScript and run them in Node because I&#x27;m so much more comfortable with JS and Node. Now, though, I&#x27;ll just ask ChatGPT to write the script for me. The code isn&#x27;t always 100% bug free, but I understand shell scripting well enough to usually fix any bugs. Also, if there is something I don&#x27;t understand (e.g. ${VAR_NAME##*&#x2F;} was a new one for me today), ChatGPT explains it well.<p>If you haven&#x27;t tried it, I strongly recommend using ChatGPT (or Claude, etc.) for learning a new programming language.