Literature and Resources
Good books and resources to read
This section provides a curated list of books and resources to enhance your understanding of Python programming and related topics. Each recommendation includes a brief description to help you choose the most suitable resources for you.
Python
Books
- Downey, A. B. (2024). Think Python: How to think like a computer scientist (Third edition). O’Reilly.
- A great book to start with if you have no experience with programming.
- Link to free online book
- VanderPlas, J. (2016). A whirlwind tour of Python (August 2016, First edition). O’Reilly Media Inc.
- A very good and short book to get a quick overview of the most important features of Python if you already have some experience with programming.
- Link to the free online version
- Elter, S. (2021). Schrödinger programmiert Python: Das etwas andere Fachbuch (1. Auflage). Rheinwerk Verlag.
- A book that is unfortunately only available in German, but a very good and comedic start for beginners with lots of illustrations, examples and exercises. It is only available in print.
- Matthes, E. (2023). Python crash course: A hands-on, project-based introduction to programming (3rd edition). No Starch Press.
- A great book to learn Python with a hands-on approach. Highly recommended even for beginners but only available to buy.
Resources
- Daily Dose of Data Science
- A website and a newsletter with lots of easy-to-digest resources to improve your skills in Data Science.
General
Books
- Wilke, C. (2019). Fundamentals of data visualization: A primer on making informative and compelling figures (First edition). O’Reilly Media.
- A book that is highly recommended to understand the principles of data visualization and how to create effective visualizations.
- Link to the free book website
- Thomas, D., & Hunt, A. (2019). The pragmatic programmer, 20th anniversary edition: Journey to mastery (Second edition). Addison-Wesley.
- A fantasticbook to understand the principles of software development and how to create effective software.
Resources
- Quarto
- A static website generator that is very powerful and flexible. Used to create the slides and the website for the course.
- Cursor
- A code editor based on VS Code that is very powerful and flexible. It uses AI to help you write code.
- Jupyter
- A web application that allows you to create and share documents that contain code, equations, visualizations and text. It is very popular in the field of data science and academia and also part of Quarto.
- Advent of Code
- A wonderful website with daily challenges during the christmas time. Highly recommended to playfully improve your skills.
- Tiny Python Projects
- Interesting and fun projects to programm in order to improve your programming skills.
- Github
- The largest provider for git repositories owned by Microsoft. A lot of open source projects are hosted here and you can read the code.
- Codewars
- A platform to improve your coding skills by solving challenges. You can compete with others, see how other people solved the challenges and read and learn from the code.
- Cheat-Sheets
- Fantastic resource with cheat sheets for the book “Python Crash Course” by Eric Matthes. You can use these to quickly look up syntax and functions.