Michael Tobis, a climate scientist, thinks climate modeling is progressing too slowly and might have even reached a plateau of sorts. There still aren’t very good regional precipitation predictions for example.
And he thinks, far simplified, that the disorganized mess of patching the old fortran codes is the reason – the climatology community should take a new example from the commercial sector which succesfully develops complex distributed software. Like Google.
And Tobis thinks a new, better organized approach with Python as the language of choice would be the way.
I personally don’t have experience with Python, so I can’t say that much about it. But I do know how much easier, faster, clearer and less error prone algorithm development is with a high level language like Matlab, although many performance issues still happen which sometimes make testing a bit slow. So I imagine Matlab vs C++ is similar to Python vs Fortran.
There’s some danger of googleism here – ie believing that Google is capable of solving any problem it just puts its geniuses to focus on. But perhaps in this distributed software case there might be some synergy effects. And a big part of the problem is good management, and clearly that has worked at Google since they have been so successful.
Similar problems probably exist in a huge range of human endeavours. Aerospace, nuclear or ground water simulations for example rely on old and new fortran code, and it’s probably slow to develop and hard to maintain. Programming languages change slowly since it’s a question of habit and not just a question of technology.
Michael has had a lot of good comments in the previous post that was titled “Why is Climate Modeling Stuck?”. Jordan said: “It usually takes me 2 months to get a model code that I am not familiar with running, and 3 days for the actual model run. I’d gladly take 6 days to run the code if it meant it only took a month to get the code in a usable form. ”
A common problem with “reusable software”.