When you program in science, your projects usually progress over time. Often, you got an idea, you create a quick and dirty solution and test it on data you know. This works for a while, but after several amendments, future-proving and incorporating new ideas, the code gets unbearable. This is the point when bottom-up-approaches break down and when you think about reprogramming everything. In these cases the new programs are not anymore bottom-up, you have an idea in mind what to achieve and often reuse some code snippets from before. We have reached the world of top-down.
History is important: it explains us how we got to the place were we are and interferes more with our future than many would admit. This is true in life, but also in science. In lecturing we usually teach concepts and methodologies, many developed in the last five centuries and they are all developed with a background. This background tells us a lot about why these methodologies gained its importance they nowadays have and only when we understand them we understand why they are so highlighted compared to other methodologies, which we do not necessarily teach nowadays. Nevertheless, usually we keep the mentioning of this background quite brief and when at all, some words about it can be found in books. But is it the right way?
As a scientist in earth science, who is working more on the theoretical side, the daily work consists in large parts of programming. Nevertheless, even with the importance programming has nowadays in this field, I hear again and again from people that they had not got a systematical education on this during their studies. Of cause, I agree, learning by doing plays a very important part to become a good programmer, but without further insights into the background of programming it can be quite hard to generate the benefits of a well planed structured programm. Continue reading
Two years. Two years between the first ideas and the submit of the paper, which has gone on its journey today. Sounds like a long time, but to be honest it is not. To show this I would like to explain in this post a little bit the generalised basic steps of my work towards a paper. I will not take the submitted paper from today as an example, because its creation was quite unusual. Therefore, I will stick with the general approach, which is divided in several phases: Continue reading