All pages
Powered by GitBook
1 of 15

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Course Info

The session takes place every Tuesday 18h15 in starterkitchen

For the course it is mandatory to purchase the course material (https://www.udemy.com/course/100-days-of-code/. Discounts are available via udemy and https://appbrewery.com/. It should cost you around 15€.)

This gitbook contains the main information you need for the course (e.g. homework and extra materials)

Resources

Worklabs

  • Week 3 (Data Types)

    https://colab.research.google.com/drive/1QxcbSduin4UkU78_ev4ZlzyI6dHTTlRO?usp=sharing

  • Week 4 (Loops)

  • Week 5 (Functions I)

  • Week 6 (Dictionaries):

  • Week 7 (Jupyter Notebook):

  • Week 8 (Object Oriented Programming):

    See below

Solutions (for the totally optional exercises on the Harvard material)

  • Week 1 (Functions & Variables)

Week 2

To-Do (until 05/11/2024)

Homework :

  • Do days 2 & 3 of the course

Week 9 (Object Oriented Programming II):

https://colab.research.google.com/drive/1o4sAPwnejpXQKuoLrJEktOWMxOUovkwT?usp=sharing

  • Week 10 (FileIO):

    https://colab.research.google.com/drive/1kYJykV1VbuSsSyzf6_fq3MdfiTPtmJm8?usp=sharing

  • https://colab.research.google.com/drive/1xl1mkRB31zBLQhE3DtuVZObZfssDA_ak?usp=sharing
  • Week 2 (Conditionals)

    • https://colab.research.google.com/drive/1I72DNw-LS3BJO_NbkqYyqFZcUsLdFTh_?usp=sharing

  • Week 3 (Loops, Lists & Dicts)

    • https://colab.research.google.com/drive/1qTtuAqND6Z-OP7rkr4hOWKqWzgf3rAHN?usp=sharing

  • Week 4 (Exceptions)

    • https://colab.research.google.com/drive/1z9xqzcOV5FLoQl4PhNzZSIZJDkd7JgFC?usp=sharing

  • Week 5 (Libraries)

    • ​https://colab.research.google.com/drive/1swsc4earaul7lo00q1KL1FlH6MLPZ8lG?usp=sharing​

  • Week 6 (File Handling)

    • ​https://colab.research.google.com/drive/1CwmTFMU36ZlOfd3OuYKN5QKfqZ6pLRDK?usp=sharing

  • Week 7 (Unit Tests)

    • ​No exercises

  • Week 8 (Object Oriented Programming)

    • ​https://colab.research.google.com/drive/1_XPcB6K3Rn65GwRcUTulsdtwAhKIlp9U?usp=sharing​

  • https://colab.research.google.com/drive/1Xu6VKEmJdUJvdmdK1epUo9lkIYFqU7s1?usp=sharing
    https://colab.research.google.com/drive/1IArpoS4uOn9Y1uhPwpudHIi4dxV-b45I?usp=sharing
    https://colab.research.google.com/drive/1yL84PqfmRqsRlAKcweXex4uoqJkHtDuc?usp=sharing
    https://colab.research.google.com/drive/10tHG_qMwrNN8uh1Zt3CoudLkFS6UGEHI?usp=sharing
    https://colab.research.google.com/drive/1Qn7ZT-_yr1-PmcsetIZCljvwHb0PmOuc?usp=sharing
    Flowchart for a simple calculator

    Python: From Beginner to Practitioner (Legacy 2024W)

    Watch the videos
  • Do the interactive coding exercises (online at udemy and in PyCharm)


  • Totally Optional

    • Watch lecture 1 of the Havard Python Course:

    For the best learning experience, it's recommended to watch the 1-hour lecture twice: first for a quick overview, and then more slowly while taking notes. Please ensure you allocate sufficient time for this.

    • Work through the following homework assignment

      • https://colab.research.google.com/drive/1HVemFckA3FqYe3DdirA3tYJYTx5_Pvga

    Always first create a copy with "Copy to Drive" or download the notebooks to work locally on them. Otherwise your progress won't be saved!!

    Week 4

    To-Do (Until 19/11/2024)

    Homework:

    • Do days 6 & 7 of the course

      • Watch the videos

      • Do the interactive coding exercises


    Totally Optional

    • If you are interested in learning more about functions, the Harvard material covers them in

    • Watch lecture 3 of the Havard Python Course:

    For the best learning experience, it's recommended to watch the 1-hour lecture twice: first for a quick overview, and then more slowly while taking notes. Please ensure you allocate sufficient time for this.

    • Work through the following homework assignment

    Always first create a copy with "Copy to Drive" or download the notebooks to work locally on them. Otherwise your progress won't be saved!!

    Week 1

    To-Do (until 29/10/2024)

    • Buy the udemy course (ideally for the lower price) https://www.udemy.com/course/100-days-of-code

    • Homework:

      • Do the first day of the course

        • Watch the videos

        • Do the interactive coding exercises


    Totally Optional

    If you are very eager you can have a look at this additional, more advanced material:

    • Watch lecture 0 of the Havard Python Course:

    For the best learning experience, it's recommended to watch the 2-hour lecture twice: first for a quick overview, and then more slowly while taking notes. Please ensure you allocate sufficient time for this.

    • Work through the following homework assignments

    Always first create a copy with "Copy to Drive" or download the notebooks to work locally on them. Otherwise your progress won't be saved!!

    Week 3

    To-Do (until 12/11/2024)

    Homework :

    • Do days 4 & 5 of the course

    Week 6

    To-Do (Until 03/12/2024)

    Homework:

    • Do days 12 & 13 of the course

    Week 7

    To-Do (Until 10/12/2024)

    Homework:

    • Decide for one of the two final projects (they will be shown on your certificate):

    Week 5

    To-Do (Until 26/11/2024)

    Homework:

    • Do days 8, 9 & 10 of the course

    Week 8

    Note1: Object Oriented Programming is a difficult but powerful concept, please take your time to revise the topic!

    Note 2: If you want to install packages in the environment we set up during the course, you can do so by running %pip installpackage_name (notice the %-sign!) e.g. %pip install PrettyTable in one of your notebook cells after you selected the environment. This is only needed once, after that it can always be reimported with import. If it doesn't work (e.g. in Colab, try !pip installpackage_name with ! instead of %)

    Week 11

    To-Do (Until 21/01/2025)

    Homework:

    • Prepare slides for a five to ten minute presentation of your project

    • There will be room for discussion after each presentation

    • The format should be a project pitch, i.e. an interesting presentation of your vision

      • No code screenshots!

      • You can also talk about possible difficulties and options you tried

    • Upload the slides as PDF in the Mattermost channel before the session

    There will be an additional (optional) session on 18/03/2025, where we will announce the winner of the competition and will take a look at all your finished projects.

    Week 9

    To-Do (Until 07/01/2025)

    Homework:

    • Do days 18 and 19 of the course

    • Days 20-23 will be skipped, you can still do them for practice

    • Don't forget your Final Project

    Watch the videos
  • Do the interactive coding exercises

  • Find the Worklab of Week 2 under Resources


  • Totally Optional

    • Watch lecture 2 of the Havard Python Course:

    For the best learning experience, it's recommended to watch the 1-hour lecture twice: first for a quick overview, and then more slowly while taking notes. Please ensure you allocate sufficient time for this.

    • Work through the following homework assignment

      • https://colab.research.google.com/drive/1vC07xaVcj20v7GC-w4vt-2aoOKaeQKuE?usp=sharing

      • https://colab.research.google.com/drive/1R6tIPUzGGTvAyyFgkr2xRwGotQXPZP_L?usp=sharing

    Always first create a copy with "Copy to Drive" or download the notebooks to work locally on them. Otherwise your progress won't be saved!!

    Watch the videos
  • Do the interactive coding exercises

  • We will skip days 14 & 15, but you can still do them for practice

  • Local Setup Instructions

    Try to follow these instructions as far as possible, but at least step one. In the session we will walk through the setup process.

    • Install Anaconda Distribution and Visual Studio Code

      • (If you are comfortable with the command line, you can just install Miniconda, Navigator and VS Code to save on disk space)

      • https://www.anaconda.com/download/success & https://code.visualstudio.com/

      • Mac users: Move from Downloads to Applications to install VS Code system-wide

    • Launch Anaconda Navigator

      • Under Environments create a new environment, e.g. python_course, with a recent version of python (3.12+)

      • In the package listing for the environment change filter from „installed“ to „all“ then search and install the package ipykernel

      • Under Home launch VS Code (if not available launch it from system)

    • In VS Code:

      • Install the extensions Python and Jupyter (both signed by Microsoft)

      • Create a new file: File > New File > Jupyter Notebook

      • Select Kernel > Another Kernel > Python Environments > python_course or whichever environment you just created

    • Start Coding!


    Totally Optional

    • Watch lecture 6 of the Havard Python Course:

    For the best learning experience, it's recommended to watch the lecture twice: first for a quick overview, and then more slowly while taking notes. Please ensure you allocate sufficient time for this.

    • Work through the following homework assignment

      • https://colab.research.google.com/drive/12EYFmsgPxXLRGyQl5k4Tw88zHNUaVcsN?usp=shar

    Knowledge Cards: Flash Card Tool
  • Digital Pet: Interactive Virtual Companion

  • List out what data the program has to handle (e.g. flash card with front and back, pet stats like hunger) and the matching data structures you need in python

  • Create a flow chart for the program, like you have seen with hangman in the course

  • We will form project groups of ~5 next session


  • Totally Optional

    • Watch lecture 5 of the Havard Python Course:

    For the best learning experience, it's recommended to watch the lecture twice: first for a quick overview, and then more slowly while taking notes. Please ensure you allocate sufficient time for this.

    Watch the videos
  • Do the interactive coding exercises

  • We will skip day 11, but you can still do it for practice


  • Totally Optional

    • Watch lecture 4 of the Havard Python Course:

    For the best learning experience, it's recommended to watch the 1-hour lecture twice: first for a quick overview, and then more slowly while taking notes. Please ensure you allocate sufficient time for this.

    • Work through the following homework assignment

      • https://colab.research.google.com/drive/1VG7z0VEJFEV6x2w1ncvAo5jjGSvQCZDF?usp=sharing

    Always first create a copy with "Copy to Drive" or download the notebooks to work locally on them. Otherwise your progress won't be saved!!

    To-Do (Until 17/12/2024)

    Homework:

    • Do days 16 and 17 of the course

    • Get started with group project (see information on page Final Project)


    Totally Optional:

    • Watch lecture 8 of the Havard Python Course:

    Object Oriented Programming is not an easy concept. The video is almost three hours long!

    For the best learning experience, it's recommended to watch the lecture twice: first for a quick overview, and then more slowly while taking notes. Please ensure you allocate sufficient time for this.

    • Work through the following homework assignment (short)

      • https://colab.research.google.com/drive/1XYmbiRmgRtK9NVm8GtSjKtE--7S2u6qQ?usp=sharing

    Always first create a copy with "Copy to Drive" or download the notebooks to work locally on them. Otherwise your progress won't be saved.

    Week 0
    https://colab.research.google.com/drive/17GV7OC2AS76dHHrgHzQj4UiqJZY7p4XP?usp=sharing
    Week 3 Exceptions - CS50's Introduction to Programming with Pythoncs50.harvard.edu
    https://colab.research.google.com/drive/1Rk6TAFacJJQ4CxM2SF59ezqJj2VkBJ9P?usp=sharing
    https://colab.research.google.com/drive/1pfFP971d3aRHno91KdVTTbywVpUMnMSk?usp=sharing
    Week 0 Functions - CS50's Introduction to Programming with Pythoncs50.harvard.edu

    Final Project

    • The deadline for submitting your well documented project is the 01/03/2025

    • You have to prepare a pitch presentation for the session of 21/01/2025

    • Your submission should tell a story:

      • What is the goal of the project?

      • What is the roadmap to reach that goal?

      • What did you try / did not work / can be improved upon?

    • You have to at least hand in a Jupyter Notebook documenting code snippets (i.e. spotlights on important code parts), also if you are just working with .py files

    • You can alternatively upload a zip file containing the Jupyter Notebook and needed project files (own libraries, ressources, diagrams)

    • In a group project it should become clear, who participated and who worked on what part

    General remarks on the project

    • The project should at least look and feel like the Projects you build in the course

    • Use a GUI

      • E.g. Tkinter (discussed in day 27)

      • Pygame is not difficult either

    Model Notebook

    Please follow the structure of this notebook for your submission (usage of chapters, introductory block, individual contributions, additional resources like diagrams etc.):

    If you want to include graphics or other files, please contain everything in one zip file. The opencampus.sh system only accepts single file uploads. Subsequent uploads will overwrite previous submissions!

    Week 10

    To-Do (Until 14/01/2025)

    Homework:

    • Do days 24 and 25 of the course

    • Take a look at the Worklab (New Year's Resolutions) again, walk through it and optionally improve the functionality

    Week 1 Conditionals - CS50's Introduction to Programming with Pythoncs50.harvard.edu
    https://colab.research.google.com/drive/1o4sAPwnejpXQKuoLrJEktOWMxOUovkwT?usp=sharing
    Logo
    Logo
    Logo

    Use of libraries in general is encouraged!

    Google Colabcolab.research.google.com
    Week 2 Loops - CS50's Introduction to Programming with Pythoncs50.harvard.edu
    Week 4 Libraries - CS50's Introduction to Programming with Pythoncs50.harvard.edu
    Week 8 Object-Oriented Programming - CS50's Introduction to Programming with Pythoncs50.harvard.edu
    Week 5 Unit Tests - CS50's Introduction to Programming with Pythoncs50.harvard.edu
    Week 6 File I/O - CS50's Introduction to Programming with Pythoncs50.harvard.edu
    Logo
    Logo
    Logo
    Logo
    Logo
    Logo