Skip to content

Developer Curriculum

Maurits Kok edited this page Sep 29, 2021 · 4 revisions

How to use this curriculum

These materials represent an abbreviated and targeted curriculum designed to help you develop and maintain the Transposonmapper repository and code base. All of the resources listed below are free to access and use, and supplementary material like video lessons has been added where possible and relevant.

Materials were compiled by Maurits Kok and Ashley Cryan of the TU Delft Digital Competence Centre, with input from other DCC members Niket Agrawal, Jose Urra Llanusa, and Manuel Garcia Alvarez. The curriculum was compiled in September 2021.

Bash

  • What is Bash? - of all the shells available, Bash is one of the most popular, the most powerful, and the most friendly
  • Bash Essentials – Bash commands commonly used to navigate file directories in your Terminal/GitBash
  • The Unix Shell lesson from Software Carpentries - use of the shell is fundamental to using a wide range of other powerful tools and computing resources. These lessons will start you on a path towards using these resources effectively
  • Installation Instructions - particularly important for Windows users, as Bash comes pre-installed on Mac. Windows users will need to install GitBash following the instructions at this link
  • Using the Terminal in Mac - The Terminal app allows you to control your Mac using a command prompt

Git

GitHub/GitLab (remote repositories)

Jupyter Notebooks and JupyterLab

Anaconda Navigator and managing conda environments

  • Anaconda Installation Guide from Software Carpentries - Although one can install a plain-vanilla Python and all required libraries by hand, we recommend installing Anaconda, a Python distribution that comes with the latest version of Python and Jupyter Notebooks by default
  • Intro to Anaconda Navigator - Anaconda Navigator is a graphical user interface to the conda package and environment manager. This 10-minute guide to Navigator will have you navigating the powerful conda program in a web-like interface without having to learn command line commands
  • Introduction to Conda for (Data) Scientists - Conda is an open source package and environment management system that easily creates, saves, loads, and switches between environments on your local computer
  • Managing Conda environments - documentation on performing a range of common tasks with Conda using the command line

Python

Modular Code and testing

Docker

VSCode

Continuous Integration

Reproducible Research