Java, C++, Python.
There you go. Probably already heard it before. If you want to know why I chose those three languages, then read on, avid reader, and see how deep the rabbit hole goes.
This is my pure, unadulterated bias from my experience in the tech industry. Are you a Front-end developer? Back-end developer? Full stack developer?
I don’t care.
If you want to do well in tech you should have mastery of at least one of these languages. Forget any new technologies or tech mumbo jumbo that may be swirling around the dark corners of the developer’s forum, my friend, those are for another day.
Today, consider these languages your big 3.
With it, you can conquer any other new shiny trend that comes your way and have a high probability of making a lucrative career as you go along.
Ah. Good ole Java. Like Sunday’s coffee on a Monday morning. Bittersweet but it tastes so good. Or maybe that’s just me.
I have an inherent disposition towards Java because frankly, it was the first language I learned in undergrad. Some of you might have the same experience. But nostalgia aside, why is Java so good to know?
Well, two reasons.
I think it really helps you dive deep into object-oriented programming (OOP), it provides a good way of understanding class structures in coding, and many companies use Java for major backend manipulation (essentially it’s popular). Sure other languages like C++ have Object Oriented (OO) principles as well but Java is the easiest in understanding it.
Java was built for OOP. It allows you to scale through the use of classes and inheritance and each object you build can easily be used in a later application. It’s a no brainer on why this language is used in companies to manipulate database values, handle complex processes, and has the flexibility to build a wide range of platforms across multiple operating systems. This is really important because if you only know some specific and niche language like Apple’s Swift, that means you’re essentially stuck in the Apple factory until you learn something new.
The other great thing about Java is its garbage collector. If you don’t know what that means, it just handles your computer’s memory for you when you code. If you don’t know what that means, then I recommend skipping the next language, because memory management is the best and worst part about it…
I’ll be the first to say that I hate pointers. Memory has never been my strong suit, on and off the realm of tech. There is a lot of complicated things that you have to remember when coding in C++, namely allocating enough space when setting variables and doing all your algorithms so that you don’t inadvertently set off some kind of memory overflow and in turn, a code vulnerability. As mentioned in the Java section, C++ does not have automatic memory management. It does have manual memory management though, and if you known the ins and outs it can drastically improve the runtime of whatever application you are writing. Speed is for the disciplined. I guess.
It’s complex, but it’s better than C. But it has its use, which is why it’s on the list. Again a lot of companies use this language and it’s versatile, fast and used in a variety of applications. If you are looking to get into cybersecurity or embedded systems, there is no better language to look at. Why?
Well C++ runs in machine code and ties closely with the hardware. So it makes sense that C++ programs allows you to interact and manipulate components, which is why IoT devices, SCADA systems, and other devices that are “smart” run this language. It’s like building a robot and knowing that whoever interacts with the robot has zero need to know what’s going on in its head. All you care about it that it’s ruthless, efficient, and works the way you program it too.
Also it’s a language that a lot of people hate coding it. You can always master it just to taunt it in their face.
Ah…Python. To me, she is not your first love, but the woman you eventually meet and realize that she’s the one. Python has everything you can love in a language. Easy to learn, portable, lots of libraries, lots of uses. Python is used in everything from application development, to cybersecurity testing, to web interfaces.
Want to spin up a web server? Just run a Django app and see how easy it is to create a webpage and manipulate data on the backend. Machine Learning and AI? Python’s got all the libraries you need for it.
It’s easy. Sure maybe you’ll put a semi-colon at the end of a line out of habit, but you’ll never have to declare any variables, data structures, or initialize classes. It just is. All that matters is you and the logic you are trying to write, which makes sense that this is one of the biggest languages in the tech world and a great one for beginners.
The syntax is simple, it’s beautiful, it’s fun to write, and because of this, so many people have already done the legwork to create these open source libraries that you can use to continue building cool projects.
And again, I’ll never stress this enough, but it’s another language that’s popular in the industry. Through a quick Google search, the average salary for a Python developer in Maryland is over $100,000. Not too shabby, eh?
So what now?
You get my meaning.
It’s hard at first, but it’s like training for an Iron Man marathon. You keep on doing it, learning from it, and then you do the marathon. After you’re done, you try and do a 5k and it’s a breeze. The other languages are your tech 5k. Definitely learn these 3 languages if you have not done so already.
Obviously, take my advice with a grain of salt. This is what has worked with me in the industry. This is what I see with my peers in the industry. This is what I see on resumes of the people hired in the industry.
It’s the formula of success that I have seen for myself and for those around me. Hopefully our environments are not too different, and that learning these three languages will help with you out in the tech realm as well.
Thanks for reading and happy coding!