One of the best ways to start a journey with many trails is to ask someone who has reached the destination you want to go. Whether you work as a front-end, back-end, or full-stack developer, you want to learn a language that can help you earn the coveted salary of over $80,000 a year. In Baltimore, when? Technically We looked at the data behind the high earners — particularly those making $200,000 — and found that computer systems design and related services were among the top 10 industries producing the highest earners in the city in both 2009 and 2019.
But the question remains: which programming languages should aspiring programmers learn if they want to break into the tech industry?
Stack Overflow, the crowdsourced learning site for software developers, surveyed 70,000 software developers to determine what developers use to improve their skills, as well as the languages in which they invest their time. But to give a more personal feel to the knowledge from that raw data, Technical.ly asked software developers in Baltimore which programming languages they would recommend to start a tech career today. We also asked if they would go back to the first year of their career if they would do something different and learn a different coding language. Here’s what five of them had to say:
Chris Uehlinger, software engineer at TechSlice
When I was a kid I learned C (my uncle gave me his old textbook). I would not recommend this approach to anyone. While I hold C in high regard and I think all software engineers should learn it at some point, it’s a very difficult language to get started and not very worth it until you get a ton of experience have. In fact, I gave up programming for several years because I couldn’t make the kind of programs I wanted to make.
Years ago I would have said PHP given how easy it is to start a web application with PHP. Now I would say Ruby on Rails – Ruby is a programming language and Rails is a Ruby built framework that people use to create web applications. Today, there are so many resources to learn how to program in Rails, from boot camps to self-directed courses to take, local meetup groups, and others in the industry who enjoy being mentors and sharing knowledge with others. If getting a job is your goal, then [you can] rest assured knowing that your skills as a Rails developer are in high demand.
Like most skills in life, it is essential to have an idea of where and how to use them to ensure that the right set of skills are identified, learned and perfected over time.
For most developers, early on, people are drawn to front-end (which people interact with, either on a website, a phone screen, or a visible widget that represents a program or code) or back-end (server-side scripting that executes code or store data in databases that run commands to get certain things when the customer/user wants it). In the end, some can even do both well and become a full-stack engineer.
After going through the process myself, I would highly recommend general purpose languages like Python given its ability to be used in a variety of things from (from) model making to websites to science experiments.
I wish I had a short and dry answer to this question. When I add to the University of BaltimoreI get a similar question from my students every semester.
If someone wants to break into the video game industry, the language they have to learn depends on which aspect of the game industry they want to enter: indie or AAA.
If they’re not sure, I recommend that they learn C++ (at least up to the C++11 standard), as it will give them a foundation in any sector of the games industry they want to enter. If they lean more towards indie game development, C# combined with the Unity3D game engine is usually an easier way forward. A large community of indies have gathered around it, resulting in a good amount of free documentation, videos and social networks to help each other.
If the programmer wants to pursue AAA, then C++ and even non-object-oriented C are good places to start learning. While there is a bit of a learning curve, there are many engine options to pursue with that programming knowledge, such as Godot and Unreal. It is also the language of choice if [you’re] running your own game engine.
If I started today, I would take my own advice and make sure I have a good foundation in C++, but also look to the future with WebAssembly and Rust. The latter may one day be a replacement for C++, as Rust attacks problems at the same level of abstraction, but has memory protection built into the base. This makes it an attractive option for businesses that need to quickly scale their applications without sacrificing security.
I started writing in C and C++ because I learned that in school, but I didn’t like it that much. I think writing in C++ is probably a good move for job security and pay, as there are fewer people who seem to write in it, but it also feels like fewer projects are written in it (so you’re more likely to maintain codebases), compared writing new code).
I don’t regret how I started my career. I think if I were to give career advice to a younger version of myself, it might be to consider not going to college. I feel like so much of the things I learned as a computer science major didn’t help me all that much. I took so many math classes that weren’t very helpful to me (I don’t write algorithms) and I could have learned a lot from the software engineering in a trade school, or just skip it. I think there are definitely people who need that kind of low-level knowledge, and I started going down that path when I did some kernel development and malware analysis. But in the end I didn’t like it that much.
There are many options out there, and no one answers correctly. Go make some mistakes and find out what you like.
Donte Kirby is a 2020-2022 corps member for Report for America, an initiative of The Groundtruth Project that pairs young journalists with local newsrooms. This position is supported by the Robert W. Deutsch Foundation. -30-