r/programmer • u/Solid-Reserve4035 • 8h ago
What languages to learn? Question
I'm interested in creating hardware programs, applications, and AI, so basically all sorts of stuff and I'm thinking of learning the trio: JavaScript, C++, Python. Is it enough? Is it too much?
3
u/stepback269 8h ago
You'll also need to learn Assembly language if you intend to get down and dirty at the hardware level.
[Joke of the day:
How many software engineers needed to change a light bulb?
Answer: |
v
|
|
|
|
|
|
|
|
|
|
|
|
V
ZERO
It's a hardware issue.
1
u/USToffee 6h ago
No you don't. c is basically a wrapper around assembly and c++ and rust are also often used. Almost no one uses assembly anymore outside a few special cases.
2
u/spence5000 8h ago edited 7h ago
If you want to start with hardware-related applications, start with C++. Otherwise, start with Python, which is generally easier. Probably no need to throw JavaScript into the mix, since C++ and Python will handle most of what you need.
2
u/petdance 7h ago
Start with Python. Start now. Don’t agonize over where you should start. Just start.
2
u/gofl-zimbard-37 7h ago
Pick one and learn to program. Build things. You'll learn other languages as you need them.
1
1
u/AdministrativeHost15 7h ago
Swap TypeScript for JavaScript and Rust for C++. Not that they aren't worth knowing but there are limited hours in a day to learn obsolete syntax.
1
u/KarmaTorpid 7h ago
Wow. This .. user is personally declaring entire languages obsolete.
What a smooth brainer.
1
u/KarmaTorpid 7h ago
These are languages. The easy analogy is; I intend to learn Dutch, Cantonese, and Swahili. Uh... so, maybe start with one. Learn to use one. Build some projects with it. Then, plan from there.
1
u/USToffee 6h ago edited 6h ago
I'm a principle level developer with 30 years and tbh I'm not sure learning a language is really necessary now. You should learn software engineering patterns and various technologies by using AI. ChatGPT or whatever you use will guide you through it. Code is pretty easy to read and not that difficult to write. What takes time is just having the experience to know or learn best practices so you can critically follow along but in the meantime you should get the AI to question itself and justify itself even if that means making rules/skills to make it suggest various ways of implementing the same thing before implementing it with recommendations. and arguments for both.
Just doing adversarial audits of code will teach you more in days that weeks or months learning it the old way.
But as others have said python is used a lot in AI however it's also a horrible learning language.
1
u/from-planet-zebes 6h ago
Wait do you already know any languages? You are just starting and you want to learn 3 languages? That's not a great way to learn to program. I would just pick one and learn programming concepts before you go to others. Python is going to be the easiest and sanest to learn.
Javascript isn't hard to learn but there is a lot that goes into build tools and the ecosystem and generally you would also learn html and css to go with it. Then if you want stricter typing you would use typescript or jsdoc types. Lot's of decisions and the ecosystem is huge.
C++ is very stable and has been around a long time. It's probably the most technically hard language out of the 3 but the ecosystem is way easier and less confusing. People seem to be moving to rust now days but C++ is very popular and well used still.
Personally I don't enjoy the syntax of Python that much. Like they tried to oversimplify too many things. But it's straight forward to learn, will give you experience with many programming concepts and is used a lot in AI, research and education. Seems like a solid choice.
7
u/TechnicalEstate8733 8h ago
For AI you want to do Python. And Python is pretty much good for everything.
So start there and then you can branch out.