Recommended readings¶
This page contains a list of recommended readings that describe the practices adopted by SKA developers.
System Design¶
- Continuous Delivery describes system design and practices necessary to realize continuos delivery.
- Design Patterns: Elements of Reusable Object-Oriented Software describes the most common design patterns to be found in a software system.
Programming¶
- Code complete is a practical introduction to software craftmanship.
- The pragmatic programmer is a good introduction to sound programming practices.
- Clean code introduces quality software practices showcasing different examples and good principles from the agile world.
- Extreme programming explained can be extremely useful to teams and developers embracing a more agile way of working for the first time.
Programming Languages¶
Python¶
- Python in a Nutshell is a comprehensive Python reference to have on your desk while developing any sort of Python application.
- Python testing with pytest covers pytest framework and related testing best practices in the Python ecosystem.
- Fluent Python is a useful guide to writing effective, idiomatic Python code. This book is recommended reading for intermediate Python developers and those coming from other languages, showing how Python features and idioms should be used most effectively.
C++¶
- Effective C++ contains useful recipes for sound implementations of common C++ patterns.
- Effective STL focuses on the correct usage of the standard teamplate library.
- Effective Modern C++ follows from the previous series, expanding on the transition to C++11 and C++14 and their new constructs.