Question Details

No question body available.

Tags

java

Answers (2)

February 24, 2026 Score: 1 Rep: 1 Quality: Low Completeness: 30%

honestly dont overthink which language should i start with there isnt one perfect language the right choice depends on what you want to build if you want to build websites start with javascript if you are interested in ai or machine learning start with python if you like low level stuff performance or game engines then c++ is a good option if you are completely unsure python is usually the safest and most beginner friendly start

about mastering a language you dont master it by watching tons of tutorials or collecting certificates you master it by building things learn the basics first like variables loops functions and conditionals then start building small projects you will get stuck you will make mistakes you will debug for hours that is normal that is actually how you improve after small projects move to bigger ones read other peoples code maybe contribute to open source and slowly dive into more advanced topics mastery comes from time consistency and real problem solving not passive learning

for materials use structured and trusted sources free platforms like freecodecamp the odin project for web and cs50 by harvard are great official documentation is also very important even if it feels hard at first on youtube follow proper playlists instead of random videos books are underrated too like automate the boring stuff with python or eloquent javascript depending on the language

what you should do next is simple pick one language and stick to it spend the first month learning the fundamentals and practicing daily in the second month build a few small projects like a calculator a todo app or a simple website or cli tool in the third month build one bigger project and put it on github also learn git properly

if you want to be really good focus on fundamentals learn data structures and algorithms understand how the internet works and get comfortable with debugging dont avoid hard problems the first language you choose will not matter much in the long run what matters is consistency depth of understanding and your ability to solve problems

February 24, 2026 Score: 0 Rep: 34 Quality: Low Completeness: 100%

This is a common question and there are multiple youtube videos on it.

But allow me to present my take:

C, Java, Python:

  1. C is the best language to start learning, especially if you aim a high-stakes job that will require a lot of practice in LeetCode or NeetCode (for the interview only; Microsoft and Google will use pure C very sparingly). This language is almost never used alone (it is at least followed by C++). It's not a language you will see listed in most job posts. But it allows you - if you have the time - to fully understand Algorithms & Data Structures and a bit of machine-level Compilers.
  2. Java is the best language to start learning, especially as a dual learning Algorithms and Data Structures while learning Object Oriented Programming. One feeds the other on Programing Language Paradigms.
  3. Python is the best language to start learning, especially if you want to build things fast, with a large community, and is disciplined enough to also study Algorithms and Data Structures. Especially nice since there will be models to build pretty much anything.

What would I do if I had to start over

  • 0.1 Create an account on GitHub and speed-learn (1-2 days) Git versioning (just for myself, not to collaborate yet).
  • 0.2. (Optional, but highly recommended) Learn the basics of CLI (Bash)
  1. Learn enough Python to be able to do 1 mini-project available step-by-step in Github.
  2. Proceed to learn "proper Git" in a way that allows me to collaborate with projects such as Pytorch, Polars, or any one that strikes me as a nice one.
  3. Meanwhile, learn C/C++ basics and try to do - with as much hints as possible on the harder ones - LeetCode problems.
  4. Once I reached a LeetCode that says: "This problem needs to be solved in 𝒪(log(n+m))". I would go back and actually devour an Algorithms and Data Structure Book.
  5. With very few exceptions, learn SQL
  6. After first successful collaboration in GitHub, move to mastering X for X being the language you see more often in the job posts of what you like to do (see cheat sheet below).

Joy | Proficiency | Profitability

I am NOT a capitalist advocate. Having said that, we need money to survive. There are things that we like, things we are good at and things that makes money. You should pursue the perfect intersection of these three things. Any other 2-intersection will make you: miserable, hobbyist, fired (often).

Personally, only in the last year of my CS degree, I went to python. In the beginning I wasn't understanding anything. But my area demanded Python (bioinformatics, ML/DL) and R (but that's a whole another story, only go to R if you like biology or statistics). My "luck" was that I knew Algorithms and Data Structure (actually, I was in "Algorithms 2", where we deal with the Blossom and the Satisfatibility Algorithms). And after a year I was proficient. But I could not "read code" or "collaborate" (which is ok if you want to be a freelancer - lone wolf) but that was my demise. So, I entered GitHub and started learning (I am old, it was the time of transition from Subversion to Git).

Language Cheat-Sheet

Note: This is not absolute, it's observation-based.

Programming Languages -> Typical Usage Cheat Sheet

Language Primary Usage Areas Typical Hiring Context
Python Data Science, ML/DL, AI tooling, Backend APIs, Automation AI/ML teams, startups, research, scripting
Java Enterprise backend, Fintech, Large microservices Big tech, banks, enterprise systems
C++ High-performance systems, Game engines, Trading systems Performance-critical infra, gaming, finance
Rust Systems programming, Secure infra, Distributed systems Modern infra teams, blockchain, backend core
Go (Golang) Cloud services, Microservices, DevOps tooling Cloud-native companies, platform teams
JavaScript / TS Frontend (React/Vue), Node.js backend, Full-stack apps SaaS, web startups, product companies
SQL Data engineering, Analytics, Backend persistence Any serious data-driven company
Bash / Shell Automation, CI/CD, DevOps scripting Infrastructure / DevOps roles
R Biostatistics, Epidemiology, Academic data analysis Pharma, academia, public health
C# Enterprise backend, Microsoft ecosystem, Unity Corporate backend, game development
Swift iOS development Mobile product companies
Kotlin Android development Mobile product companies

Job Market Mini-table

Domain Dominant Languages
Web Products JavaScript/TypeScript + Python/Go
Enterprise Backend Java / C#
AI / ML / Data Python + SQL
Cloud / Infrastructure Go / Rust
High-Performance Systems C++ / Rust
Academic / Biostatistics R + Python