Fortran tutorial for someone with no prior programming experience?

Click For Summary

Discussion Overview

The discussion centers around the best programming language for a beginner with no prior experience, specifically considering Fortran and Python in the context of learning for physics applications. Participants share resources, opinions, and experiences related to tutorials and the suitability of each language for newcomers.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested

Main Points Raised

  • One participant expresses a desire to learn Fortran as their first programming language, citing a recommendation from a friend in physics.
  • Another participant suggests Processing as a beginner-friendly option, emphasizing its visual feedback and Java syntax.
  • Several participants provide links to various Fortran primers and tutorials, indicating a range of resources available for learning Fortran.
  • Some participants argue that Fortran is beneficial due to its legacy libraries and static typing, which may aid in learning programming fundamentals.
  • Others highlight Python's popularity in the scientific community and its ease of use for data manipulation and visualization, suggesting it as a valuable language to learn alongside Fortran.
  • One participant mentions the potential challenge of mastering Python due to its extensive libraries, which could detract from learning Fortran.
  • A later reply indicates a decision to learn Fortran first based on the recommendations received.
  • Another participant proposes the idea of learning both languages, reflecting a flexible approach to programming education.

Areas of Agreement / Disagreement

Participants generally agree that both Fortran and Python are good choices for someone interested in physics, but there is no consensus on which language should be learned first. Multiple competing views exist regarding the advantages of each language.

Contextual Notes

Some participants note that the choice of language may depend on specific interests in physics and programming applications, and there are varying opinions on the learning curve associated with Fortran versions.

Who May Find This Useful

This discussion may be useful for beginners in programming, particularly those with an interest in physics or related fields, as well as educators seeking to recommend programming languages to students.

Light Bearer
Messages
23
Reaction score
0
Hi there,

As the title suggests, I am looking to start learning my first programming language. I am a mature student (24) who has recently returned to school to pursue physics. A friend of mine who does physics suggested that I learn Fortran (90/95) as my first language. I am looking online for tutorials but haven't had much luck. The tutorials on the Fortran site all seem to assume prior programming experience, and obviously I have none :frown: I was hoping someone could recommend a good online tutorial (preferably free, but I am willing to pay)...Any help is appreciated.

Alternatively a good friend of mine who does CS suggested that I learn Python as my first language and provided me with a great online tutorial. Opinions on whether I should learn Fortran or Python as my first language? Or is it irrelevant? Thanks!
 
Technology news on Phys.org
I'd check out Processing.org as a first language. Its designed from visual graphic artists uses Java syntax and gives immediate feedback. Processing is based on Java so learning it isn't a loss. From there I'd get into using Java and learn how to use Netbeans or Eclipse for serious programming.

For physics related stuff I'd checkout Open Source Physics at www.compadre.org/osp. They have a lot of physics simulations. I took a course a few years ago where we used the book Intro to Comp Physics which is based on the Open Source Physics library and can do a lot of cool simulations.

Other opinions will follow...
 
If your interests are in physics, then, yes, Fortran and Python are very good choices. Fortran for all the legacy libraries that by virtue of being around for decades are now bug-free. And Python for its great popularity in the engineering and scientific community as a quick dynamic language, as a replacement for MATLAB and mathcad in both programming ease, handling of matrices, and data visualization.

If you have to choose, I would learn Fortran first. Up to Fortran 77, it all was very easy to learn; starting from Fortran 90, Fortran started to include more advanced stuff that makes learning Fortran a bit more of an effort.

I can think of two reasons to learn Fortran first:
  1. Its staticly-typed nature...you will learn to declare variables correctly of a type and keep them that way.
  2. For the purposes of programming physics or other calculations/simulation, you can quickly learn most of Fortran, if not all, in a short given time frame with a tutorial or a book and be done with it.
I can think of a reason to take on Python second:
  1. You may never finish studying Python...and all its modules; thus, you would probably never get back to Fortran

Often, you need both. People continue to use individual Fortran functions for the main number crunching and glue them together by wrapping them with Python to ease GUI creation, data gathering and manipulation, data visualization.

my 2 cents...more like 3
 
Thanks for all the replies, I appreciate it. I've downloaded all the recommended tutorials and look forward to getting into them. I will learn Fortran first...thanks gsal!

rcgldr said:
A somewhat current primer for Fortran:

fprimer.pdf
I go to SMU! I had no idea this existed. I guess I will start learning Fortran from Clarke's tutorial and see how it goes.

Thanks again :biggrin:

Edit: The Python tutorial my friend recommended: http://learnpythonthehardway.org/book/
 
Last edited:
gsal said:
If your interests are in physics, then, yes, Fortran and Python are very good choices. Fortran for all the legacy libraries that by virtue of being around for decades are now bug-free. And Python for its great popularity in the engineering and scientific community as a quick dynamic language, as a replacement for MATLAB and mathcad in both programming ease, handling of matrices, and data visualization.

If you have to choose, I would learn Fortran first. Up to Fortran 77, it all was very easy to learn; starting from Fortran 90, Fortran started to include more advanced stuff that makes learning Fortran a bit more of an effort.

I can think of two reasons to learn Fortran first:
  1. Its staticly-typed nature...you will learn to declare variables correctly of a type and keep them that way.
  2. For the purposes of programming physics or other calculations/simulation, you can quickly learn most of Fortran, if not all, in a short given time frame with a tutorial or a book and be done with it.
I can think of a reason to take on Python second:
  1. You may never finish studying Python...and all its modules; thus, you would probably never get back to Fortran

Often, you need both. People continue to use individual Fortran functions for the main number crunching and glue them together by wrapping them with Python to ease GUI creation, data gathering and manipulation, data visualization.

my 2 cents...more like 3
Good advice!
 
I may as well just learn them both.
 

Similar threads

Replies
16
Views
3K
  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 397 ·
14
Replies
397
Views
21K
  • · Replies 14 ·
Replies
14
Views
5K
  • · Replies 37 ·
2
Replies
37
Views
5K
  • · Replies 75 ·
3
Replies
75
Views
18K
  • · Replies 17 ·
Replies
17
Views
6K
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 11 ·
Replies
11
Views
3K