22116/22166 Python programming in Life Science: Difference between revisions

From 22116
Jump to navigation Jump to search
(Created page with "Info on 22116")
 
mNo edit summary
Line 1: Line 1:
Info on 22116
__NOTOC__
'''Teacher:''' [https://www.inside.dtu.dk/da/dtuinside/generelt/telefonbog/person?id=816&cpid=214027&tab=2&qt=dtupublicationquery Peter Wad Sackett], pwsa@dtu.dk <!--, [https://www.inside.dtu.dk/en/dtuinside/generelt/telefonbog/person?id=130596&tab=0 Gisle Alberg Vestergaard], gisves@dtu.dk --> <br>
'''Language:''' The course is taught in English.<br>
'''Tools:''' The course is using Jupyter Notebook. [[Install Jupyter Notebook]] before you meet in class.<br>
'''Textbooks:''' There are no text books for the course. I will make do with powerpoints, videos and references to online resources. You can find the material under the individual lessons in the [[Programme]].<br>
'''Location:''' Building 358, room 60b + streaming to room 046, no matter what your plan says. Course 22116 and 22166 are taught together.<br>
'''Time:''' Tuesday 8:00 - 12:00, module E2-A.<br>
 
== Course details ==
There are no plans for streaming the lectures as there already are some recorded video lectures for each session. However, with over 180 students two teaching rooms must be used. I will stream the teaching from one room to the other.
 
[[Programme]] Fall 2025
 
[[How the course is conducted]] Required reading
 
[[Course Survival Guide]] Useful when you get stuck early
 
[[AI guidelines for the course]] You want to use AI, then you MUST read it.
 
[[Good code]] Always keep this in mind
 
[https://rosalind.info/problems/locations/ Rosalind project] Python exercises at different levels for practicing
<!--
[https://docs.google.com/spreadsheets/d/1wEs2xS-7DmpMvtosweTzYw0Fx3_XCbz4k5cuN5tJVK8/edit?usp=sharing Put yourself on the Get Help list]
 
[[Course First Aid]]
 
[[Grading]]
-->
 
== Competences ==
A general engineering competence skill is the ability to explain the process through which you obtain your results - how else can they be trusted?
Learning to program is a great way to practice that skill, since you have to explain to the computer how it is supposed to solve the task you give.
This explanation must pay attention to detail, specifically identifying and ordering the elements of the solution.
This nurtures and strengthens an analytical and structured mindset which is also an essential engineering competence skill.
Training these skills is obviously beneficial for the student, but they do not come for free - it is '''hard work''', so put the time aside for it.
 
== Resources ==
* Online: [https://teaching.healthtech.dtu.dk/material/22118/clean_code.html Clean Code] by Lukasz Dynowski. An amazing read that is mandatory. Read it once around lesson 5 and once more around lesson 8.
* Online: [https://www.coursera.org/learn/python Coursera course: Programming for Everybody] is a beginner course in Python. Everyone who wants to prepare for course 22118/22168 can start here. Just get far enough so you understand what programming is and how it works. That will benefit you a lot as a newbie. The [https://teaching.healthtech.dtu.dk/material/22118/CourseraPythonBook_270.pdf Coursera textbook].
 
* Book: ''Learning Python'', 5th ed. by Mark Lutz (O'Reilly) ISBN: 978-1-449-35573-9. This is the best Python book I have read. It covers all the basics and then some. All from the perspective of being a novice programmer. However, it is a brick; big, heavy and unwieldy. If you only want one Python book, then this should be the one. The course will not be taught from this book, but it could be good to have as a Python reference manual.
 
* Book: ''Python Crash Course: A Hands-On, Project-Based Introduction to Programming'' by Eric Matthes (No Starch Press) ISBN: 1593276036, 9781593276034. A pretty OK book which leads you into the Python world without too many distracting points and theoretical contemplation.
 
* Online: [https://wiki.python.org/moin/BeginnersGuide/NonProgrammers Python for Non-Programmers]
* Online: [https://docs.python.org/3/tutorial/ Official Python 3 tutorial]
* Online: [https://docs.python.org/3/reference/index.html Python 3 reference manual]
* Online: [https://docs.python.org/3/library/index.html Python 3 standard library]
* Info: [[Biological knowledge needed in the course]]
 
'''Videos with advice on learning how to code'''<br>
* Youtube: [https://www.youtube.com/watch?v=A8ldqcFS5S8 How I Would Learn To Code If I Was To Start Over] by Tiff In Tech
* Youtube: [https://www.youtube.com/watch?v=_nsV65jUPL8 Coding Was Hard Until I Learned THESE 5 Things!] by Pooja Dutt
* Youtube: [https://www.youtube.com/watch?v=MHPGeQD8TvI How I would learn to code (if I could start over)] by Tina Huang
* Youtube: [https://www.youtube.com/watch?v=To8hKb112Aw How I would learn to code (if I could start over)] by PIRATE KING
* Youtube: [https://www.youtube.com/watch?v=9s29LKfEFjQ How I would learn to code (If I could start over)] by Jason Goodison
* Youtube: [https://www.youtube.com/watch?v=NtfbWkxJTHw How to Learn to Code - 8 Hard Truths] by Fireship
 
'''Interesting but less teaching oriented material'''<br>
* Online: [http://ivory.idyll.org/blog/big-data-biology.html Top 12 reasons you know you are a Big Data biologist]
* Online: [http://lifehacker.com/six-life-lessons-ive-learned-from-programming-1502077380 How programming and your life is similar]
* Youtube: [http://www.youtube.com/watch?v=nKIu9yen5nc What most schools don't teach - how to think]
 
== Archive of old course programmes ==
None yet, as the course is new.

Revision as of 14:23, 4 August 2025

Teacher: Peter Wad Sackett, pwsa@dtu.dk
Language: The course is taught in English.
Tools: The course is using Jupyter Notebook. Install Jupyter Notebook before you meet in class.
Textbooks: There are no text books for the course. I will make do with powerpoints, videos and references to online resources. You can find the material under the individual lessons in the Programme.
Location: Building 358, room 60b + streaming to room 046, no matter what your plan says. Course 22116 and 22166 are taught together.
Time: Tuesday 8:00 - 12:00, module E2-A.

Course details

There are no plans for streaming the lectures as there already are some recorded video lectures for each session. However, with over 180 students two teaching rooms must be used. I will stream the teaching from one room to the other.

Programme Fall 2025

How the course is conducted Required reading

Course Survival Guide Useful when you get stuck early

AI guidelines for the course You want to use AI, then you MUST read it.

Good code Always keep this in mind

Rosalind project Python exercises at different levels for practicing

Competences

A general engineering competence skill is the ability to explain the process through which you obtain your results - how else can they be trusted? Learning to program is a great way to practice that skill, since you have to explain to the computer how it is supposed to solve the task you give. This explanation must pay attention to detail, specifically identifying and ordering the elements of the solution. This nurtures and strengthens an analytical and structured mindset which is also an essential engineering competence skill. Training these skills is obviously beneficial for the student, but they do not come for free - it is hard work, so put the time aside for it.

Resources

  • Online: Clean Code by Lukasz Dynowski. An amazing read that is mandatory. Read it once around lesson 5 and once more around lesson 8.
  • Online: Coursera course: Programming for Everybody is a beginner course in Python. Everyone who wants to prepare for course 22118/22168 can start here. Just get far enough so you understand what programming is and how it works. That will benefit you a lot as a newbie. The Coursera textbook.
  • Book: Learning Python, 5th ed. by Mark Lutz (O'Reilly) ISBN: 978-1-449-35573-9. This is the best Python book I have read. It covers all the basics and then some. All from the perspective of being a novice programmer. However, it is a brick; big, heavy and unwieldy. If you only want one Python book, then this should be the one. The course will not be taught from this book, but it could be good to have as a Python reference manual.
  • Book: Python Crash Course: A Hands-On, Project-Based Introduction to Programming by Eric Matthes (No Starch Press) ISBN: 1593276036, 9781593276034. A pretty OK book which leads you into the Python world without too many distracting points and theoretical contemplation.

Videos with advice on learning how to code

Interesting but less teaching oriented material

Archive of old course programmes

None yet, as the course is new.