Outschool
Open currency, time zone, and language settings
Log In

Python Coding| Project-Based Programming Class for Private Learners!

***available on request*** This year-long project-based Python class is designed for students who wants to learn Python from scratch!
Faruk Hasan
Average rating:
4.8
Number of reviews:
(141)
Popular
Class

What's included

8 live meetings
7 hrs 20 mins in-class hours

Class Experience

*** This class is only for private learners
Undoubtedly, one of the most valuable skills in the future is programming! This course is designed to let you build FOUR real-projects using one of the most popular programming languages, Python.

==========> Reason to choose this class:
Students will be able to- 
** learn project management and coding skills by completing real-world projects- vending machine, pizza ordering system, grading calculator etc.
** develop problem solving skill
** learn how to be more organized in coding- clean coding 
** learn how to translate pseudocode to actual Python code
** debug their code (finding bugs in the their code and fix them)
** enhance coding skill by building projects which aim to provide solution
** learn how to add new features in their projects
** get opportunity to work on an extra project (for advanced students)

==========> List of Projects:
By the end of this course, you will able to demonstrate FOUR completed real- world Python projects (with one optional project for advanced students) using a number of Python programming concepts. If you do well in this course, you will be invited to join the 2nd part, which teaches some advanced concepts of Python with more projects! 

=====> Program a vending machine for a school 
=====> Create a grading calculator that can show the GPA of five or more subjects
(a college grading system project will  be assigned to advanced students)
=====> Create an online pizza store (pickup, delivery, pizza size, toppings, tax, tips, total cost etc.)
=====> Program an ATM that allows to check balance, withdraw and deposit money
=====> An online car ordering system (optional- for advanced students)

To complete the above-mention projects, students will learn a number of Python concepts, debugging and develop problem solving skills which are essential to become a software engineer in real-life! 

==========> List of Concepts:
1. Introduction to Python and some basics of computer programming 
2. Printing texts in Python (4 different ways to print)
3. Primitive data type
4. Non-primitive data type
5. How to write pseudocodes for each of the projects
6. How to translate pseudocodes into actual code
7. Conditional statements (if...elif..else) and nested if conditions
8. Logical Operators (AND, OR, NOT)
9. Function
10. How to debug your code? 
11. Arrays
12. Loops (for loop and while loop)

==========> Why Python?
Many students want to learn Python. And, why not? 
Python is the most popular programming language, and it is often used to build web applications and seeing exponential growth in the field of data science, machine learning, and cybersecurity.  Python is easy to learn compare to other programming languages. But, without building a strong foundation in Python, most of the students struggle to understand the syntax and concepts and eventually give up learning Python. This course is specially designed for students who do not have any coding experience ( may have done some Scratch block coding for game making). They will learn Python from scratch by completing  five real-world projects! Doing these projects will help them realize the powerful application of Python in the real-world, and encourage them to learn advanced Python programming. This advanced course will be offered to students who successfully complete this course. 

In this 8 week course, students will first understand and write simple pseudocode and then start writing Python code . Pseudocode is not a programming language. That means it doesn't have any proper syntax. It is a simple way of describing a set of instructions that will guide students to develop a fundamental understanding of coding. 

==========> First Project: Program a Vending Machine
We have all used vending machines.
But have you ever wondered how this machine works?
How it dispenses the item you want? 
It's the software program installed in the machine that allows you to communicate with it. 
In this course, you will learn how to program a vending machine using Python programming concepts!

However, you will first write pseudocode. pseudocode is not a programming language. That means it doesn't have any proper syntax. It is a simple way of describing a set of instructions that will guide students to develop a fundamental understanding of coding. 

==========> Second Project: School Grading System
In your school, you receive a letter grade(A+, A, B etc.) for every subjects. Some schools also assign a grade point average(GPA) for each subjects. For example, your math grade can be 3.75/4. There are many factors that may affect your grade; for example, quiz, class participation, attendance, tests, projects. How does each of these contribute to your total grade? Well, you will decide how you want to design the grading system using Python programming concepts! 

==========> Third Project: Pizza Ordering System
You may have seen people ordering pizza from an app or a website. 
How does someone choose different options while ordering a pizza?
For example- 
 how can a user add toppings to his/her pizza?  
how to choose delivery or pickup option? 
how to choose the pizza size? 
How does the system calculate the total price and tax?

