Student Onboarding
Highlights
- Asking for Student Information
- Understanding Student Motivation and Background
As each student arrived, I asked for their name, class, school, place of residence, and whether they had any prior knowledge of Python. I also asked them why they chose to join this class.
Introduction to Python Programming
Highlights
- Explaining Software Requirements
- Importance of Authentic Software Sources (Focus: Download Python only from the official website)
At the beginning of the class, I explained the two essential pieces of software needed: Python and an IDE (Integrated Development Environment). I emphasized only downloading and installing Python from the official website.
Environment Setup
Highlights
- Guided Installation of Python
- Creating the Project Folder Structure
- Enabling File Extensions (Focus: Why showing file extensions matters)
We began by installing Python. I asked students to search for "Python download for Windows" and guided them through selecting the official Python website. I personally handled each installation to avoid risks. I created a folder at:
C:\Users\Public\Documents\Python\Day01
Within this folder, I created a file named hello.py with this code:
print("Hello")
I also enabled file name extensions in Windows to ensure students could easily identify their Python files.
Testing the Installation
Highlights
- Running a Simple Python Program
- Verifying Installation via Command Prompt
- Introduction to Notepad for Coding
I opened the Command Prompt to check that Python was installed correctly. Students navigated to the new folder, and I demonstrated editing code using Notepad. This confirmed their installations were functioning.
Maintaining Engagement
Highlights
- Keeping Students Interested During Setup (Important: Tips for keeping energy high during configuration tasks)
The setup process took about 30 minutes, and it was a bit challenging to maintain the students' enthusiasm. To keep them engaged, I explained each step, checked in on their progress, and encouraged questions as we worked.
Self-Introduction: Code as Communication
Highlights
- Introducing Yourself in Python
- Encouraging Personalization in Student Code (Focus: Letting students express themselves programmatically)
After setup, I asked everyone to introduce themselves verbally. I shared how developers can do this in code, showing:
print("My name is Ashok")
print("My age is 35")
print("I am a software architect with 15 years of experience")
print("I like programming languages")
print("I love teaching")
I then asked students to create their own versions in hello.py, encouraging self-expression through code.
Setting Up Visual Studio Code (VS Code)
Highlights
- Installing VS Code
- Adding the Python Extension
- Opening Files and Running Code
- Reinforcement Through Repetition (Important: Practicing the setup process more than once)
I assisted each student in downloading and installing Visual Studio Code (VS Code). We installed the Python extension, opened Python files, and practiced running their code in the console. Some students repeated the process multiple times for better understanding.
Introducing Variables
Highlights
- Using Variables Without Formal Definitions
- Hands-on Activity (Focus: Learning by Doing)
I showed how to use variables without a formal explanation. For example:
name = "Ashok"
school = "ABC School"
age = 8
student_class = "Grade 3: Section C"
Students tried a similar exercise, learning by doing rather than by theory.
Review and Reflection
Highlights
- Student Recap of the Lesson (Encouraging Peer Learning and Reflection)
- Encouraging Questions and Exploration (Focus: Building a Comfort Level With Errors and Curiosity)
After the activity, students took a 5-minute break and then each summarized what they had learned. They also shared any questions, which encouraged a culture of curiosity and peer learning.
Developing Coding Skills
Highlights
- Importance of Daily Practice (Stress: Continuous, consistent practice is key)
- Comfort With Laptop and Typing
- Troubleshooting Errors Independently (Focus: Self-reliance and problem-solving mindset)
I explained the keys to coding proficiency:
- Getting familiar with using a laptop
- Improving typing skills
- Reading and solving errors independently
I stressed the need for daily practice and learning to solve errors on their own.
Homework and Ongoing Support
Highlights
- Assignment Instructions
- How to Seek Help for Issues
- Commitment to Practice Before Next Class (Emphasis: Responsibility and follow-up)
I told students they would receive assignments to complete before next class. If they had trouble opening or running their code, they should message me immediately. I stressed that it is their responsibility to practice both coding and typing before the next session.
Next Steps
Highlights
- Class Recap and Learning Outcomes
- Sharing Visual Aids (Screenshots)
- Distribution of This Week's Assignment
Before the next class, I will:
- Send a recap of what was covered
- Provide screenshots (opening VS Code, navigating folders, creating a file, running code)
- Share this week's assignment