What programing language should i learn?

  • Thread starter 27513
  • Start date
  • Tags
    Language
In summary, the conversation is about a student asking for advice on the best programming language to learn for science and engineering. They mention considering Fortran and C++, but express concerns about the availability of resources and the possibility of the language becoming obsolete. The experts suggest learning both languages and mention Python as a good starter language. They also reassure the student that the fundamental concepts of computer science will remain relevant, even as tools and languages change in popularity.
  • #1
27513
4
0
im currently a grade 11 student in vancouver, already took all my gr 12 courses except for english so i get an easy in gr12 XD

i was wondering, for sci/eng what is the best programing language to learn and were could i find some resources for it

so far after a brief 20-30 min search i came up with

Fortran and C++ and I am leaning towards fortran but i see a few negative points for it...
1. i can't find any tutorials/self teach/beginers guide for it except through fortran77
2. there seems to be a lot of critism of it, being old and such
3. it seems to be dying

im more afraid of spending 2+ years on a language and find out that its obsolete or than anything
 
Technology news on Phys.org
  • #2
27513 said:
im currently a grade 11 student in vancouver, already took all my gr 12 courses except for english so i get an easy in gr12 XD

i was wondering, for sci/eng what is the best programing language to learn and were could i find some resources for it

so far after a brief 20-30 min search i came up with

Fortran and C++ and I am leaning towards fortran but i see a few negative points for it...
1. i can't find any tutorials/self teach/beginers guide for it except through fortran77
2. there seems to be a lot of critism of it, being old and such
3. it seems to be dying

im more afraid of spending 2+ years on a language and find out that its obsolete or than anything

Take AP Computer Science or IB
 
  • #3
flyingpig said:
Take AP Computer Science or IB

my school doesn't have that :/ and its too late for IB (and the ib at my school is piss poor, liks srsly...)
 
  • #4
27513 said:
my school doesn't have that :/ and its too late for IB (and the ib at my school is piss poor, liks srsly...)

Ah right, forgot you are in grade 11; you can self-study AP Computer A, if you don't like that you can apply for concurrent studies at Langara (given that you completed info-tech 12)
 
  • #5
flyingpig said:
Ah right, forgot you are in grade 11; you can self-study AP Computer A, if you don't like that you can apply for concurrent studies at Langara (given that you completed info-tech 12)

but that's going to take a whole year >_> (to get the infotech 12) and langaras abit far =_=
 
  • #6
27513 said:
but that's going to take a whole year >_> (to get the infotech 12) and langaras abit far =_=

Summer school, but it's too late now...
 
  • #7
27513 said:
im currently a grade 11 student in vancouver, already took all my gr 12 courses except for english so i get an easy in gr12 XD

i was wondering, for sci/eng what is the best programing language to learn and were could i find some resources for it

so far after a brief 20-30 min search i came up with

Fortran and C++ and I am leaning towards fortran but i see a few negative points for it...
1. i can't find any tutorials/self teach/beginers guide for it except through fortran77
2. there seems to be a lot of critism of it, being old and such
3. it seems to be dying

im more afraid of spending 2+ years on a language and find out that its obsolete or than anything

If it is a straight choice between C++ and fortran, I would say C++.

The downside is that it is more complicated.

The upside is that it is more widely used; and more in the style of other modern languages.

But consider learning both! The hard bit is learning to program. The syntax stuff you can pick up quickly and a reference book at your desk helps with library differences. The advantage is that you get to appreciate two ways of doing things. And once you can do that, you'll be able to pick up other languages as well in a hour or so, enough to try a quick easy program with them.

No doubt, you'll only have classes for one of them. In which case, I'd go with the C++. But even so, if you have access to the compilers, it can be fun to try a program or three in another language, just to help appreciate that it is all about the design and the algorithm; not the language you use to write it.

(Of course, there are designs that work better on one language than another. C++ is the more flexible in this regard as well, which is also partly why it is the more complicated.)

Good luck and which ever way you go, have fun! -- sylas
 
  • #8
27513 said:
i was wondering, for sci/eng what is the best programing language to learn and were could i find some resources for it

Python is my favorite starter language 'cause it's a good all around language, it's rather easy to learn, and it happens to have tons of scientific computing libraries. If the choice is between C++ and fortran77, I agree with sylas that C++ is the better choice because it's far more widely used and C (close enough to C++ that knowing C++ will help you learn it) is much more useful for engineers.
 
  • #9
27513 said:
im more afraid of spending 2+ years on a language and find out that its obsolete or than anything

C and C++ probably won't go completely obsolete for a long time because it's still the one of the most widely used languages for low level programming and there is a ton of existing code out there that is cheaper to modify than to completely re-implement.

However, software is getting much larger and more complicated every year and in order to manage such large systems effectively they are constantly coming out with new tools and programming languages to make it easier to manipulate them at a high level.

