Jump to content

what's a good programming language to learn?


ecoli

Recommended Posts

For calculation, FORTRAN is good. It is easy to learn. There are many kinds of FORTRAN. To choose good compiler is important to do work well. And, try to understand the math function, which is contained in the compiler, more deeply for doing more exact calculation. Knowing the limitations of the compiler is also important, too.

Edited by alpha2cen
Link to comment
Share on other sites

  • 1 month later...

Python! It's easy to grasp and has provided me with some experience with functions and math coding before I moved on to C++ for raw power.....the tutorials are beginner-proof, the syntax is easy and succinct, it's interactive, it doesn't need to be compiled and can be run from the shell, there are plenty of modules to help you, and it's very readable! Almost didn't need to add comments for future reference. The downside is it's slow and it's not an executable.

Get fluent with it in days and then move on to C, C++ or java, just for the power.

Anyway, if you're coding for science data, there's always python for science www.scipy.org/

Edited by Mellinia
Link to comment
Share on other sites

  • 2 months later...
  • 1 month later...
  • 1 month later...

Well it depends exactly what you plan to do, if you plan to work on programs Java would be absolutely wonderful but, however, if you want to work with webpage code also I would recommend starting with HTML. Either way you choose good luck out there! I can almost assure you once you get a hold of it you will love programming.

Link to comment
Share on other sites

C++ is good for beginners. But MATLAB is my current favourite - it's a high level computing language which is very nice to use and very satisfying to program with, also it can be used in conjunction with Simulink to create both simple and advanced models for physics, climate, biology, economics etc... All in all, MATLAB is a good choice for many different people with varying goals (and especially good for physicists and mathematicians).

Link to comment
Share on other sites

Eventually, I want to be able to do some computationally-heavy modeling work, which obviously requires programming knowledge.

 

Is there a specific language that would be good for this type of interest. Where can a newb start learning about building the tools to develop skills to develop stochastic-type models?

 

Thanks!

 

 

i would suggest to first go for some expert help who can lead in the proper way and so many softwares are available for it, try for that one which can make your work easy at the same time you can learn too.

Link to comment
Share on other sites

  • 1 month later...

it doesn't matter the language, we can go days and days arguing about which is better from which, but at the end of the day all can do the same

C is a very good language and one of the oldest, it is the base of c# (.net) and also objective C ( MAC )

java is platform independent language

 

i advice you to learn one of those (most common)

 

ps: again no language is better than the other

Link to comment
Share on other sites

  • 3 weeks later...

After learning Java, go on to learn C++. The two are very

similar, you can learning both at the same time.

Perhaps you are right with your statement when seen from a global perspective. But as a somewhat experienced c++ programmer now mostly working on Java projects, I run into conceptual differences on almost a daily basis. Java's lack of nested namespaced, reference-only policy, lack of friend declarations, the differences between generics and templates, lack of destructors and most importantly Java's lack of const-correctness regularly make me bang my head on the keyboard. And that is after already having accepted the more-widely known differences like Java philosophy rejecting the concepts of operator overloading or multiple inheritance. And before you get me wrong: There are advantages of Java over c++, too. In fact, most Java programmers I meet actually consider the differences I listed as advantages. But there are also issues like "portability" that even I consider an advantage.

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...

A good programming language is one that your employer or teacher wants you to use. During my 35 year career as a programmer, I had the opportunity to use many languages. There is no best language, only ones that are better at some things than others. After learning several diverse programming languages, to learn another is not difficult, because all have ifs, loops, computations and data. The greater challenge is to learn how to use libraries of code and reuse program segments being maintained.

Link to comment
Share on other sites

  • 2 months later...
  • 3 weeks later...

I think it would be easier to list languages that you should not bother learning, and really, either because they are poor languages, or that they are just old and shouldn't be used by anyone, other than that, every language has it's perks and applications, weirdnesses and frustrations, pluses and minuses. I have learned and used over 30 and i code in about 15 in the course of work and my daily interactions with technology (more if i count languages that rotate in and out) and i have no intention of stopping from learning the next language i may have to learn for whatever purpose... Better question perhaps is what programming language is best for doing [task]..?

Link to comment
Share on other sites

  • 3 weeks later...

