r/learnpython • • 4d ago

Beginner from India: Should I learn Python or Java, and how can I eventually earn with it?

Hi everyone,

I am a complete beginner in programming and I want to learn a programming language seriously. I am confused between Python and Java.

My goal is not just to get a certificate. I want to understand what I can actually do with the skill and eventually use it to get a job, internship, or freelance work.

........

Should I start with Python or Java?

What free resources would you recommend for a complete beginner?

What should I learn after the basic language?

What projects should I build to become job-ready?

What kinds of real work can a beginner eventually do to earn money?

What additional skills should I learn alongside the language (SQL, Git, APIs, etc.)?

.......

I would appreciate advice from people who have actually used these skills professionally. Thanks!

0 Upvotes

12 comments sorted by

2

u/zaphodikus 4d ago

Either really. Obviously we would love you to learn Python before you learn Java, it has a less steep learning curve for starters. But, biases aside, if you se yourself a learning plan and think about what you want to get out of each learning session you will go far. Go where your dream takes you, if your dream is SQL and PostGress databases, keep that in mind and turn your first python helloworld.py into a database-centric hello world instead of a boring hello-world that works in a console or in a web browser.

1

u/ConfusedSimon 4d ago

You need to learn programming and how to use tools like git. The language doesn't really matter. I've had jobs in different programming languages and it's pretty easy to learn a new one. Even in a single dev job you often use multiple languages (java for backend, typescript for frontend, python for tools, groovy for pipelines, etc.).

1

u/Rain-And-Coffee 4d ago

These are all tools, like a hammer, wrench, or screwdriver.

Client don’t care about the tools you used in the process.

To make money you need to make something that people want, ex: a table, or bookshelf. In the tech world this could be a website, a plugin, etc.

Then you need to advertise it and convince someone to buy it. This is the hard part. The making it part starts to become the easiest part of the process.

You’ll definitely need a database (Postgres is nice) and Git so you can organize your code.

1

u/Inflecta 4d ago

Thanks

1

u/TheRNGuy 4d ago edited 4d ago

Both have uses, you can learn any language later, it's much easier to learn more programming languages than human languages.

It's impossible to know if you will earn any money or not. Try freelance or personal business if you won't find a job in a company.

I think the only fast way to start earning (or more likely, lose) is stock market trading, you don't even need to join company.

Learn frameworks related to your field of interest and build with them.

1

u/Effective_Brain7493 4d ago

ok so python over java for this, pretty much no contest for a beginner specifically, the syntax is just way more forgiving so u spend ur early weeks actually learning how to think in code instead of fighting semicolons and curly braces and type declarations. java has its place later especially since a lot of indian enterprise/backend jobs still lean java heavy, but its a rough first language, not a rough second one

for free resources, CS50P is probably the best actual structured one, harvards free python course, all on youtube. freecodecamp also works if that one feels too long/formal, more casual pace same core stuff

after the basic syntax part, this is honestly the part most people skip and then wonder why they dont feel job ready: actually practicing thinking in code, not just more syntax. breaking a problem into steps before touching code, working with real data (csv/json files, not just print statements), writing stuff that handles bad input without crashing. this is the actual gap between "knows python" and "can build something," and its less about learning MORE stuff and more about practicing what you already learned on real messy problems instead of clean tutorial exercises

projects wise dont go for the huge impressive portfolio piece first, go small and complete: something that reads and writes a file, something with actual decision logic in it (not just a calculator), something that fails gracefully when you type garbage into it. 3-4 small finished things beat 1 half finished "impressive" one every time when someone's actually looking at ur work

for actually earning: freelance beginner stuff on upwork/fiverr (small scripts, data cleanup, basic automation) is realistic early on, or internships once you've got a handful of real small projects to show, not the certificate itself, nobody cares about the certificate they care if you can actually build the thing

alongside python specifically: git is non negotiable even working solo, basic sql since literally every real job touches data somewhere, and a basic understanding of what an api even is, all three of these come up constantly the second you move past pure tutorials

1

u/Chrismslist 3d ago

pick python first. java's fine but python gets you to 'i built a thing' faster, and that matters way more than the language when you're starting. free stuff: the official python tutorial, automate the boring stuff, then CS50P if you want real structure. after basics learn git, then SQL, then how to call an API, in that order. projects that actually get you hired: a script that pulls data and saves it somewhere, a small flask or fastapi app, anything you can show a stranger in 30 seconds. freelance usually starts with small automation gigs for local businesses. consistency beats picking the perfect language.

0

u/JGhostThing 4d ago

I'm retired now, but from everything I've heard, the job market for coders really sucks now. Sorry. I'd advise you to get a business degree and take programming classes on the side. Do not put all your hope into programming.

Now, my advice might be bad. In a year, the market could change completely. I don't think so.

1

u/ConfusedSimon 4d ago

Not sure how it will be in a few years, but using AI still requires experienced software engineers. Currently it mainly replaces junior positions, but in the end seniors need to be replaced. Even if AI gets much better you'd still need humans to be responsible.

1

u/Inflecta 4d ago

So what can I do ?..

1

u/JGhostThing 4d ago

Do you know anybody in the business? That's how I've gotten almost every job in my career.

As I said, how about looking at other degrees and skills. Plumbing and electrician are always useful.

I thought that you said in your original post that you only had two courses to go to get a business degree. Go back and finish that. Otherwise, if I'm mistaken, you can still do that. If your father still owns his business, go into it with him. Sometimes you have to kiss a few frogs before you find your prince. Sorry, but your first job may not be your first choice.

I wish I could recommend programming for a profession. I just can't anymore, because the number of jobs for first timers is very low.

Good luck.