How many programming Languages should I learn?
#Programming-language
#computer-programming
7 answers
Tuhin Subhra’s Answer
So my suggestion would be, learn one programming language proficiently (C/C++/Java/Python). When there is a need to learn another language, you can pick it up very fast.
All the programming languages were designed considering some challenges which other programming languages can't solve. So, every programming languages have certain pros and cons. So, be a master in one of the language you prefer, and learn others when the need comes.
Happy learning!
Jeff’s Answer
Great question! When I was working on my bachelor's degree back in the stone age, I wrote programs in 20 different languages, all of which are now obsolete! My thought was that every language you learn makes the next language easier to learn.
In this time and age, I would recommend that you learn C++ and JAVA, both very similar and object oriented languages. I would also recommend Python, a scripting language and JavaScript, a web language. You should also look into SQL, a database language.
This group would give you most of the necessary skills. Just remember that you can always learn another language if you need to. Even though I learned 20 languages in college, I was hired by IBM to code in PL/1 and PL/s, neither of which I had ever seen. IBM figured that since I knew 20 languages, the 21st and 22nd would be easy to pick up! It's all about learning the basics and adapting.
Best of luck!
Jeff
Thomas’s Answer
There is no specific number of languages you should learn. It is best to be well rounded in your developmental skills.
Personally, I have experience in C, C++, C#, Java, HTML, CSS, Linux, MSDOS, Oracle, Teradata, and a few others. There are many languages out there. It is best to get as many as you can while in school and understand each of their principles. The more languages you learn, the easier it will be to pick up the next one that comes around.
Hanish’s Answer
Carlos’s Answer
Rachael’s Answer
Brian’s Answer
So, instead of identifying languages, let's talk about a toolkit. You need to pick up an object based language for sure. This can be C++, Java, or even Object Oriented Python. The important thing is to understand the concepts of an OO language and its benefits. Once you have that, there will be minor differences between the other languages, but that's just syntax that you can Google.
Knowing a markup/data presentation language and how to traverse it like XML or XHTML or JSON will be very useful because it is how information is passed and stored for many online applications.
Some form of SQL is also important because with it comes at least a basic understanding of databases. MS-SQL and Oracle are pretty dominant in enterprise environments, but they don't have the stranglehold they once did. A caution here. Relational databases are still important, but big data and unstructured databases are significant as well.
I'd also include a command line scripting language in the toolkit. This can be something for when you need to orchestrate a bunch of processes together, want to manipulate OS processes, or some quick interaction with the OS or file system. Some interpreted languages have an OO version and can perform double duty here. The nice thing you will discover is that the OO syntax and concepts will be largely identical here. There will just be a few tips and tricks that make it different.
That should cover your bases unless you are going into embedded or legacy systems, or high performance computing task like image or video processing. In those cases you will need assembly language and maybe and old language like COBOL or FORTRAN (for legacy).
You can usually do an internet search to see which languages are trending at any given moment. As of Fall 2020, Java, any .Net, javascript, and Python are all things that are highly marketable.
Hope this helps!