#Python #Java #DevOps #BackendDevelopment
Hey everyone! 😊
So, I’m a junior DevOps engineer and I’m eager to branch out into backend development as well. I already have a solid intermediate grasp of **Python** and have dabbled a bit with **Django**. My goal is to really dive deep and master Python. 🐍
Recently, I had a chat with my supervisor about this, and he recommended that I start with **Java** instead. His reasoning? He believes that Java is more technical and can teach me core concepts like **polymorphism**, **interfaces**, and **data types**, which would make me a better developer overall. He also expressed concerns that jumping into Python might lead me to adopt some bad software development practices. 🤔
At first, I was swayed by his points, but after doing some research, I’ve found that Python actually encompasses all of those core concepts as well! It’s made me think that if I’m dedicated and put in the effort, I can achieve similar expertise through Python.
Here’s where I’m stuck: since I want Python to be my primary language, I’m feeling a bit doubtful about investing my energy into learning Java from scratch. Instead, I’d rather focus on truly mastering Python. I know it’s a big commitment—reading a comprehensive book like “Learning Python” (which is 1600 pages long!) takes time, and I want to dedicate that effort to something that’s truly my focus—Python, not Java! 📚
So, what are your thoughts on this? 🤷♂️ I’d love to hear your advice!
- Do you think I should stick with Python and level up my skills there?
- Or would diving into Java really make me a better developer in the long run?
- Any personal experiences or tips you could share on either path? 🚀
Thanks a ton for your insights! I’m looking forward to your responses! 🙏
Every beginner in the world learns Python, that’s not a great place to be when applying for jobs because everybody else is applying for the same jobs you are.
I would say learn Java, C#, C++, whatever, but not Python, just too many people learning Python.
If your company uses Java, I don’t know why you wouldn’t want to learn Java. Do you want to advance at your company? It doesn’t sound like they need Python developers.
Backend Java is a good gig. Python is I think a better platform in important ways (fast to develop on)but it’s less likely to get you a job as a backend engineer. So yeah, learn Java.
Well yeah java is fast and type save. And also there isn’t interfaces in python which is a great feature to have for building robust applications. For understanding how things work under the hood java is great.
Do you want to move up at your company (can you move up)? Then learn Java I guess. Do you plan on leaving? Then maybe keep learning Python if you already know it.
After reading dozens of “Should I learn X language posts” the typical advice is “Don’t learn a million languages, master one or two”.
If you’ll also be focusing on learning data structures and algorithms, I’d say Java’s better just because of how much gets merged together / overlooked in Python (e.g. Lists being essentially ArrayLists, non-primary data type lists i.e. python lists always being pointers, etc.). Could be useful especially for database stuff for storage and whatnot.
Stupid question: python is essy to learn when you know java, but python makes you lazy and if you learn that first no other language will look easy. Now it depends on your job requierments
In this day and age, you should be language agnostic, as you often don’t get to choose. You should be able to work with whatever language your company works with, whether it is Python, Java, Scala or C++.
When it comes to personal preference, I don’t like Java’s verbose style, but being stubborn against what your supervisor recommends you to learn is not what something I would do if I want to move up in the same company.
I’m all for using the right tool for the right job when it comes to programming. However, when it comes to learning, it’s hard to beat Java for the exact same reason I don’t like it – its verboseness. It forces you to interact with “knobs and dials” that might otherwise be hidden from you in Python, and forces you to correctly structure your code.
To me its so weird to say that i have a main programming language? I have written in about 10 languages. And i have to agree, python is one of the least technical and you can very easily learn bad coding practices.
Meanwhile Java will generally force you to make better code by default. But compared to Rust, which forces you to make fail safe code.
Just use whatever you want, but the mentality of having a main programming language is only biting your own ass, and personally i find it weird.
Hey, ik it’s unrelated to the post but I was thinking of learning DevOps. Can you guide how u learned? And also I heard it does not involve a lot of coding and mostly Linux commands/networking concepts. Is that true?
Yes.
You’ll understand languages – and choices, reasons, and libraries – much more after learning a second.
My advice would be to learn programming regardless of the language the implementation part is the easy part with practice. Programming consist of variables, operations, input outputs , functions ,loops, classes , aggregation of data.
If your current job prioritizes Java on the backend, learn Java. The knowledge is also easier to transfer to other C-derivative languages. Ultimately though, if you have the time and desire, learn both. They are each very great tools and having proficiency in both makes you that much more valuable on a team.