Long time programmers, which two programming languages from this list do you suggest someone to learn and why?
Top | Newest First | Oldest First
ElwoodBlues · M
Depends on what the learner plans to do. If she's going into a STEM field, I recommend Python as a first language. It's a nice friendly interpreter; pretty good at catching your bugs, and a very expressive language. Plus there are tons of libraries useful in many STEM fields.
2nd language for person going into a STEM field: plain ol' C. C is a small language and thus easy to learn; also full of pitfalls. But the only reason a Python programmer needs to know C is to rewrite a few routines that need to be made time or memory efficient. So the Python user in need of efficiency can avoid many of C's pitfalls such as nested header files and weird "pointer to array of pointers" type mismatches.
Funny story: I had a friend with some cool realtime video processing algorithms from his school days. A company hired him and asked him to translate his code from C++ to Java. Because Java has no memory leaks. But Java would use a new buffer at each stage of the processing; 10 or 15 buffers per frame of video. And Java would happily allocate new memory each time ... until it needed to garbage collect. At which point the realtime code was falling hopelessly behind realtime. The way my friend put it, instead of no memory leaks, EVERY buffer became a memory leak that would eventually drag down performance!
2nd language for person going into a STEM field: plain ol' C. C is a small language and thus easy to learn; also full of pitfalls. But the only reason a Python programmer needs to know C is to rewrite a few routines that need to be made time or memory efficient. So the Python user in need of efficiency can avoid many of C's pitfalls such as nested header files and weird "pointer to array of pointers" type mismatches.
Funny story: I had a friend with some cool realtime video processing algorithms from his school days. A company hired him and asked him to translate his code from C++ to Java. Because Java has no memory leaks. But Java would use a new buffer at each stage of the processing; 10 or 15 buffers per frame of video. And Java would happily allocate new memory each time ... until it needed to garbage collect. At which point the realtime code was falling hopelessly behind realtime. The way my friend put it, instead of no memory leaks, EVERY buffer became a memory leak that would eventually drag down performance!
ninalanyon · 61-69, T
4. Nim
Oops, forgot to say why: fast compiler, type safe, fast executables, builds single file executables. Python like syntax using indentation instead of braces.
Oops, forgot to say why: fast compiler, type safe, fast executables, builds single file executables. Python like syntax using indentation instead of braces.
ninalanyon · 61-69, T
There is another reason for learning Nim and that is the very fact that it it is a little different from most of the rest. So while it is a perfectly usable language for both systems and applications programming the differences serve to make it clearer how things work. It is valuable as an intellectual exercise.
But if the question really meant to ask which one would be most effective at some task then you will have to specify the task.
But if the question really meant to ask which one would be most effective at some task then you will have to specify the task.
ABCDEF7 · M
JavaScript and other one depending on domain you are looking forward to.
View 9 more replies »
SomeMichGuy · M
You need to learn a set of things.
C is a great language because of being "close to the machine". If you do some simple programs, it can teach you a lot.
But the suggestion about Python is a good place to start.
With modern compilers / interpreters, debugging is typically far easier than it was in the pre-gcc days, when it was a black art.
So start with Python, learn the std stuff:
data types & operations on them
control flow statements
data structures
subroutines/packages
C is a great language because of being "close to the machine". If you do some simple programs, it can teach you a lot.
But the suggestion about Python is a good place to start.
With modern compilers / interpreters, debugging is typically far easier than it was in the pre-gcc days, when it was a black art.
So start with Python, learn the std stuff:
data types & operations on them
control flow statements
data structures
subroutines/packages


SW-User
I wish I liked java cuz i have two days to make an app lol
Miram · 31-35, F
@SW-User This is why I like tech simps.


SW-User
@Miram yeah i took an L by saying no to someone in the first lecture cuz i hated his app idea lol
NortiusMaximus · M
C/C++ for general use. Also Javascript and PHP for website programming.
Elessar · 26-30, M
Of those, C# hands down
This comment is hidden.
Show Comment
78 people following
Programming & Code Personal Stories, Advice, and Support
New Post Associated Groups Forum Members
Programming & Code Personal Stories, Advice, and Support
