Logo
stable

Community

  • Howto join the SKA developer community
  • Agile teams and responsibilities
  • SKA developer community decision making process
  • Recommended readings
    • System Design
    • Programming
    • Programming Languages
      • Python
      • C++

Development tools

  • Git
  • Github
  • Continuous Integration

Development guidelines

  • Definition of Done
  • Python Coding Guidelines

Projects

  • List of projects
  • Create a new project
  • Documenting a project
  • Licensing your project

Services

  • AIT cluster
developer.skatelescope.org
  • Docs »
  • Recommended readings
  • Edit on GitLab

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.
Next Previous

© Copyright 2018, SKA Organization Revision bd5c5dd0.

Built with Sphinx using a theme provided by Read the Docs. Creative Commons Licence
SKA developer documentation by SKA organisation is licensed under a Creative Commons Attribution 4.0 International License .
Based on a work at github.com/ska-telescope/developer.skatelescope.org .

This work is inspired by the LSST developer guide © Copyright 2016-2018 Association of Universities for Research in Astronomy, licensed under a Creative Commons Attribution 4.0 International License.

This work is inspired by the Apache developer information Copyright © 2018 The Apache Software Foundation, Licensed under the Apache License, Version 2.0.