==========> Forth Project: ATM Transaction in a Bank
When you need cash, you can search for an ATM nearby. In the ATM booth, you can insert your card, enter a PIN and machine dispenses the cash you typed. How do these machines that give you money work and update your bank balance?
 
==========> Course Details:
***Week 1
Students will be introduced to programming language
They will learn- 
** How to add, subtract, multiply, divide numbers in Python (integer numbers and decimal numbers)
** How to use simple conditions(if else) in Python
** How to use conditions to compare two products

==========> Week-2 and Week-3
*** Project- 1: Vending Machine
Students will be Introduced to the Vending Machine project. They will need to write all the steps that are needed to dispense an item from a vending machine.
They will learn- 
** What is a pseudocode and how it is used to design projects
** How to apply the concepts learned from the first two weeks to start writing code for vending machine
**if.. else if... else condition. This is an extension of if...else conditions

==========>Week-4
***Project- 2: Grading Calculator
Students will be introduced to the Grading Calculator project. They will understand how letter grades are assigned for a particular score range. 
They will learn- 
** Logical operator (AND, OR and NOT)
** Local variable 
** How to assign a letter grade for a range of score using the concept of logical operator

==========>Week-5 & Week-6
***Project- 3: Pizza Ordering System
Students will be introduced to the Pizza Ordering System project. They will need to write all the steps needed to complete an order. Order includes taking care of pizza size, pickup or delivery option, crust selection, toppings, tips, tax. 
They will learn- 
** How to organize their code to take care of an order
** How to debug their code (if there is an error)
** How to initialize a variable
** How to add tax and round the total

==========>Week-7 & Week-8
***Project- 4: ATM Transaction in a Bank
Students will be introduced to the ATM Transaction Banking project. They will need to write all the steps needed to complete a transaction. transaction include pincode setup, withdraw money, update balance, deposit cash/check, balance inquiry
They will learn- 
** While loop
** How to use loop to allow customers to confirm their pincodes
** Break statement and how to use break to get out of a loop
** Update customers' account balances in case of a withdraw or deposit

Other Details

Parental Guidance
Please read the instruction carefully before joining the class. *** Notice about the usage of Third-party tool A third-party tool, CodeHS, is going to be used in this class. CodeHS is fully COPPA-compliant. An account creation on CodeHS is not mandatory for this class. Students can still use CodeHS without creating an account to write and save their code. The following paragraph is taken from the CodeHS privacy policy section and by joining this class you give permission that the following data will be collected from the enrolled student(s). "As you use our Website, we may use automatic data collection technologies to collect information about your equipment, browsing actions, and patterns. For example, we may collect: details of your visits to our Website, including traffic data, location data, logs, and other communication data; and information about your computer and internet connection, including your IP address, operating system, and browser type. The information we collect automatically is statistical data and does not include Personal Information. It helps us to improve our Website and to deliver a better and more personalized service, including by enabling us to: estimate our audience size and usage patterns; monitor site performance and uptime; resolving technical issue for Website users; store information about your preferences, allowing us to customize our Website for you; and recognize you when you return to our Website." To learn more- https://codehs.com/privacycenter
Supply List
*Students must have a laptop/notebook/chromebook for this class. Tablets are not recommend for this class as they need to write code using a keyboard. Also, they will need some pencils, erasers and notebooks/loose leaves to take notes. 
* Students should know how to use a browser (Chrome/IE/Safari) as we will be using an online compiler for this class. 
* Please write your code on a device that can be shared (Zoom) with the teacher. Otherwise, if you have an error, it will be difficult for the teacher to fix the defects in your code
* You can use (not mandatory) an additional device to listen to the class and use the other device to write your code
* We will use online compilers  to run our code so no need to download any software for this course
* Students will not need to install any software for this class
External Resources
In addition to the Outschool classroom, this class uses:
  • CodeHS
Joined May, 2020
4.8
141reviews
Popular
Profile
Teacher expertise and credentials
Master's Degree from Loyola Marymount University
Hello future engineers and scientists!

I'm Faruk, a passionate Software Test Engineer (SDET) based in New York, and I'm thrilled to be your STEM instructor. With over 12 years of experience, I bring real-world insights into the classroom, making learning an exciting journey.

About My Classes:

