YoVDO

Software Engineering for Research - Dr. James Hetherington, Turing

Offered By: Alan Turing Institute via YouTube

Tags

Python Courses Version Control Courses Continuous Integration Courses Command Line Interface Courses Sphinx Courses

Course Description

Overview

Explore key aspects of research software engineering in this comprehensive lecture by Dr James Hetherington from the Alan Turing Institute. Learn about testing, version control, documentation, refactoring, and continuous integration to improve your coding practices. Discover how to ensure code correctness, readability, and adaptability. Delve into topics such as the Cyro problem, performance optimization, reproducibility, and Jupyter Notebooks. Gain practical skills in building Python packages, creating command-line interfaces, and setting up project files. Understand the importance of documentation tools, licensing considerations, issue tracking, and software citation. Perfect for researchers and developers looking to enhance their software engineering skills in a research context.

Syllabus

Intro
The Cyro problem
Performance fetishization
Reproducibility
Jupiter Notebook
Using an editor
Building a Python package
Writing a commandline interface
Path oven
Setuppy file
pip install
pip install requires
readme file
license file
citation file
Documentation
Commentbased documentation tools
Sphinx
Objections
Bugs
License proliferation
Virality
Licensing
Issue tracking
Questions
Rule of thumb
Copyright
Library with multiple contributors
Individual static snapshots
The Software Citation Project
Citation chains
Github pages
Coffee break
GitHub


Taught by

Alan Turing Institute

Related Courses

Design Computing: 3D Modeling in Rhinoceros with Python/Rhinoscript
University of Michigan via Coursera
A Practical Introduction to Test-Driven Development
LearnQuest via Coursera
FinTech for Finance and Business Leaders
ACCA via edX
Access Bioinformatics Databases with Biopython
Coursera Project Network via Coursera
Accounting Data Analytics
University of Illinois at Urbana-Champaign via Coursera