Research Software Engineering: A Primer

Author
Published

November 25, 2024

Preface

This book is meant to empower researchers to code with confidence and clarity.

If you studied something other than computer science—especially in the natural sciences like physics, chemistry, or biology—it’s likely you were never taught how to properly develop software. Yet, you’re often still expected to write code as part of your daily work. Maybe you’ve taken a programming course like Python for Biologists and can put together functional scripts through trial and error (with a little help from ChatGPT). But chances are, no one ever showed you how to write well-structured, maintainable, and reusable code that could make your life—and collaborating with your colleagues—so much easier.

This book is for you if you want to:

  • Write functional software more quickly
  • Use a structured approach to design better programs
  • Reuse your code in future projects
  • Feel confident about what your scripts are doing
  • Prepare your research code for production
  • Share your work with pride.

Whether you’re just beginning your scientific journey—perhaps working on your first major project like a master’s thesis or your first paper—or you’re contemplating a move from academia to industry, the practical advice in this book can guide you along the way. We will approach software design from first principles and tackle research questions with a product mindset.

While the book contains some example code in Python to illustrate the concepts, the general ideas are independent of any programming language.

This is still a draft version! Please write me an email, if you have any suggestions for how this book could be improved!

Enjoy! 😊

Acknowledgments

The texts in this book were partly edited and refined with the help of ChatGPT, however, all original content is my own.

How to cite

@book{horn2025rseprimer,
  author = {Horn, Franziska},
  title = {Research Software Engineering: A Primer},
  year = {2025},
  url = {https://franziskahorn.de/rsebook/},
}