4 answers
4 answers
Updated
Elias’s Answer
Developers can choose languages by preference, but they often must use languages chosen by their team or organization. So, personal preferences do play a role in language usage, but there are commonly used languages that many developers have grown to dislike.
The complexity of a language does affect its usage. Simpler languages tend to be more popular, because they are more appealing to beginners, but also because they are more suited to certain types of tasks. If I am working on a very simple project, I would be more likely to reach for a simple language.
I would recommend you look at the 2022 StackOverflow Developer Survey for more info on language popularity. This survey has a language usage rate chart that shows the simpler languages tend to be more common. It also shows that web-based languages (JavaScript, HTML, CSS) tend to be more commonly used as well. This survey also has a section on which languages are most loved/hated. This section is interesting to me because the top 3 most loved languages, which are Rust, Elixir, and Closure, can all be considered to be complicated or more advanced languages.
I don't know if external links are allowed here, but here are my sources from the StackOverflow Developer Survey. StackOverflow runs this survey every year if you are interested in the past years' data as well.
Most Popular Languages Chart:
https://survey.stackoverflow.co/2022/section-most-popular-technologies-programming-scripting-and-markup-languages
Most Loved/Hated Languages Chart:
https://survey.stackoverflow.co/2022/section-most-loved-dreaded-and-wanted-programming-scripting-and-markup-languages
The complexity of a language does affect its usage. Simpler languages tend to be more popular, because they are more appealing to beginners, but also because they are more suited to certain types of tasks. If I am working on a very simple project, I would be more likely to reach for a simple language.
I would recommend you look at the 2022 StackOverflow Developer Survey for more info on language popularity. This survey has a language usage rate chart that shows the simpler languages tend to be more common. It also shows that web-based languages (JavaScript, HTML, CSS) tend to be more commonly used as well. This survey also has a section on which languages are most loved/hated. This section is interesting to me because the top 3 most loved languages, which are Rust, Elixir, and Closure, can all be considered to be complicated or more advanced languages.
I don't know if external links are allowed here, but here are my sources from the StackOverflow Developer Survey. StackOverflow runs this survey every year if you are interested in the past years' data as well.
Most Popular Languages Chart:
https://survey.stackoverflow.co/2022/section-most-popular-technologies-programming-scripting-and-markup-languages
Most Loved/Hated Languages Chart:
https://survey.stackoverflow.co/2022/section-most-loved-dreaded-and-wanted-programming-scripting-and-markup-languages
Updated
Fred’s Answer
Programming languages are tools. Each is designed with a set of tasks in mind it is best for.
C (and to an extent) C++ are low level languages, designed to work very closely to the operating system and hardware. It's fast, efficient, and powerful. BUT...you have to compile it on each and every platform you want to run it on, and manage all the binaries. It does you no good to send a windows binary to a Unix/Linux maching.
Java, on the other hand is a high-level language. It hides a lot of details away from you (like memory management). It can do a LOT, but may not be as fast as C (although the gap is closing). However, once you compile it to a class file (or a .jar), you can send the that same file to any machine with a JVM, making the management of software easier.
.NET is very closely tied with Windows, so it works well on that platform.
Python is a good beginners language, and is also super-powerful.
and so on and on with every other language.
I think of them as tools in a toolbox. Which you choose depends on what you want to accomplish, and what is most important to your situation.
C (and to an extent) C++ are low level languages, designed to work very closely to the operating system and hardware. It's fast, efficient, and powerful. BUT...you have to compile it on each and every platform you want to run it on, and manage all the binaries. It does you no good to send a windows binary to a Unix/Linux maching.
Java, on the other hand is a high-level language. It hides a lot of details away from you (like memory management). It can do a LOT, but may not be as fast as C (although the gap is closing). However, once you compile it to a class file (or a .jar), you can send the that same file to any machine with a JVM, making the management of software easier.
.NET is very closely tied with Windows, so it works well on that platform.
Python is a good beginners language, and is also super-powerful.
and so on and on with every other language.
I think of them as tools in a toolbox. Which you choose depends on what you want to accomplish, and what is most important to your situation.
Updated
Abraham Jericco’s Answer
Hi Richard
Programming languages can be looked as ice cream flavors, each of them are different but majority of them share certain features, in the industry majority of the companies would select one language or another depending on the nature of the system that they are trying to build, responsiveness and platform.
If you are just starting into this world I would suggest you start with something like C or Java; the most important thing in my view for a software developer is not only the programming languages they know but rather how good and well nurture is their logic.
Remember that you can always learn a new programming language and the features and capabilities it has to offer, but your logic and how you face problems that will always come with you.
Hope this helps :)
Programming languages can be looked as ice cream flavors, each of them are different but majority of them share certain features, in the industry majority of the companies would select one language or another depending on the nature of the system that they are trying to build, responsiveness and platform.
If you are just starting into this world I would suggest you start with something like C or Java; the most important thing in my view for a software developer is not only the programming languages they know but rather how good and well nurture is their logic.
Remember that you can always learn a new programming language and the features and capabilities it has to offer, but your logic and how you face problems that will always come with you.
Hope this helps :)
Updated
Asim’s Answer
I agree with the comments above. However, it depends if the company you are working on has mostly home grown applications then I have seen Java and C++. For example: when I worked for an equipment maker (telecom) all the coding was done in C++. The IT applications on the other hand were built in Java that was considered more flexible than .NET.
If the company you are working for prefers Microsoft .NET for coding their applications then that will be the prevailing language for software development.
Both Java and .NET have their pros and cons.
If the company you are working for prefers Microsoft .NET for coding their applications then that will be the prevailing language for software development.
Both Java and .NET have their pros and cons.