The tools (including programming languages) will go in and out of fashion all of the time, but the fundamental concepts of computer science will not. So, as long as you have a good abstract idea of what is going on you'll pick up everything else pretty easily.
 
Last edited:
  • #10
Once you know how to program in C/C++ learning FORTRAN will be much easier. You just have to throw away 75% of what you know and instead learn rigid and dumbed down FORTRAN syntax :wink:
 
  • #11
27513 said:
i was wondering, for sci/eng what is the best programing language to learn and were could i find some resources for it

im more afraid of spending 2+ years on a language and find out that its obsolete or than anything

You can't go wrong with C++. It's somewhat of a standard for developing a foundation. But it IS complex and may not be the best to self-teach.

I like Python. It was developed by a mathematician. It's excellent for developing and seeing answers to quick and dirty problems. Whatever language you pick, try to get an up to date text on algorithms and data structures.

Way outside of the box, check out http://www.softronix.com/logo.html . You'll never use Logo in "The World", but it's an excellent learning and thinking tool.

I don't think there's a way to ensure you'll use the language you study. But it's best to get a good foundation first.
 
Last edited:
  • #12
Logo?

*Wiki*

I never knew that it had anything more than turtle graphics.

@OP: C++ is good to start, it gives you a grasp of what's going on. Python is good too.
 
  • #13
Personally, I started on Java and think it was wonnndeerrrrrful

C++ is good too, but a little less forgiving.
 
  • #14
deathnote93 said:
Logo?
...
I never knew that it had anything more than turtle graphics.

The list processing is strong. The graphics can be a diversion, but it can be a thinking and learning tool. I'm surprised more schools don't formally show it to math minded kids (grade 8+). But like I said, way outside-the-box...
 
  • #15
I guess C++ is better than Fortran. I definitely won't recommend Fortran as a beginning language mainly because its syntax aren't that fun. But if you want a more basic language for mathematics and showing off, I guess go for it. If you want to actually program and functionality, C++ is far better and more reliable.

Now, I still prefer JAVA since it was my first language and I feel that it's a good language to grasp computer programming concept. It is also the most popular language as of now. The downside is that it's really slow, but it works (and I like it's universal characteristics). Python is another good language. Scheme is good for learning purposes as well, but the syntax are pretty bad and it's not that useful. But it does have its plus.
 
  • #16
Hunterbender said:
Now, I still prefer JAVA since it was my first language and I feel that it's a good language to grasp computer programming concept.

I agree with this. I had taken it that the choice was either/or between C++ and Fortran.

But if Java is an option, that would be better.

If the question was being asked by a teacher, I would definitely say Java rather than C++. C++ is very large and easy to make mistakes. Java is doesn't have so many options or different ways of doing things... and for a first learning language, that is important. It doesn't take long to learn C++ if you have Java under your belt; the syntax and concepts are very similar. Still, you can start with C++ if that is what is on offer at your school.
 

1. What factors should I consider when choosing a programming language?

When choosing a programming language, it is important to consider your goals and what you want to accomplish with your coding skills. You should also think about the job market and demand for certain languages, as well as the ease of learning and the resources available for a particular language.

2. Which programming language is the most in demand?

The most in demand programming language can vary depending on industry and job market, but currently some of the most popular and in demand languages include Java, Python, JavaScript, and C++. It is important to research the job market in your desired field to determine which language may be most in demand.

3. Is it better to learn a general purpose or specialized programming language?

This depends on your goals and what you want to achieve with your coding skills. General purpose languages like Java and Python are more versatile and can be used for a variety of applications, while specialized languages like SQL or R may be better for specific tasks such as data analysis. It may be beneficial to have knowledge in both types of languages.

4. Should I choose a programming language based on its popularity or personal interest?

It is important to choose a language that you have a genuine interest in and enjoy working with. However, it is also worth considering the popularity and demand for a particular language in the job market. It may be beneficial to have a balance between personal interest and market demand.

5. Can I learn multiple programming languages at once?

While it is possible to learn multiple languages at once, it may be more beneficial to focus on one language at a time. This will allow you to fully understand the concepts and syntax of a language before moving on to another. Once you have a solid foundation in one language, it may be easier to pick up others.

Similar threads

  • Programming and Computer Science
12
Replies
397
Views
13K
  • Programming and Computer Science
Replies
15
Views
1K
  • Programming and Computer Science
4
Replies
107
Views
5K
  • Programming and Computer Science
Replies
8
Views
878
  • Programming and Computer Science
Replies
9
Views
1K
  • Programming and Computer Science
Replies
11
Views
1K
  • Programming and Computer Science
2
Replies
58
Views
3K
  • Programming and Computer Science
Replies
16
Views
1K
  • Programming and Computer Science
Replies
17
Views
3K
Back
Top