Which programming languages are most in demand?

CenturionMarioCenturionMario Member Posts: 82 ■■■□□□□□□□
I have been reading up a little bit on programming and have been interested into getting deep into it. I wanted to know what programming languages were the most in demand (and any more recent languages that may be in demand in the near future). I know Java and C (as well as C+ and C#) are the most popular, but what about other languages? Also, is it better to master a few languages or just to be competent in many languages, or even to master a few and be competent in many languages (is there a specific minimum number of languages one should know?)

If there is anyone here that works with software, can you tell me what your position is and what your daily job duty is like?

I guess I should note that I like crunching numbers and databases. Is there a specific language that caters to that? I read that Python and SQL are two of many choices for that.

Comments

  • NetworkVeteranNetworkVeteran Member Posts: 2,338 ■■■■■■■■□□
    Centurion, generally, what you want to learn are programming concepts--loops, conditionals, variables, arrays, regular expressions, documentation, objects, namespaces, inheritance, etc. There are many introductory programming texts that can teach you these things. Once you learn them, switching between languages is straightforward. Without these, you can know a dozen languages, and you'll still be a poor programmer. I'm not currently employed as a programmer. My skill at programming is still sharp enough I pass interviews and receive healthy offers.

    Of the languages you listed (Java, C, C+, and C#).. I would pick Java, C+, or C#. C will is a great and marketable language, but it doesn't support objects, so it's not so swell for learning.
  • paul78paul78 Member Posts: 3,016 ■■■■■■■■■■
    Also apart from the language constructs that @networkveteran mentioned, having a strong understanding of basic computer science theory like algorithms and data structures is a fundamental requirement.

    I also like to sometimes advocate learning functional programming concepts but that's only after the basics. There arent as many commercial applications of functional languages but its neat to know about them icon_wink.gif
  • NotHackingYouNotHackingYou Member Posts: 1,460 ■■■■■■■■□□
    In your position, you need to learn the basics. C# would be great for this because Visual Studio is so easy to use. Eclispse/Netbeans (for Java) can be frustrating for newcomers.

    C++ is probably not as easy as C# or Java to learn. You could also give Python a try (download IDLE) and get a Python book.
    When you go the extra mile, there's no traffic.
  • paul78paul78 Member Posts: 3,016 ■■■■■■■■■■
    Also-it largely depends on what you actually want to do as a programmer. Software development is a huge field in IT. It ranges from simple business application development, to web site development, to database development, to system tool development, to software tools, to OS development, to microcode development. Each of those specialties require different skills and levels of knowledge.
  • the_Grinchthe_Grinch Member Posts: 4,165 ■■■■■■■■■■
    Also, I would consider your location as another element to consider when picking a language. In my area, you are better off knowing C# because Microsoft is king here.
    WIP:
    PHP
    Kotlin
    Intro to Discrete Math
    Programming Languages
    Work stuff
  • DigitalZeroOneDigitalZeroOne Member Posts: 234 ■■■□□□□□□□
    Centurion, generally, what you want to learn are programming concepts--loops, conditionals, variables, arrays, regular expressions, documentation, objects, namespaces, inheritance, etc.
    Even though it's not technically a programming language, The Powershell scripting language has loops, conditionals, etc, in it, and you can have instant satisfaction from running commands and getting fast results. Windows 8 and Server 2012 have version 3 of Powershell, so any day now, version 3 will be the latest version, but version 2 is still a good place to start.

    Even though I don't like physical books anymore, Windows Powershell 2.0 TFM, is a very nice book on Powershell, and it could be used to start you out scripting, and then, if you decide, to move into programming.
  • CenturionMarioCenturionMario Member Posts: 82 ■■■□□□□□□□
    So the concepts and fundamentals of the programming languages are all the same (or at least close to the same), but it is the language that is different? I think that would make things much easier for me to learn a few, then (not necessarily easy to learn, mind you, but I think it would cut off the time I expected in having to learn different languages). Is there a good page that has these programming concepts and explains them (or I can just google it, of course)? I like databases, so that is something I would like to focus on, but I want to be versatile, but not spread myself too thin.

    By the way, what is the minimum amount of math that is required to be a programmer? The highest I completed was College Algebra. I don't mind if I have to do Calculus, but I might be a little skeptical (though willing) if I have to go much further (Multivariable Calculus, Linear Algebra, other advanced mathematical subjects.
  • swildswild Member Posts: 828
    for databases you gotta know SQL, easy to learn, hard to master. Then there is usually another language that ties in with it and that is varied depending on the software application that is accessing the databases. Java and C++ are great to learn but I have rarely seen them needed in conjunction with anything but the most rudimentary use of SQL.
  • biggenebiggene Member Posts: 153 ■■■■□□□□□□
    I have been using these tutorials to learn Python for pen testing. Tutorials you can also try W3Schools Online Web Tutorials for some tutorial videos.

    Good luck,
    Gene
  • demonfurbiedemonfurbie Member Posts: 1,819 ■■■■■□□□□□
    it all depends on you end goal

    java is fairly universal for lighter stuff, the programmers i talk to consider it the new visual basic
    they also suggest python then c++ after java

    now for me i would suggest java mostly because its the "app language" and if you can make a nice/needed iOS/android app put it out there your self and charge say 1.99 for it being a dev. you can earn a fair bit of income that way
    wgu undergrad: done ... woot!!
    WGU MS IT Management: done ... double woot :cheers:
  • NetworkVeteranNetworkVeteran Member Posts: 2,338 ■■■■■■■■□□
    Is there a good page that has these programming concepts and explains them (or I can just google it, of course)?
    Websites are fine for learning languages, but I'd suggest an actual book for learning concepts. My favorite beginning author is Deitel / Deitel. They have two "How to Program" books, one for C++ and one for Java. Their books are very readable and form the basis of college programming classes.
    By the way, what is the minimum amount of math that is required to be a programmer? The highest I completed was College Algebra.
    Being able to count and grasp equalities (<, >, =) is essential. I know kids in early elementary school who are capable of writing good programs! At the same time, a firm knowledge of algebra helps when working with variables, a knowledge of geometry (sin, cos, tan) helps when working with computer graphics, and knowledge of physics/statistics helps when working with simulations, and I've definitely found opportunities to weave my knowledge of calculus, discrete math, and linear algebra. In short, little is required, but higher math will make you a better programmer.
  • rep21rep21 Member Posts: 51 ■■□□□□□□□□
    When I made the decision to switch to the software emphasis, I asked myself this same question. Here is what I found to be the best answer:
    http://www.tiobe.com/content/paperinfo/tpci/index.html

    You really can't go wrong with learning Java. Java is the core of what you will learn in the WGU Software emphasis as well (along with fundamentals of others like perl, sql, javascript, html, css, xml).

    After learning Java, and getting some type of entry level position somewhere, I plan on learning Ruby on Rails.

    Hope this helps some! :)
    WGU - MS in Information Security and Assurance: May 2016 Start
    WGU - BSIT: Software
    AAS - Systems Admin/Networking
  • paul78paul78 Member Posts: 3,016 ■■■■■■■■■■
    @CenturionMario- the early part of my IT career was as a software engineer. I developed libraries used by programmers and also developed operating system tools used by sysadmins. You had commented that you wanted to get deep into it. So to me that means computer science and software engineering principals.

    The reality is that most software programming is very simple business programming that may not require a deep understanding. But if you truly want to master the craft, I advocate learning the foundational concepts of software algorithms and data structures. There are a few online free classes which you may want to check out. Try coursera.org and www.edx.org.
Sign In or Register to comment.