Superintelligence CouncilСовет гения · sim.im

DHH · 2025-07-12 · source ↗ · whole document (13)

Programming language for beginners

`5:20:26`

There's a book called "Learn to Program" by Pine that uses Ruby essentially to just teach basic programming principles that I've seen heavily recommended. So that's a great language. — [Lex] How quickly would you go to Rails? — It depends on what you wanna do. If you wanna build web applications, go to Rails right away. Learn Ruby along with Rails, because I think what really helps power through learning programming is to build programs that you want, right? If you're just learning it in the abstract, it's difficult to motivate yourself to actually do it. Well, some people learn languages just for the fun of them. Most people do not. Most people learn it because they have a mission. They wanna build a program. They wanna become a programmer. So you gotta use it for something real. And I actually find that it's easier to learn programming that way too because it drives your learning process. You can't just learn the whole thing up front. You can't just sit down and read the language specification, then go like, ooh, like Neo. Now I know kung fu. Now I know Ruby. It doesn't download that way. You actually have to type it out in anger

`5:21:26`

on a real program. — Yeah, yeah, for sure. — So I would start there. But then number two, I probably would be JavaScript. Because JavaScript just is the language you need to know if you wanna work with the web. And the web is the greatest application platform of all time if you're making business software, collaboration software, all this kind of stuff. If you're making video games, you should probably go off and learn C++ or C or something else like that. But if you're in the realm of web applications, you gotta learn JavaScript. Regardless of what else you learn, you gotta learn JavaScript. — So if you're learning Ruby, what does Ruby not have in terms of programming concepts that you would need other languages for? — I dunno if there's any concepts missing, but it doesn't have the speed or the low level access of memory manipulation that you would need to build a 3D gaming engine, for example. No one's gonna build that in Ruby. You could build quite low level stuff when it comes to web technologies in Ruby.

`5:22:28`

But at some point, you're gonna hit the limit and you should use something else. I'm not someone who prescribed just Ruby for everything. Just once you reach the level of abstraction that's involved with web applications, Ruby is superb. But if you're writing, for example, HTTP proxy, go, it's great for that. We've written quite a few HTTP proxies lately at the company for various reasons, including our cloud exit and so forth. And Kevin, one of the programs I'm working with, he writes all of that in Go. Go just have the primitives and it has the pace and the speed to do that really well. I highly recommend it. If you're writing an HTTP general proxy, do it in Go. Great language for that. Don't ride your business logic in Go. I know people do, but I don't see the point in that. — So what would you say the three, so Go, Ruby plus Rails, JavaScript? — Yeah, if you're interested in working with the web, I'd pick those three. Go, Ruby and JavaScript. — Go, Ruby and JavaScript, okay. Functional languages? — Someone's talking about Ocaml.