Master C and Python to solve real-world problems in biology and chemistry. A foundational programming course designed for the modern scientist.
Learn the syntax, control flow (loops, conditionals), and functions in both languages, understanding their unique strengths for scientific computing.
Manage biological and chemical data effectively using arrays, strings, lists, and structs to represent sequences, molecules, and experimental results.
Build practical tools from scratch, such as a DNA-to-protein translator, a molecular mass calculator, and a basic reaction kinetics simulator.
This syllabus provides a week-by-week breakdown of the topics, skills, and projects you will master. The course is designed to build your programming knowledge from the ground up in both C and Python, with a constant focus on real-world scientific applications.
This foundational module gets you writing code from day one. You will learn the core logic of programming in both a low-level compiled language (C) and a high-level interpreted language (Python), understanding the right tool for the right scientific task.
int
, float
, char
, double
. Understanding static typing and memory declaration. Python: int
, float
, str
, bool
. Understanding dynamic typing.+
, -
, *
, /
), relational (==
, >
), and logical (&&
, ||
, !
) operators in both languages.if-else
and switch-case
(C) / if-elif-else
(Python) to make decisions.for
and while
loops to perform repetitive tasks..h
) and function prototypes.Data is the lifeblood of science. This module teaches you how to structure, store, and manipulate the complex data found in biology and chemistry, from long genetic sequences to tables of experimental results.
char*
) and using the <string.h>
library.struct
to group related information. Introduction to pointers for efficient memory management. Application: Creating an AminoAcid
struct to hold its name, 3-letter code, and molecular weight together.dict
) for key-value mapping and Tuples (tuple
) for immutable data. Application: Using a dictionary to store the standard genetic code (mapping codons to amino acids).In this final module, you will integrate all your learned skills to build three complete, practical applications from scratch. You can choose to implement them in C, Python, or both to compare the languages.
C6H12O6
) or a protein sequence as input and calculates its total molecular weight.Modern biological discovery is a computational science. [cite_start]Groundbreaking tools like **AlphaFold (AI protein folding)** and **CRISPR-Cas9 (gene editing)** depend on powerful algorithms and data analysis[cite: 462, 1030]. [cite_start]Fields like genomics, drug discovery, and systems biology are impossible without programming[cite: 1015, 1025]. This course provides the critical, hands-on skills to not just understand these technologies, but to build them. Move beyond theory and start coding the science of tomorrow.
Python + Biology
Write a script to read a DNA sequence from a file and calculate the percentage of Guanine (G) and Cytosine (C) bases—a key metric in genomics[cite: 179, 1018].
C + Chemistry
Model the Michaelis-Menten equation using functions to simulate how enzyme reaction rates change with substrate concentration[cite: 589].
C/Python + Chemistry
Develop a program that takes a simplified molecular structure as input and identifies potential chiral centers based on connectivity rules[cite: 32, 36].
Lifetime access to all modules, project files, and the autograder. Includes all future updates.
Everything in the Course Pack, plus 2Ă— live group Q&A sessions, priority email support, and a code review for your final project.