I work as a researcher at KNMI, the Dutch Weather Service, on improving the HIRLAM and HARMONIE weather forecasting systems. Both weather forecasting programs are (for the most part) written in the Fortran programming language.
A recent article (in Dutch) discusses my participation in trade union and works council affairs at KNMI.
Since the 12th of January 2009 I have been running my own instance of HIRLAM on my PC at home under GNU/Linux (CPU: Core(TM)2 Quad CPU Q6600 @ 2.40GHz, Memory: 4 GByte, using gfortran and OpenMPI). Originally, this run was meant to catch coding errors in the development of HIRLAM, but it has also found meteorological errors (e.g., the treatment of water in its various phases from the boundaries). From the 7th of August 2012 onwards, this setup - with an increased resolution - runs on a PC with a quad core (hyperthreaded) Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz and 32 Gbyte of RAM. Since the 10th of September 2012, an instance of the HARMONIE model was added (no graphs yet). This one caught meteorological errors, too, in the treatment of snow. On the 25th of July, 2013, I upgraded the motherboard to one that contained a Haswell processor; unfortunately, this combination didn't lead to stable operation. A new computer, featuring a "Knights' Landing" processor, should bring back these forecasts in the 2nd half of 2015.
An example of my work is the reforecasting of the Feb. 1, 1953 storm for the Netherlands late 2002.
To connect this to the present: the Great Storm of 1953 led to the construction of the Delta Works as a result of its large toll on human life. The Maeslantkering is a part of this, and as Wikipedia correctly notes:
The barrier is connected to a computer system which is linked to weather and sea level data.The weather (and sea level) data is computed by KNMI, based on HIRLAM.
I am one of the two Dutch delegates to the Technical Advisory Committee of the Council of the European Centre for Medium Range Weather Forecasts.
No Real Programmer works nine-to-five, unless it's the ones at night - or, in the alternative: Hackers are from Mars, Corporations are from Venus (Mike Meissner and David Edelsohn).
Why is Fortran fun ? Because you get to work with people like Sourcery, Inc !
Now for the more mundane issues:
I am a GNU Fortran maintainer, though not the most active one by a long shot. Here are the test results of the latest GCC Build.
I am also a member of the GCC Steering Committee and the Fortran Standardization Committee. In the past, when Fortran was a necessary ingredient in selling 8-digit-dollar hardware, its standardization was a fierce battlefield, as exemplified by this account. On second thoughts, it's still needed to sell 7-digit GBP/year hardware as shown by this deal.
For some contemporary controversy, view the Coarray addition to the Fortran 2008 Standard and my take on it in February 2008, although by now it isn't controversial anymore. For its development in relation to GNU Fortran, see this web site.
Note that all GNU Fortran maintainers are volunteers; this means that Fortran still plays a major role in computing - nobody has to be forced to work on it ...
Those working on GCC came together once a year during the GCC Summit in Ottawa until 2008, and gather from 2009 onwards in Montreal, but from 2010 (October) again in Ottawa.
[ That is, since 2003. Before that, there were occasional gatherings like during the Linux Expo's. At the last one, in 1999, I presented the following - discussing g77, of which these are the accompanying slides ].
In 2005, I presented this paper in Ottawa, to show the progress of GNU Fortran.
In 2006, I hoped to present the sequel to this paper, as by that time GNU Fortran was fully able to correctly compile HIRLAM, the weather forecasting model used by Denmark, Finland, Iceland, Ireland, Norway, the Netherlands, Spain and Sweden.
Unfortunately, the Review Committee of the Summit was not convinced.
In 2007 I proposed to write about Front End Optimization. The proposal has been accepted, and resulted in the following article.
For 2008 I proposed to write about Coarray Fortran. The proposal has been accepted. I submitted the following abstract. This is the final version of the article.
After 2010, annual "GNU Tools Cauldron" sessions were organized, like this one in 2014.
And then, besides free software, there's free music ... and free speech - and here's another one, two years later.
I wrote, years ago:
Africa is not the "Dark Continent". Africa is the Continent of Light, and as soon as the children in the One Laptop Per Child project realize this, they will reap huge benefits from the light-starved Northerlings.
This certainly was not-for-profit. But now we have The US-Africa Summit to look back on, which is definitely also necessary.
Another volunteer activity I am involved in is the "Wereld Winkel Maartensdijk" (whose activities in the Anglo-Saxon world are better known as Fair Trade).
To give you an impression of this work, I show you the Wereld Winkel De Bilt nearby.
I'm a volunteer for remedial teaching in my neighbourhood. I teach (individual) courses of mathematics, physics and chemistry at the high school level.
If you think that's easy, read up on the quiz of the three doors and take notice of the huge number of (learned) people who got it wrong - defeated by the decision tree for the Monty Hall problem which is run-of-the-mill mathematics for high school students over here.
Here is a challenge for you: A Sudoku solver in Fortran. You need a Fortran 90 compiler to compile it. It takes the input Sudoku in the form space digit ... space digit over nine lines, with missing entries containing two spaces. See this example; it is the 17th of August 2008 one from The Daily Sudoku (rated as "very hard"). Read the analysis of its solution.
The program reads from stdin. In the program, missing (not determined yet) data is indicated by 0.
If you have a Sudoku it can't solve, send it to me !
Van Snyder (JPL), whom I know from the Fortran Standardization Committee J3, found one. Apparently, backtracking only pairs of missing "exclusions", i.e., possible valid entries, isn't sufficient - the program also has to track triples.