Who Said FORTRAN Is Dead?

NASA has an urgent need for a FORTRAN developer to support the Voyager spacecraft. Popular Mechanics interviewed Voyager program manager [Suzanne Dodd] who is looking to fill [Larry Zottarell’s] shoes when he retires.

We had a lot of people comment on my recent Hackaday article, “This Is Not Your Father’s FORTRAN”, who studied the language at some point. Maybe one of you would like to apply? You need to do so soon! NASA is hoping to give the new hire six to twelve months with [Zottarell] for on-the-job training. You’ll need to brush up on your vintage assembly language too.

light data system hwThe two Voyagers were some of the first NASA spacecraft to use computers. The resources are limited in the three 40 year-old computers found on each probe. They handle the spacecraft’s science and flight software. The software is a little more recent having been updated only 25 years ago in 1990.

A big problem is a lot of the engineering design materials are no longer in existence. People’s memories of the events and reasons for decisions made that long ago are bit hazy. But NASA does have an emergency list of those former engineers when questions arise. That means this could be more than just a job where you program for ancient hardware, you could find a lot of reasons to interact with the people who pioneered this field!

This will be an awesome hack. Anyone up to doing remote computing at a distance of 12 billion miles?

A video on the history of the two voyagers is found after the break.

52 thoughts on “Who Said FORTRAN Is Dead?

  1. One of my ex-inlaws wrote COBAL for the airline industry and I picked on her for it and she got mad. My point was that as a noble and confusing language it had limitations of scalability and understandability and perhaps one day would be responsible for a very public crash of the data network behind the airline.I then reminded her that I was just a hardware engineer and didn’t know what i was talking about.

    1. RandyKC – it’s probably at JPL in Pasadena California. Where are you Kansas City MO? Yes? then telecommute a lot of programmers do it. It’s probably not a job per se but just a limited contract. Those two dinosaurs will probably go dark in a few years anyway. I thing RTG’s only have a half-life of 80-90 years. Add in good ol’ American ingenuity and know how and you probably can cut that in half or more. Remember Apollo 13 and all the shuttle problems? Gus Grissom will back me up on this! D’Oh!

        1. The problem is trying to figure out exactly what the compiler is doing. Compilers (especially optimizing ones) can cause issues that are not inherently logical and hard to track down. Beyond this the code that gets interpreted down to op code (as everything does) is usually not as efficient. Most people forget this these days as hardware has improved so much that the difference is usually much less visible.

  2. What does cobol have to do with fortran why does everyone keep referencing it in fortran posts? I’ve worked with both they are commonly found around big data but cobol is better for floating-point and business..

    cobol isn’t even an old language the last spec is less than a year old..

    1. By that definition of language age, every language still in development is only a few years old at most.

      Also, people tend to mention COBOL and FORTRAN together because they were invented around the same time.

      1. From 1995 to 2000, a COBOL programmer by the name of Ed Lein, unmarried and without children, made a ton of money revising legacy code to handle the Y2K problem. He was employed as a contractor, mostly working at IBM and others. He did his job well, and his revisions ensured his applications would handle Y2K, 2038 and beyond. Basically Ed was set for a life of luxury and freedom.

        As luck would have it, in 2001 he developed acute myeloid leukemia. Instead of undergoing radiation and chemo- therapies, he opted for an experimental procedure pioneered by Dr. Ken Storey, whereby he had his blood replaced by a biologically safe antifreeze, then had his body temperature reduced to slightly below freezing. (This is the same approach used by certain amphibians in Arctic climates. The idea is to slow metabolism to essentially zero, and limit freezing to extracellular fluid, but not intracellular tissue.)

        Ed’s hope was that in the future, advances in medical science could have him reanimated and cured of his leukemia. He put all of his fortune in the scheme, but with no dependents, his money was his to use as he saw fit and he paid for maintenance for fifty years. As the years passed Ed remained in stasis. Period yearly microscopic tissue samples showed negligible degradation.

        Many more years had passed. Eventually, medical science had advanced enough to realize Ed hopes. When he woke up in this wonderous new world, he was immediately struck with how familiar his surroundings were. It was if he were back in 2001. He asked someone who looked in charge, “Am I cured?”, the reply was no. Ed asked “What year is it?”, the shocking reply came with an explanation:

        “Yeah”, he said, “around 2015, your stuff was saved with you just in case. You can thank HP for that. Anyway, we still haven’t gotten around to replacing your apps in some critical systems, and we’re wondering if you can help us out with the Y10K problem coming up? Sorry, we can’t do anything about your leukemia, but it shouldn’t take you long, and we’ll pay you enough so you can go back in the freezer. Who knows, maybe in the future they can cure you…”

    1. Would you want to convert a 100,000 line numerical analysis code from Fortran to Python?
      Well, maybe if you were paid by the hour.
      Well written Fortran with an optimizing compiler will always outperform all other languages, except assembler.

  3. Latin is also a “dead” language, but look at the Vatican and Catholic church – that is a few orders of magnitude older than voyager.
    Worse, there is no “apply now” link, and I cut my teeth on a Meta4 simulating an IBM 1130 using Hollerith cards and batch processing (and I even did assembly). I think this was 1975.
    Right now I do embedded systems. 64k? You’ve got to be kidding. I can do QR codes on an arduino (github.com/tz1 – qrduino). My FAT32 filesystem takes, I think 12k and goes to 128Gb uSD cards (FAT32Lib) with an assembly turboed SPI lib.
    And I’ve done, er, reverse engineering, even breaking the Atari ST’s “Dungeon Master” copy protection (I didn’t pirate, but it was more fun than the game itself).
    I’ve also patched my share of spaghetti code over the last 30 years.

  4. Fortran is not a dead language. Many scientific calculations are still done using Fortran. And many of the codes being run on supercomputers and the National Labs are in Fortran. Trouble is that today when people think of computers they only know the business applications side of things. Fortran is not good for business applications, like databases and on-line commerce. But it is and has been for more than 40 years the primary language for doing complex numerical computation. It is certainly not dead.

  5. I admit I quite like Fortran as a language. I find it similar to writing excel formulas.
    I’d love to see a microcontroller that used excel formulas. A but like a basic stamp crossed with a gpu. To have those sort of parallel processing capabilities would be interesting.

    1. Excel formulas are just written in VBA. VBScript is close.I love it too. If you can figure out how to poke and peek I/O with it you could do real world interfacing.Right now you could use keyboard and mouse input for switch and analog input and LPT1 or COM1 for output using printer commands or modem commands from Excel. You can also send tones to the sound card. Or maybe flash the monitor screen or some pixels?

  6. Astronaut Franklin Chang Díaz’s old high school and college alma mater is full of ex-FORTRAN programmers at the local insurance companies around Connecticut. Some are retired some are still active. CT has Perkin Elmer (Hubble optics), Hamilton Sundstrand (space suit (EVA) mfg), Pratt and Whitney (jet and rocket engines), Sikorsky & Kaman (helicopters), Colt Firearms (guns), and many more all still use FORTRAN. FORTRAN is also great for working with the incredibly large numbers used in cryptography such as non-prime factoring used as pseudo-random public keys. By using a modified version of sieve of Eratosthenes in FORTRAN you can generate a huge number of public keys to use as alphanumeric transitions for OTP’s. The integer and mantissa can be the private key. I hope I explained that correctly…

    Interesting fact: VOYAGER 1 is like at 34 hour ago time machine. When it looks at Earth it is seeing it 17 hours ago.Sending back the image takes another 17 hours. That;s a 34 hour time differential. And is getting longer as it continues to travel. That was 2 years ago. Now its more like 18-19 hours.

  7. Remember the movie SPACE COWBOYS (2000) with Clint Eastwood, Tommy Lee Jones, Donald Sutherland and the late James Garner? We need to get old-timers like the character Clint Eastwood played. The kids today knew nothing about the systems he worked on back in 1960’s. Hell we could just ask the ET’s at Area 51 to fly on over there and bootstrap a FORTRAN upgrade for us, I mean they can fly at FTL right? I mean how the hell did they get here otherwise? Oh they don’t really exist – they were just made up for a ake CYA (cover your arse) op??!!! D’Oh! Why didn’t I get that memo!!!???? (LOL)

  8. Do an online competition with a FORTRAN game. You never know where your next superstar will be. Some kid might have the knack and you’d put him aside for someone who barely knows the job is available and is likely close to retirement themselves.

  9. I am sure that Fortran is the upper level language that is compiled into machine code. Besides Fortran, you need to know machine code (and assembly) to be able to understand what is going on in the program flow. In reality, the compiled Fortran code should be replaced with 100% assembly/machine code so that you can reduce the amount of code space used. Compilers are still poor today – imagine just how bad they were back in 70’s. With assembly you can do cycle counting to make things more accurate and efficient for energy conservation. That will be a big problem in the coming decade as the power core starts dwindling. I programmed in Fortran in the late 70’s, and still program in 100% assembly code for every CPU I work with today. Being 50 now, I could oversee the project until the end. I guess I should contact JPL. :)

    1. Why are you so sure compilers are better now than then? I am more inclined towards the opposite. Back then you were heavily confined in memory size and computing power. If your code after your work as well as after compilers work was bad, you were wasting precious resources to the limit of your code losing usability. It would be full stop until you optimize your code. Now we have “just add (physically or request from OS) more RAM” and what not. We are allowed to be lazy. Not like then.

      1. A few years ago, I colleague was working on a very small system had an extremely limited memory space and required Excell performance. I advised him to optimize for mininal memory usage, in hopes the code would fit in the CPU’s on board L1 cache. This worked out very well. Modern compilers gave advantage of far more available compile-time memory, and can easily do optimizations that were difficult or utterly impracticable in the 1959s. And yet, a friend who worked with the original FORTRAN guys said they had told him it was vital to do as well as, or better than, what the hand-coded assembly folks were doing, or they could never sell programmers on using FORTRAN. I myself worked on Fortran 77 and JOVIAL compilers in the 1980s. For JOVIAL, in particular, we were constantly asked for improved code sequences for certain operations. I spent a lot of time tweaking the compiler to get the code just so. Another colleague wrote the peephole optimizer, and got some amazing improvements. The fact is that even 35 years ago, optimization was applied at every stage of compilation once you had the flow graphs, and none of that was new thinking even then. As for modern stuff, I’ve seen a series of complicated string concatenations involving multiple C library function calls reduced by the compiler to just a few operations. This was in 2020, and it blew my mind even then. Compilers can do amazing things. You just need memory and time for the optimizations, and enough disk space to save a huge graph, if it comes to that. And don’t get me started on the huge improvements I’ve obtained using profile-guided optimization. I haven’t done compiler work for nearly thirty years, and I’m astounded by what the modern stuff can do. Even do, the ancients were doing a surprising lot of it 60 years ago, and more.

  10. Any questions about this and any other NASA JPL program (real or made up) can be directed to this woman at JPL. It is her job to handle questions like this, She is well versed on Voyager and Pioneer too:
    Ms. Elizabeth R. Landau
    Voyager Media Manager
    Voice: 818) 354-6425
    Elizabeth.Landau AT jpl.nasa.gov
    (Replace AT with @)

    Suzanne “Suzy” Dodd already hired a young man for a year contract to replace Larry Zottarelli in 2016 when he finally retires. However, Suzy thinks new guy will never be replaced and grow old at NASA.

    1. Well I think a few reasons is that FORTAN is 59 years old and PYTHON is only 25 years old. The Voyager spacecrafts systems were written in FORTAN and have been up there in outer space for around 40 Years now. When you write a new patch or subroutine for a Voyager you can’t upload a PYTHON program when it’s all written in FORTRAN. I think NASA uses C now. It was invented between 1969 and 1973. I want to learn C+ as I have the package in my pile of stuff to get around to. I also want to dabble in JAVA too. Python sounds interesting though.

      1. Very interesting. Now I learn python. And I want to learn assembler, c++ and Java in the future! Why I am here? Because I planning to go to the Canada and work at NASA.
        Why NASA? Because there is no any scientific progress last times and I think it will not happen. And Space…. Space is boundless area of secrets and answers

        1. Alexandr Vyaznikov – Good luck at NASA. Please develop a backup plan what we call in USA a GOLDEN PARACHUTE (usually meant for retirees or pensioners). NASA has an annoying habit of laying people off (furlough?) and all you will have in USA is free UNEMPLOYMENT INSURANCE from US Govt for a little over a year (about 40% of what NASA was paying you). Don’t know what Canada has. You can also get socialized medicine in both countries just like in Russia. Always remember that not everyone is your friend. Some undercover psychopathic personalities exist here in USA and we call them OFFICE HIMMLERS. Watch out for them. They are sneaky and only care about their own agenda (and they will spy on you like FSB?)

          Always lock your desk and take your stuff home at night. Don’t develop any innovations or any I.P. (intellectual property) on NASA’s resources or on the clock with them. They will TAKE your I.P. as their own. Others will try and get on with you with your US Patent, but did not contribute much in the R&D process.

          Try and download GOOGLE TRANSLATE for your smart phone as there will be language and cultural differences with us Americans. Try and get a URBAN dictionary to know when you are being made fun of with American euphemisms you are not familiar with. Being called a “offey”, “herb”, “doopty-doop”, “poindexter”, “Einstein”, etc. are all veiled insults. Never go out drinking with the office and have too much to drink. That’s a good way to get fired while off-duty. NEVER drink ethanol-products ON-Duty! That’s a given. Try to kick (stop) your smoking habit. It’s becoming un-cool to smoke here in USA now. You’ll just get dirty looks while you stand outside getting your nicotine fix in the cold winter or hot summer. And don’t even think about bringing a E-cigarette inside the building. The are generally banned everywhere now in USA.

          I’ve known a lot of Russian programmers who immigrated to USA. They are very smart. They tend to group together which is a good idea as it will make you feel more comfortable. Try not to speak your native tongue in front of Americans as they tend to think you are talking about them behind their backs. They will undoubtedly complain to management or HR. They complain about the Hispanic cleaning people speaking Spanish too. We are a bunch of complainers here mostly. Don’t say ANYTHING even remotely racial, sexual, or off-color jokes to ANYBODY man or woman! You will be hauled in front of a HR rep as if you were in trouble with FSB!

          Always keep your hands to yourself. Never touch anybody unless it is to shake their hand when you meet the first time. Smiling is OK if it is a controlled reasonable smile. Do not violate an American’s personal air-space as you Europeans have a tendency to do. Always keep an arms length between you and a office associate. You may have bad-breath, they might be homophobic, no American likes another man 10 cm from his face. That’s just too damn close!

          Never steal anything from the office refrigerator. Never hang out at the office water cooler gossiping about others. The walls LITERALLY have ears, human and electronic, especially at NASA (i.e. consent to monitor?).

          Try and learn as many computer languages NASA is offering to pay for for continuing education or on your own. That is a good guarantee you won’t be chosen for the next round of lay-offs if you know every system inside and out. You’ll be the “go to guy” like how Dr. Theremin was to Red Square.

          And lastly: Learn American football and baseball (and develop a love of watching it on TV). You’ll be the hit in the lunchroom when the alpha-males start barking about “Did you see the Houston game last night?” You won’t have a blank look on your face thinking “Houston? What are they talkin’ about?”. You can reply “Yeah The Broncos QB – Brock Osweiler just signed up with Houston for 72 mill!!! Now that’s a sweet deal!” Just start coughing when someone asks you a followup question and excuse yourself to the men’s room. (LOL)

          Good Luck Alexandr !

Leave a Reply to Antron ArgaivCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.