=====> Python Classes:
1. [Become ZERO to HERO in Python Coding| A Project-Based Programming for Beginners!](https://outschool.com/classes/become-zero-to-hero-in-python-codingor-a-project-based-programming-for-beginners-P9F2e3Bn#usmdgGriHQ)
   - Dive into the basics of Python through hands-on projects.
   - Lay a solid foundation for your coding journey.

2. [Level-1| Coding in Python| Real-World Project Experience for Beginners!](https://outschool.com/classes/level-1or-coding-in-pythonor-real-world-project-experience-for-beginners-VMdtgqom#usmdgGriHQ)
   - Explore the world of coding with real-world projects.

3. [Level-2| Coding in Python| Advanced Real-World Projects for Beginners!](https://outschool.com/classes/level-2or-coding-in-pythonor-advanced-real-world-projects-for-beginners-y7Z9z1yy#usmdgGriHQ)
   - Take your Python skills to the next level with advanced projects.

4. [Level-3| Coding in Python| Algorithm Design Techniques and Logics!](https://outschool.com/classes/level-3or-coding-in-pythonor-algorithm-design-techniques-and-logics-T3QwCy9C#usmdgGriHQ)
   - Master algorithm design techniques and logics in Python.

And more....

=====> Java Classes:
1. [Level-1 | Java Coding Made Easy| Project-Based Flex Class for Beginners](https://outschool.com/classes/level-1-or-java-coding-made-easyor-project-based-flex-class-for-beginnersor-1qvH4cQK#usmdgGriHQ)
   - Dive into Java coding with a project-based approach.

2. [Part II Java Programming: Algorithm Design and Its Application in the Real-World](https://outschool.com/classes/part-ii-java-programming-algorithm-design-and-its-application-in-the-real-world-vduCnyxA#usmdgGriHQ)
   - Explore advanced algorithm design in Java.

3. [Level-3| Java Object Oriented Programming| Software Test Engineering Projects](https://outschool.com/classes/level-3or-java-object-oriented-programmingor-software-test-engineeting-projects-Vxc4gAQ0#usmdgGriHQ)
   - Learn Java Object-Oriented Programming through real-world projects.

=====> Scratch Classes:
1. [Advanced Scratch Programming: Let's Create a Space Invaders Game!](https://outschool.com/classes/advanced-scratch-programming-lets-create-a-space-invaders-game-7mnhPtYn#usmdgGriHQ)
   - Unlock the secrets of Scratch programming by creating a Space Invaders game.

=====> Math Classes:
1. [Math| Algebra 1| Designed for Middle Schoolers!](https://outschool.com/classes/mathor-algebra-1or-designed-for-middle-schoolers-DXZOgXr9#usmdgGriHQ)
   - Explore Algebra 1 in a way designed just for middle schoolers.

=====> Flex Classes:
1. [Level-1 | Java Coding Made Easy| Project-Based Flex Class for Beginners](https://outschool.com/classes/level-1-or-java-coding-made-easyor-project-based-flex-class-for-beginnersor-1qvH4cQK#usmdgGriHQ)
   - Flexibility meets Java coding in this project-based class.

2. [Python Made Easy| Project-Based Python Coding| Beginners Flex Class| Level 1](https://outschool.com/classes/python-made-easyor-project-based-python-codingor-beginners-flex-classor-level-1-yfIW7oem#usmdgGriHQ)
   - Make Python coding easy with this flexible and project-based class.

Education:
- Bachelor's degree in Electrical Engineering from Queen Mary, University of London, England, UK (2011).
- Master's degree in Electrical Engineering from Loyola Marymount University, Los Angeles, CA, USA (2016).

Professional Background:
As a Software Test Engineer, I work with sophisticated technology, delivering outstanding tech services to major companies. My experience allows me to teach using real-world scenarios, providing you with insights into the IT industry's state-of-the-art technologies.

Hobbies:
I'm not just passionate about tech; I love traveling, cycling, reading books, writing blogs, and playing video games. My diverse interests inspire creativity in my classes, making learning an exciting and dynamic experience.

Join me on

 this STEM adventure, where we'll explore, learn, and have a great time together! 🚀✨

Reviews

Live Private Class
Share

$520

for 8 classes
1x per week, 8 weeks
55 min

Completed by 1 learner
Live video meetings
Ages: 9-18

This class is no longer offered
About
Support
SafetyPrivacyCA PrivacyLearner PrivacyManage Data PreferencesTerms
Financial Assistance
Get The App
Download on the App StoreGet it on Google Play
© 2024 Outschool