DNA to Protein Toolkit

A lab-mate hands you an unlabeled DNA fragment. Build the toolkit that profiles it, transcribes it, translates it and weighs the protein it encodes.

Foundational 4 stages ~2h 30m Python notebook

The brief

A collaborator has sent you a short, unlabeled stretch of DNA from a newly sequenced gene and asked one question: what is it, and what does it make?

To answer, you will follow the central dogma of molecular biology: DNA is transcribed into RNA, and RNA is translated into protein. Across four stages you build the small tools a bioinformatician would write to profile a sequence, convert it, read it as a protein and finally weigh that protein, the number you would compare with an experiment.

WHAT YOU WILL BUILD

A mini sequence toolkit that can describe a DNA fragment (composition and GC content), transcribe it, read its opposite strand, translate an RNA message into a protein and compute that protein's mass.

How a lab works

  1. Read the stage brief and look at the given input.
  2. Write code in a notebook that runs on your own computer, using skills from the problem bank.
  3. Submit your code and explanation. We re-run the code on our server against hidden tests, so the result can be trusted.
  4. Check your understanding with a few questions (a self-check in your browser) and explain your approach in your own words.
  5. Finish every stage and the lab is marked completed.

What you'll learn

  • Treat a DNA sequence as data you can count, transform and check
  • Apply the central dogma (DNA, RNA, protein) as concrete string operations
  • Use a dictionary to encode a biological lookup table such as the genetic code
  • Turn a short biological question into small, testable functions

Skills from the problem bank

This project builds on techniques practised in these problems. Solving them first is recommended, not required.

The stages

4 stages · ~2h 30m
  1. Profile the fragment

    Code Explanation
  2. Transcribe and mirror

    Code Explanation
  3. Translate to protein

    Code Explanation
  4. Weigh the protein

    Code Explanation