do I need a Java or C++ course?

I am an undergraduate in actuarial science. I have taken a programming course in Visual Basic. I am just not so sure if I need to take another one in Java or C++. I don't like programming course too much coz it takes a lot of time. Could anyone give me some suggestion?
Thanks a lot.
https://diceus.com/need-use-outsource-healthcare-software-development-2/
Last edited on
closed account (367kGNh0)
1)When people employ, they may look for what may be called the "T shaped developer". Another skill, be it a world language or computer language, more often than not makes you more employable.
irisclasson.com/2013/07/08/stupid-question-218-what-are-t-shaped-pi-shaped-and-comb-shaped-skills-and-which-one-should-i-aim-for/
With only VB, you're pretty much an "I", but i don't know your other skills


2)If you want to make cross platform software, you won't get very far with VB, that's only for windows. Java and C++ on the other hand are more easy to establish across platforms

3)Depends on your ambitions, what you're seeking is rather vague.

4)https://imgur.com/a/2eDdw75
Last edited on
TBH, you might be better off with Python.

If you're not "into" programming, then C++ and Java can take a lot of getting used to.

Python is comparatively accessible. You don't have to learn much to get going, and the extensive libraries mean you can get useful stuff up and running quite quickly. These "early rewards" would be important to help you keep momentum.
what do you want to be able to do?

I am leaning toward java for you, but even that may be wrong. Its just easier to use, at the cost of having to work around artificial training-wheels type limitations on what the java standards group think YOU should be allowed to DO. Python or its peers as well -- there are a bunch of easy to learn languages that can do a lot of stuff, but can they do what YOU want to do? Practical math may not need it but some big problems you will have performance problems in some scripting languages, and on top of that, I dunno that most universities give any decent courses using those kinds of languages. Most of them are C or C++ grandchildren or great grandchildren and the uni courses teach C++ or java (which came from c++) or the like which have such similar syntax you can pick up the scripting ones fast (as a programmer major, of course).

A math tool -- maple, etc -- are programmable in their own language. Knowing those has merits.
Excel skills would be worth knowing, including programming it in both macros and vb.

it really comes down to what you want to do, and when you want to do it. Learning trendy language of 2020 and then attempting to finally use it in 2030 when your job finally has a need for you to code a solution... your language could be dead, if you pick a minor scripting one...

programming goes faster the more you do of it, twice over. First, you get better at it, and second, you build up (or acquire from others) tools that you learn so you can build up a solution from pieces quickly (you don't start with a blank page every time). Look at the problem... can you solve it on paper faster than you can code it and run it? Are your tools insufficient for the job? Time to code it, or hand it over to the coding area at your company.

Last edited on
I've only really seen the need to know how to program for these languages/software packages:

APL (80% of my work my first 1.5 years as an actuarial student)
Visual Basic (I do a great deal of VBA Excel and Access programming)
SQL
SAS
FoxPro (is it just SQL?)

APL and FoxPro seem to be fading away

I would try to hone your Excel or Lotus skills as much as possible since actuaries live in spreadsheets.
https://diceus.com/hire-offshore-developers/
Last edited on
People, people, he isn't asking to become a computer scientist. Just a good introduction course.

+1 for Python.


But if your choices are between Java and C++, either will do.
My personal opinion of Java is not favorable, though. /full disclosure
@Nndisy, your approach to programming is going to be that of the casual consumer of the computer for it's math resource. Kudos to @Duthomhas for recognizing that, and @Gana for decent suggestions.

That said, there can be some interesting tributaries. Here are some points I think are pertinent, because you are in a field that views the computer much as scientists and engineers do, not as programmers (which are what you find here for the most part) view the computer.

Visual Basic is a bit of an oddball. I say that for two reasons. First, it is fading in popularity and second the syntax is not like most other languages. VBA (Visual Basic for Applications) is a subset of the older form of this language, and is fading fast, too.

As you move into a career you're going to find "scripting" languages for various products. Some here point to Excel, and obviously that's it's own important skill, but it does reach a limit where the size of data may not reach for your needs. For that you'll probably find a tool that uses some other language, and most of them will be related to the syntax of C/C++ (as is Java and C#).

Like @Duthomas, I have a repulsion toward Java, but I also react that way to C#. However, these two languages are purpose built exactly for the kind of needs you'll face where you need the highest performance you can get for very large problems.

I highly discourage you from pursuing C++ unless you intend to develop tools for your industry, meaning you're becoming a developer of products for actuarial purposes.

Java and C# are the primary independent languages you should consider.

Many scientists, engineers and medical professionals rely on Python, which is another non-C style language.

There's also Rust, Ruby, Javascript....you may run into these languages occasionally - it depends on the tools involved.

SQL is likely important (database control and access), especially if you must access large databases from a corporate source. It is fairly simple.

Bottom line, though, unless you need a particular credit for your degree, there is no need to take a course on any of these languages. All of us learn after college, and these languages evolve and new ones emerge. We're always studying.

Java or C# are central to the overall technology because their syntax is based on C/C++, from which most generalized languages derive (except, of course, VB and Python). Ether one is a good choice, though in my view C# has good tools for the practice and plenty of books and documentation.

Most of the "tour of..." type texts are good introductions, and I have no list of books to suggest, but two or three texts with decent reviews and some practice will probably suffice.
Adding to what Niccolo said, if you want just a taste, most programming languages have a home page with prominent links to getting started / tutorial / basics that make for easy browsing.

C++ notably lacks any “official” resource like that; this site’s tutorial is not bad for an introductory taste. Perhaps another forum member will have a better suggestion.
As Duthomhas points out the C++ tutorial here is a good introduction, if a bit outdated. No C++14, no C++17 if you want to have a look at what is new and updated with C++.

Another C++ tutorial, one that is frequently updated, is Learn C++: https://www.learncpp.com/
SQL is likely important (database control and access), especially if you must access large databases from a corporate source. It is fairly simple.

Simple but maddening :) I have found it to vary excessively from one system to another, and even if the same words work on several systems, performance will go out the window as often as not if you don't tweak it for each one. And performance is like voodoo for it -- the language plays off the configuration of the database and tying the language+configuration together to get speed really is a dark art. I learned enough to do anything in sql in about a week. 5 years later and I am still learning more about how to do it right, which is radically different from doing it well enough that it just runs (and runs, and runs, all day it runs). The one week crash course will get you a long, long way if you don't need to use it daily or are not tied to massive systems.
Last edited on
Topic archived. No new replies allowed.