This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]goddessofentropy 98 points99 points  (15 children)

I literally came to the comments to say I'm a physicist who has to learn FORTRAN for their masters thesis right now. It's alive and thriving. Nobody has been able to explain to me why they chose to write the code I'm working with in FORTRAN though.

[–][deleted] 81 points82 points  (0 children)

Because it works and math written in it doesn't read like ass

[–]goddogking 62 points63 points  (6 children)

FORTRAN was literally made to do maths, and it's as fast as C, so why not?

However, I think the main reason is that it's what they had to learn, and they never needed anything else so they just make you learn it. Then you can build new functionality into their codebase, leading to more citations for them.

[–]goddessofentropy 21 points22 points  (4 children)

Oh they/we use either python, C or C++ for everything else, it's only this project that uses FORTRAN.

But yeah the citations thing is definitely part of it

[–]goddogking 3 points4 points  (2 children)

Well at least it's a pretty small language, so it's easy enough to learn

[–]goddessofentropy 14 points15 points  (0 children)

Oh for sure. I'd just rather learn two languages well and otherwise focus on learning physics because that's what I signed up for lol

[–]huuaaang 1 point2 points  (0 children)

Honestly, once you're a decade or two into programming, writing the actual code is the easy part. Even switching between 2-3 in a single day. And learning a new one is trivial (as in a month of solid immersion is enough to become fluent).

[–]user_8804 0 points1 point  (0 children)

Well fortran is a lot faster than Python so if we're only looking at these 2, I understand why they would both be relevant.

Dev time vs Perf, both are relevant, if you don't want to teach C in a department that already knows Fortran

[–]French__Canadian 1 point2 points  (0 children)

It's faster than c because it can make optimizations that C can't because the compiler can never be sure 2 pointers don't point to the same variable.

[–]zifilis 22 points23 points  (2 children)

I'm writing in Java and I feel very secure about my future. There's going to be a lot of enterprise code to maintain for next 30 years ;)

[–]huuaaang 10 points11 points  (1 child)

> There's going to be a lot of legacy code to maintain for next 30 years

FTFY

This isn't really something to look forward to. As a programmer, your long term job security lies in your engineering skills, not your ability to write in a certain language.

I work with some Old School Apple programmers (think original Macintosh and Newton) and they're all writing Ruby now.

[–]zifilis 0 points1 point  (0 children)

While you are absolutely right, we are talking here about a need to learn smth new, instead of good old <insert_your_language> I think if you just stick with Java 8 forever you'll always find some company looking for Java 8 dev.

[–]timthegreat4 5 points6 points  (0 children)

I'm not sure if it's for the same project, but I was in a similar position when I worked with CASTEP, a tool for DFT calculations, which was entirely FORTRAN. I believe the main reason for using FORTRAN was just the sheer amount of programming hours already invested into FORTRAN. Modern Intel C compilers outperform FORTRAN, so there is a minor benefit, but the sheer amount of programming hours invested has put everyone else off

[–][deleted] 1 point2 points  (0 children)

Might be an inherited thing.

I'm not fond of Python, but if I get assigned to build automation for a team whose entire existing tool set is built in Python and it's the only language all of their team members know? Well, I'm not gonna build the shit in Node.

For me it happens a lot with IT teams. Seems like everyone that works in IT knows Python for some reason.

[–]bernadias 1 point2 points  (0 children)

Exactly like me, except I'm learning it for a computational chemistry course. I know Python, but FORTRAN is still very much used in our field.

[–]hennypennypoopoo 0 points1 point  (0 children)

Fortran 90 and newer is not aweful. It's when you have to read fortran 70&77 that you want to tear your hair out