Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

C/++/# SQL/C++/Python which order to learn?

  1. Mar 29, 2016 #1
    Hello everyone,

    I am interested in learning coding to be potentially an actuary or data scientist.

    Based on my research online, the programs to be proficient at are:

    SQL, C++, VBA, Python, VBA, and SAS.

    I am sure there are more I should learn but I am pretty much a beginner. In which order should I learn the above programs?

  2. jcsd
  3. Mar 29, 2016 #2


    Staff: Mentor

    I'd try Python first. Its general purpose and easy to learn.

    At the same time you could learn sql as its not a general purpose programming language but rather a database oriented language where a single statement is in fact a program.

    As an example, suppose you had a database with a customer table and you wanted to list the customers out in alphabetic order then you might write something like this in SQL:

    Code (SQL):

    SELECT first_name, last_name, address, city, state
        FROM customer_table
            WHERE city = "Albany" AND  state = "NY"
                ORDER BY last_name, first_name;
    As you might guess you'll get a list of names of people who live in Albany, New York in alphabetical order. This of course assumes that there is a customer_table in the database and that it has fields last_name, first_name, city, and state and that the city names are in standard format ie capitalized first letter and the state field uses abbreviations.

    Also data science may use R, MATLAB or Julia or even EXCEL in doing their analysis so you have have to be familiar with but not necessarily proficient in many languages used in the data sciences.

    You could check out the anaconda distribution of python+julia as a good platform to start with or if you're only interested in Python then you could check out the Processing IDE python mode (comes with graphical examples and is a good way to learn by doing python).
  4. Mar 30, 2016 #3


    User Avatar
    Science Advisor

    Like jedishrfu, I also recommend to start with Python and R. SAS is really murky and very expensive, too. So as long as you don't plan to become a specialist for phased out software, keep your hands off.
  5. Mar 30, 2016 #4
    DrDu and jedishrfu thanks for your input.

    I am obviously a newbie. So you're saying SAS will become extinct and eventually no longer in use? If so, in how many years?
  6. Mar 30, 2016 #5


    Staff: Mentor

    Also for learning matlab you could start with freemat as a free and cheap alternative.
  7. Mar 30, 2016 #6


    Staff: Mentor

    Software goes in and out of favor and theres really no way to say when. You may find a job where the company uses SAS extensively so you go with the flow.
  8. Mar 30, 2016 #7
    OK. I guess working with SAS is too advanced for me regardless whether it will or will not be phased out.

    I will be focusing on Excel/access, R and Python for the next few months.

    Matlab and Julia = likely in early 2017

    Thanks again jedishrfu
  9. Mar 30, 2016 #8


    User Avatar
    Science Advisor

    I think sas has missed big data. Also, SAS has tried to build up a portfolio of products but with limited success. The point is that Base SAS, though very well tested and therefore used e.g. in pharma industries has never been updated to keep older programs compatible. To make up for this, SAS brought up every couple of years some new, in their eyes "cool" new package, e.g. to make graphics easier, or data bank access, but there is no red line anywhere.
    So the situation is such that many enterprises are still using sas because they have lots of code written in it, but noone is really happy with it.
  10. Apr 15, 2016 #9
    its really useful and i need about file handling functionalities of programming language.
  11. Apr 15, 2016 #10
    It all depends on what you'd like to do. VBA is strictly for Microsoft Office products, though it can help you learn VB/VB.NET, ASP and ASP.NET as they're all variants of Visual Basic. VBA = Office products, ASP/ASP.NET = websites.

    C++ will prepare you for languages based on that (C#, PHP, etc).

    It boils down to what your end goal is. SQL queries, while they can become very complex, are generally easy to write as long as you know where the data lies and how to tie what you need together. Another factor is what does the business needs require? For instance, I'm a Database Admin/Developer at my job, but I mainly pull silly reports and data mine all day if I'm not working on a web app, and most of my web apps are just a way to display the queries so people don't keep emailing me to send them an excel report :P
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted