The workshop addresses the passing of software writing skills to young scientists, the next generation of researchers in the Earth, planetary and space sciences. The writing of code in science following minimal but vital software engineering rules, best practices and processes shall be imparted as fundamental skills. So the workshops addresses young scientist with some experience in writing software for their research work. The lessons will cover:
Databases and Applications
Version Control with Git and GitHub
Defensive Programming and Testing
Software Engineering in Science
Open Access, Open Data, and Open Science
Publishing scientific software
Instructors:
Hussein El-Sayed - Hussein is an Egyptian Software Engineer who works at GoEuro Travel GmbH and graduated from Faculty of Computers and Information Technology. He focuses on spreading the importance of computer science tools and technologies among all researchers as this will increase the productivity and might give them accurate and efficient results if used correctly. He also runs a blog that has lots of useful topics about computer science.
Peter Steinbach - Peter is a high-performance computing developer at the Max Planck Institute of Molecular Cell Biology and Genetics in Dresden. He has a PhD in Particle Physics and is now responsible of accelerating scientific applications in a myriad of languages as well as on a zoology of hardware platforms.
Marta Hoffman-Sommer - Marta is a member of the Open Science Platform team. She participates in projects concerned with open research data and with data management. She is coordinating the launching of a new Repository for Open Data. By training and work experience, Marta is a molecular biologist.
Prerequisites:
First hands-on experiences and the need of programming and developing software in your own work. At least the material from the previous workshop should be known - see:
https://github.com/malvikasharan/software_writing_skills_potsdam
http://vahtras.github.io/git
http://vahtras.github.io/databases
http://vahtras.github.io/potsdam-automation
Agenda
Training materials (novices)
Training materials (intermediate)
Training materials (proficient)