Remember Python fundamentals? Let’s advance to the next level!!
Module 1: Getting familiar with the common IDEs.
- Introduction to Jupyter Notebook and PyCharm
- Getting familiar with the Notebook interface
- Working with Notebook
- Understand the PyCharm environment and features.
Module 2: File management; Common types of files and how to parse them.
- Binary file handling using Pickle.
- Reading png images and conversion to binary using base64
- Importing files
- Parsing CSV files using the readlines method
- Parsing CSV files using the CSV module
- JSON -in everyday life
- Inter-file conversions
- Data display using Tabulate.
- Projects using CSV and Tabulate
Module 3: Error handling and debugging
- Most common exception errors in Python
- Exception Handling using Try, Finally, and Except blocks.
- Resource handling during exceptions
- Use of Python Built-in Exception
- Python Debugger (PDB)
- Practice problems
Module 4: Object-Oriented Programming in Python
- Procedural vs Object-Oriented Programming
- Concept of data hiding
- Class and Objects
- __init__ function
- Use of self in OOPS
- Class Variables vs Instance Variables
- Accessor & Mutator in Python
- Inheritance
- Polymorphism
- Method Overriding
- Special methods
- Assignments
Module 5: Basics of Regular Expressions
- “RegEx” patterns!
- The re Library
- Meta characters
- “RegEx” functions
- Grouping
- Replace with sub () method.
- Use of Special Characters
- Projects
Module 6: Fundamentals of Data Science
- Scientific Computing using “numPy”
- Using functions to create, sort, and split “numpy arrays.”
- Artificial images using “numpy.”
- Interactive data visualizations using “Matplotlib”!
- Understand “DataFrames” in Pandas.
- Accessing elements and operations with “DataFrames”
- Dealing with “NaN” values
- The “groupby” methods in “DataFrames”.
- Projects
Module 7: Fundamentals of Image Processing using “Pillow”
- Importing and reading JPEG images using Pillow
- Converting images to numpy
- Changing basic image attributes-size
- Crop an image, copy and paste.
- Rotate and flip an image!
- Projects
Module 8: Process and Threads in Python
- Concepts of multitasking and parallel processing
- Difference between Process and Thread
- Threading Module
- Multithreading with kwarg and args!
- Synchronization issues
- Deadlock in the Operating System
- Locks, Rlock and Semaphores, and Condition variables
- The “multiprocessing module”
- IPC (Interprocess communication)
Module 9: Basics of Networking
- Understand the network layers.
- Connections
- Sockets
Module 10: Protocols
- Transmission Control Protocol -TCP/IP
- Application Layer Protocol- HTTP
Module 11: Communication Over Networks
- Chat Application
- Sending a Text e-mail using Python
- Sending an HTML e-mail using Python
- Sending Attachments as an E-mail
- Application-based projects
Module 12: Fundamentals of the Internet of Things
- Understand the Architecture
- Discuss the Protocols
Module 13: Web Scraping using Python!
- Understand HTML structure!
- Parsing HTML using BeautifulSoup4
Module 14: GUI with “Tkinter”
- Intro to GUI using “Tkinter”
- Basic definitions and concepts
- Create the First GUI Application
- Creating windows and buttons
- Packer
- Get Input Using the Entry Class
- Frames and Notebook
- Creating a file menu with edit and save options.
- Projects and assessments
Module 15: Fundamentals of Machine Learning
Module 16: Fundamentals of Artificial Intelligence
Open A World Full of Possibilities
Teaching fundamental programming to children, especially at a young age, opens up a world of possibilities for them to develop and prosper. Learning to code encourages critical thinking in children and prepares them for a society that is becoming increasingly tech-driven.