Bioinformatics Programming Classes
- Recommended book: Learning Python, Mark Lutz, David Ascher, O'Reilly Media
- python.org To search for terms use google with: "site:python.org ..."
- Nice intro to python and programming in general: How to think like a computer scientist
... after this class ...
If you are thinking of choosing the Bioinformatics profile (even if you're not sure yet) you should already (now) enroll in the course Inleiding programmeren (Python) course ID 401096 via VUnet.
Class 1 - intro to linux
Class 2 - python shell: print, operator, types, if exercise: 'calculation' script
Class 3 - lists, for exercise: sum i over n; n!
Class 4 - Functions, scope, namespace, import, while exercise: calculator using functions; interactive calculator with error handling; guessing game
Class 5 - file I/O, dictionaries, string manipulation (e.g., split) exercise: codon table & translation
- Deadline Friday, September 24, please email Nicola Bonzanni and Ali May
Class 6 - Regular expressions
Class 7 - Putting everything together exercise: GO parsing
- Deadline Friday, October 11 please email Nicola Bonzanni and Ali May
Only the assignments of Class 5 and Class 7 will be graded (the others you may hand in if you want more detailed feedback). We use the following grading scheme for Class 5 asignment:
|Runs||2||does it run without (compilation) errors?|
|Output||2||produces correct output? is output clear/readable?|
|Flexibility/parameters||1||are different types of input handled correctly? Are parameters and file names not hard-coded?|
|Strucure/modularity||1||are functions used? locgical function names? no code before/inbetween function declarations?|
|Readability||2||logical variable names? Consistent indentation?|
|Efficient||1||is the implementation logical and efficient?|
|Extensions||3||about 1 point for each of the possible extensions|
|Total:||12||(if you do all extensions)|
and for Class 7 assignment:
|Structure / Readability||2||location of main code, no unnecessary global variables, consistent indentation, useful comments, good function and variable names|
|Robustness / Error-handling||2||useful error messages, check whether files exist, skipping empty strings, check whether number of arguments is correct|