Code Monkey home page Code Monkey logo

python's Introduction

Python

 

Content

Description

This module introduces learners to the fundamentals of programming using Python. Learners will be introduced to programming concepts such as functions and object-oriented programming to make use of reusable blocks of code and models respectively. We also introduce numPy, an important library in data science and machine learning. By the end of this module, learners will be able to write reusable code to analyze data.

No coding experience is needed to take this module.

Learning Outcomes

By the end of the module, learners will:

Week 1:

  1. Write block of code in Python using variables and conditionals
  2. Identify the differences between different data types
  3. Use a loop to go over elements of an array
  4. Identify and resolve errors

Week 2:

  1. Describe the benefits of Object Oriented programming
  2. Write a block of code as a reuseable function
  3. Use manual and automated testing to ensure block of code works as expected
  4. Use the numPy to perform mathematical operations on arrays and datasets

Assignments

There are two assignments (one per week) in this module:

  1. Anagram Checker
  2. Efficacy Analysis of a Hypothetical Arthritis Drug

Module Contacts

Questions can be submitted to the #questions channel on Slack

  • Technical Facilitator:
  • Learning Support Staff:

 

Delivery of module

The module will run sychronously up twice a week on Zoom. The first two days are used as "lectures" and will last a maximum of 3 hours. During this time, the technical facilitator will introduce the concepts for the week. The last two days are used for as optional, asychronous work periods. The work periods will also last for up to 3 hours. During these two days, an technical facilitator or learning support will be present on Zoom to assist learners reach the intended learning outcomes.

The technical facilitator will introduce the concepts through a collaborative live coding session usiing the Python notebooks found under /01_slides. The technical facilitator will also upload any live coding files to this repository for any learners to revisit under /live_code.  

Expectations

Learners are encouraged to be active participants while coding and are encouraged to ask questions throughout the module.

Schedule

The schedule is tentative and may be modified as needed. Learners will be notified of schedule changes.

Day 1 Day 2 Day 3 Day 4 Day 5
Week 1 Lecture 1 (Data Types and Control Flow, Errors) Lecture 2 (Inputs and Strings, Type Conversion) Case Study Work Period 1 Work Period 2
Week 2 Lecture 3 (Functions, Testing) Lecture 4 (Object Oriented Programming, numPy) Case Study Work Period 1 Work Period 2
 

Requirements

  • Learners are not expected to have any coding experience, we designed the learning contents for beginners.
  • Learners are encouraged to ask questions, and collaborate with others to enhance learning.
  • Learners must have a computer and an internet connection to participate in online activities.
  • Learners must have VSCode installed with the following extensions:
  • Learners must not use generative AI such as ChatGPT to generate code in order to complete assignments. It should be use as a supportive tool to seek out answers to questions you may have.
  • We expect learners to have completed the onboarding repo.
  • Camera is optional although highly encouraged. We understand that not everyone may have the space at home to have the camera on.

Resources

Feel free to use the following as resources:

Documents

Videos

How to get help

image


Folder Structure

.
├── 01_slides
├── 02_assignments
├── 03_homework
├── 04_instructors
├── 05_data
├── README.md
└── steps_to_ask_for_help.png
  • slides: Module slides as interactive notebooks (.ipynb files)
  • assignments: Graded assignments
  • homework: Optional homework to practice concepts covered in class
  • instructors: Instructions for the Technical Facilitator on what to teach
  • data: Contains all data associated with the module
  • README: This file!
  • .gitignore: Files to exclude from this folder, specified by the Technical Facilitator

python's People

Contributors

kaylielau avatar rchung95 avatar danielrazavi avatar rohanalexander avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.