I would say that yes C++ and Java are good languages to learn as far as language knowledge for career goes. However they are pretty not friendly to new programmers, linguistically they are difficult (think about everything you do to output simple characters on the screen), conceptually they get VERY advanced (Virtual Inheritance).

Link to comment
Share on other sites

I am new to computer programming but from what I have learned, C is an easier way to do computer programming language but c++ is a faster and more advanced programming language. In C you have much less terms to use but in C++, if you know the terms and understand the language you can enter them into the compiler and have the computer do the rest for you. An overall much faster process.

Link to comment
Share on other sites

As the name suggests C++ is just a superset of C, meaning that it does what C does (for the most part, compilers made C++ slightly easier in a few ways, but did take some control away), and also some more stuff. C is purely functional language, doesn't mean it's bad, there are problems where lower level control is required and there is no need for OO, like kernels for example. Non object oriented languages are typically easier to understand than object oriented, at least until you get the hang of OOP at which point some problems become easier to solve than trying to doing the same thing in a functional language. That said C++ can be used as both functional and object oriented, so as far as C being an easier way to do programming, the statement is incorrect.

 

Learning to program is not about knowing a language, languages are just tools to be used to do what you need the computer to do. Learning to program is to learn how to get the computer to solve one or another problem, at which point language becomes merely syntax, grammar, and a few peculiar semantics, rather than say learning a completely different and new way to solve the problem every time, without using any structures you used in any other language. If you know that a loop is the most optimal solution to a particular problem on a particular architecture, regardless of a language, you know what you need to find to make this loop happen. It will look differently syntactically, but the solution is still the same, so writing it in any language becomes a matter of a syntax lookup...

Link to comment
Share on other sites

  • 3 weeks later...

If it requires significant speed to be useful, C is the obvious choice. C is also, in my experience, rather painful to use.

 

If you want something relatively simple that can do the modeling (just not as quickly), try Python. It's fairly simple to learn and you can probably find pre-existing Python code that'll help you do what you want. O'Reilly's Learning Python is a good place to start.

 

Hi

 

Just wondering why you would choose C over C++?

Link to comment
Share on other sites

You cannot learn C++ without learning C, but you can learn C without learning C++. To an extent whether one knows a particular language or not is unimportant, as long as one knows one that is representative of several programming paradigms, including the four main paradigms: imperative, functional, object-oriented, and logic programming.

 

C is imperative, C++ object oriented, and both support mathematical functional; thus, the two satisfy two of the four programming paradigms and partly satisfy functional programming. However, functional programming with first class functions is better supported by Common Lisp, Scheme, or others, and one may the Lambda-Calculus which is a formal language.

 

Logic programming languages are Prolog and Datalog. In addition, one may want to add the meta-programming paradigm by learning Common Lisp or C++ Templates.

 

There are other languages for each paradigm and other paradigms. Generally one needs to know a language required for a job. Knowing C and C++ will give one the experience to quickly learn whatever language they need for a job. But, there are other languages that will do as well or perhaps better. Java and Javascript are a good combination; both are object oriented, and probably more in demand than C and C++. All the advice given in this thread has been good.

 

My recommendation is to look at job ads and choose a language that is important to get a job; learn it thoroughly. Then, learn another to be ready for a different job; learn it thoroughly. The more you know, the more valuable you are.

Link to comment
Share on other sites

If you're looking for a language for statistics, physics, vector arithmetic, and other mathematical/scientific uses you would probably go with R or FORTRAN. FORTRAN was the first programming language ever created (which was used by scientists), so there are hundreds of pre-written code libraries for various mathematical a scientific subjects. R is newer and less quirky than FORTRAN but is mainly used in statistical computing.

 

For application development, fast software, 3D/2D graphics and simulations, and sometimes general programming, you should go with C++ or C. C++ is object-oriented and heavily revised over C, so you will definitely find it nicer to program in, but C is able to run on almost any platform and is extremely fast over almost any language to date.

 

For general programming such as websites, small tools, and simple math, Ruby or Python will do just fine.

 

Hope this helped.

Link to comment
Share on other sites

Ed, if you have time and want to have fun (and by fun i mean make your head hurt), metaprogramming is a TON of fun in Python (and also very scary, i should mention that i got very scared of the concept some time through the video, and am yet to finish it, but it really is a great intro all the way through to advanced). Check this out:

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.