Hacker News new | ask | show | jobs
by jgrahamc 4673 days ago
I'm guessing the title was chosen because the submitter thought coding in Fortran was stupid, or old, or whatever. The reality is that Fortran has been updated frequently and for what he's doing seems like a reasonable choice (plus he probably has a store of routines that he likes to use for certain analyses).

Old language != Bad language

From TFA:

"SI: Is it true you still code in Fortran?

JS: Yeah, what’s wrong with that? It’s a good language. Fortran is real good for doing mathematics and running it real quickly. I’m not doing Photoshopping or anything like that. I’m just running numbers."

4 comments

the submitter thought coding in Fortran was stupid, or old, or whatever

I don't think it's stupid or old, but it's certainly interesting: in the world where hopping from one newest technology to another is normal, somebody sticking to what they are used to is noteworthy. Some other examples are Bob Staake using Photoshop 3.0 (http://www.bobstaake.com/pixfix/films.shtml) or OpenBSD using CVS (hehe) and writing their own version of it.

Maybe that's what the submitter thought.

(Yes, Fortran is still updated, but it's certainly not the cutting edge tech. Or maybe it will be, after this HN submission.)

> but it's certainly not the cutting edge tech

In a way, array slicing syntax has been with us since Algol 68, so it's not cutting edge. But still, Wikipedia only lists Algol, Matlab, R, Fortran, Sinclair Basic, Ada, Perl, Python and then coming to modern times, D and Go, as having that feature.

So it kind of feels like cutting edge in times when I'm lucky enough to be writing in a language that supports it.

http://en.wikipedia.org/wiki/Array_slicing

in the world where hopping from one newest technology to another is normal

On the assumption that you're talking about programmers, I suspect it isn't. I suspect the majority of the world's programmers stay with the same few tools for years and years, sometimes (but not always) upgrading a version when they're forced to.

Sure, I didn't mean the World, I meant our small world of tech news / startups.
I agree with your observations, especially that the the expert has a built-up library of routines that he understands and that have proven themselves.

My question about using Fortran as the main infrastructure is that this does not sound like a big data problem. It sounds more like an exploratory data analysis and model development problem. In which case a REPL-based environment like Python, Matlab, or R would have a lot to offer: interactivity, integrated plotting, modeling toolboxes.

People in my group do scientific computing with Fortran, large datasets, and big iron, and it works great in that domain. As people in this thread have noted, there is significant support for automated parallelization. I used to snicker at these dinosaurs (their own self-deprecating term), but I have noticed their publication record seems to be piling up faster than mine. I have therefore gotten over it, and hope that the dinosaurs are not snickering back at me.

Fortran is still pretty much the only choice if you want the maximum possible performance for your parallel math computations. The only downside is that you have to vectorize a lot of things by hand if you aren't doing nice flat data parallelism.
The problem isn't with the programming language; it with his algorithms. Sagarin's rankings are often an outlier, frequently in ways that just don't make sense. </opinion>
Well then his algorithms would still be wonky if he wrote them in Python or Haskell.
Well, that's my point. When I read the interview, it sounded like his heart just wasn't in it anymore.