Modularise your work!

After the first post on the general importance of programming in the earth sciences today I will start with this post to go into more detail of techniques. In general there are two simple paradigms, which help me through the most problems in programming and work in general: The first is KISS – Keep It Simple, Stupid (one of the many common extensions of this abbreviation). First roots of this principle can be found in design, but it can be applied within many different sorts of applications. To keep things simple helps a lot within programming, since at one point everybody has to revisit their own code after some sort of break. A quick understanding of it is essential to enhance its functionality, reuse debugged snippets or finding errors. Using simple solutions also helps to interact with co-workers and others. Especially when scientists have to expect to interact with other disciplines, simple ways are often the only way forward. Continue reading

Programming in a scientific environment – An overview

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

A scientific cycle

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