# Python and Pythonic Python
# ClassWorks
# 0. Introduction: What is Python? What can we do with Python?
Recommended local Installation
- Python (opens new window) ( recommands Python Version 3.10 ++)
- IDLE for Python IDE (alreadys installed with Python)
- (Optional) IDE (For example, VS Code (opens new window))
# 1. HelloWorld (print)
# 2. Variable, Type of Variable, Operator
# 3. None value
# 4. Casting
# 5. I/O
# 6. f-Strings
# 7. 1st Exercises
# 8. Boolean
# 9. If and Else
# 10. List and List's method
# 11. Loop: While loop
# 12. Loop: For loop
# 13. 2nd Exercises
# 14. Function
# 15. Nested List (List in List)
# 16. Dictionary
# 17. Data container (Dictionary for data/object representation)
# Pythonic Python
# Pythonic Way of Coding
Object-Oriented Programming Paradigm
- [Python: OOP - Class and Object]
- [Python: pass keyword]
- [Python: OOP - Class Attribute and Object Attribute]
- [Python: OOP - Static method] -> [Python: OOP - Class method]
- [Python: OOP - Inheritance]
- [Python: OOP - Override]
[Python: String and List Slicing]
[Python: List Comprehension]
[Python: Dictionary Comprehension]
Functional Programming Paradigm
- [Python: Functional Programming - Pure Function and lambda]
- [Python: Functional Programming - Side Effects]
- [Python: map, filter, sorted and reduce]
- [Python: Decorators]
Type Hinting (Requires OOP and Functional Programming)
- [Static type VS Dynamic type]
- [Python: Type Hinting - Basic type and Class]
- [Python: Type Hinting - Function Parameter Type Hinting and Callable]
- [Python: Type Hinting - OOP Polymorphism]
- [Python: typing module]
- [Python: Overload]
- [Python: Generic]
[Python: Error Handling - Try&Except and raise]
[Python and Computer: Threading]
[Python: Generators and yield]
# Advanced Drawing
# Requirement
Recommended local Installation
- Python (opens new window)
- IDE (For example, VS Code (opens new window))
# Workshops
# Math Problems & Data structures and Algorithms
# Workshops
- Is that Prime number? -> Prime number between 1-100
- Fibonacci Number -> Fibonacci Series
- [Data Structure: Stack]
- [Data Structure: Quene]
- Bubble sort
- Pyramid
- Stairs -> Arithmetic progression -> Pyramid -> [Inverted Pyramid]
- Divide-and-conquer algorithm
- Sum -> Fibonacci number -> [Binary Search]
# Microcontroller (ESP32)
# Requirement
Recommended local Installation
- Thonny (opens new window)
- [Hardware List]
- [Understand Basic Circuit and Breadboard]
- [Switch]
- [Understand ESP32 and Micropython]
- [Flash ESP32]
- [ESP32 LED On/Off]
- [LED 12V]
- Relay 5V with LED 12V
# Workshops
- Digital Circuits
- [Boolean functions and Sum of Product (SOP)] -> [Decoders and Encoders] -> [8-LED running light circuit with ESP32 and 3-bit Decoder]
# Junior Cryptographer
# Requirements
- [Encoding and Decoding - base64 and utf-8]
- [Encryption and Decryption (concept)]
# Workshops
- [Symmetric Key Encryption]
- [Password Hashing]
- [ASymmetric Key Encryption / Public Key Encryption]
# Junior Data Engineer
# Requirement
Recommended local Installation
- Python (opens new window)
- IDE (For example, VS Code (opens new window))
# Workshops
# Junior Data Scientist
# Requirement
There are many ways to do this workshop. You can use Cloud servies or install locally.
Recommended Cloud service
Recommended local Installation
- Python (opens new window)
- IDE (For example, VS Code (opens new window))
- pipenv
- Dependencies
pipenv install --python 3.10
pipenv install numpy==1.22.3
pipenv install pandas==1.4.2
pipenv install matplotlib==3.5.1
pipenv install ipykernel==6.13.0
1
2
3
4
5
2
3
4
5
- Computer: Basic Commands (Both Powershell and Terminal)
- Python: Python Package Manager - pipenv
- Basic Graph with Matplotlib
# Workshops
- How satisfied are you? (Data Distribution)
- I know the future! (Linear Regression with Normal Equation)
# Level up! Junior Data Engineer & Data Scientist
# Requirements
- Junior Data Engineer
- Junior Data Scientist
- [Python: String and List Slicing]
- [Basic Pandas]
# Workshop(s)
- [Covid analysis]