You are on page 1of 1

This is how computers communicate with

Network Programming
each other. (docs)

Web App Testing Selenium

This is how computers communicate with Exploitation and Explore penetration testing techniques using
IP Addresses and Sockets
each other. (docs) Penetration Testing tools like Metasploit and Burp Suite.

Leverage Python to gather and integrate


Client-Server Architecture Understand the client-server model. Threat Intelligence threat intelligence feeds for improved
cybersecurity awareness.

Integrate Python into digital forensics


Connection-oriented and connectionless
TCP/UDP Digital Forensics workflows, automating tasks and enhancing
communication. (docs)
efficiency.

Explore web communication by creating


HTTP and Web APIs Security & Encryption SSL/TLS, Hashing, Cryptography, SSL libs
servers, clients, and using RESTful APIs.

Explore the asyncio library for asynchronous


Packet Manipulation Wireshark, Packet Crafting, Scapy Async IO
programming. (see Python Basics)

Concepts
Security & Encryption SSL/TLS, Hashing, Cryptography, SSL libs

Explore the asyncio library for asynchronous


Async IO
programming. (see Python Basics)
Cyber Security

Understand the purpose and configuration


Firewalls
of firewalls. (docs)

Concepts

Understand the main game loop for Implement collision detection between
Game Loop Collision Detection
continuous execution. game objects

Manage different game states (menu,


Sprites and Surfaces Learn about 2D graphics components. Game States
Twisted Twisted Documentation gameplay, etc.)

Regular Expressions A way to match string patterns (docs) Integrate sound effects and background
Event Handling Capture user input events. Sound and Music
FastAPI FastAPI Documentation music. (docs)

Programmatically scan a web page and Implement effects using particle systems. Game Dev Basics
Web Scraping Particle Systems
extract information (docs) (i.e. Smoke, fire, rain)
Fameworks

Scheduling How to schedule tasks. (docs) Create animated sprites and more complex
Advanced Sprites
game objects.

Network Programming Game Development


Working with APIs Calling APIs and get data from them. Explore basic integration with OpenGL for
OpenGL Integration
advanced graphics. (docs)

PyGame 3D Build 3D games with PyGame. (docs)

Automation
PyGame

Entity-Relationship Model A visual representation of data entities and Relational Databases for storing more
SQL
(ER Model) their relationships. inter-connected data.
An extension for quickly building The flow of communication
Flask-RESTful Request-Response Cycle
RESTful APIs with Flask. (docs) between a client and a server

Integrates SQLAlchemy for database Suitable for document-based storage


Database Schema Design NoSQL
support in Flask applications.(docs) for fasted retrieval.
Integrates SQLAlchemy for database
Flask-SQLAlchemy HTTP Methods GET, POST, PUT, DELETE
support in Flask applications.(docs)

Concepts
Improving query performance by
Variables and Data Types Indexing
int, float, bool, str, None creating indexes on specific columns.
Flask is a micro-framework that focuses on simplicity and extensibility. Indicate the result of the HTTP request
Status Codes
(e.g., 200 for success, 404 for not found).
It doesn't come with built-in features like Django, allowing developers to choose
their components.

Data Structures list, set, dict, tuple A powerful SQL toolkit and Object-Relational Concepts
SQLAlchemy
Mapping (ORM) library for Python.(docs)
Understanding the HTTP/HTTPS protocol is fundamental for
Flask communication between clients and servers.

A fast, powerful, flexible, and easy to use


Control Flow if-elif-else Pandas open source data analysis and manipulation
tool, built on top of Python.
An open-source platform to
HTTP/HTTPS PyMySQL programmatically author, schedule,
A powerful toolkit for building Web APIs in
Django REST Framework and monitor workflows. (docs)
Django applications.(docs)
Loops for, while, break, continue Libraries

Psycopg2 PostgreSQL adapter for Python. (doc)


The Object-Relational Mapping system for
Django ORM
interacting with databases. (docs) args & params, *args & **kwargs,
Choosing meaningful and consistent Functions
Resource Naming return Data Modeling
names for API endpoints.

PyMongo Python driver for MongoDB. (doc)


Django is a high-level, full-stack web framework that follows the
"batteries-included" philosophy. It includes an ORM, admin interface, Designing API routes to handle Create, Comprehension [ my_func(i) for i in my_list ]
CRUD Operations
and other built-in features for rapid development. Read, Update, and Delete operations.
collection of open-source software utilities
Retrieving data from different sources Hadoop that facilitate using a network of many
Extract
class, __init__(), self, such as databases, APIs, or files. computers to solve problems involving
Understanding the levels of RESTfulness Object Oriented Programming inheritance, overriding, massive amounts of data and computation
Richardson Maturity Model
Django in API design. public, _protected, __private (doc)

Transform Cleaning, enriching, or restructuring data


open(), context managers, Libraries
File I/O
Designing a good API is a key to implementing a maintainable and extendable
We don’t have to write everything from scratch!
backend.
There are amazing libraries and frameworks to ease the process.
Storing the transformed data in a target
Load
destination.
Modules & Packages __init__.py, pip
Database Systems
Web Frameworks RESTful API Design
ETL Concepts
Thread, ThreadPool,
Parallel Programming
MultiProcessing

A compact, URL-safe means of


JWT (JSON Web Tokens) Async Programming
representing claims between two parties. Async IO
An open-source platform to programmatically
Apache AirFlow author, schedule, and monitor workflows.
(docs)
An open standard for access delegation,
OAuth
commonly used for user authentication.
An open-source unified analytics engine for
Basics Apache Spark
large-scale data processing. (docs)

Determining what actions a user is


Authorization
allowed to perform.
An open source unified programming model
Apache Beam to define and execute data processing
pipelines, including ETL, batch and stream
processing (doc)
We shouldn’t blindly expose our APIs to others. We should make sure that they are
authenticated and authorized to perform different actions on our system.
Tools & Frameworks
Backend Engineering
Data Engineering
Auth
ETL (Extract, Transform, Load)

HexCoder Python
Learning
Paths
A powerful library for data manipulation and
Pandas
analysis. (doc)
Understand basic GUI components such as
GUI Components Concepts Widgets, Objects, UI, QMake, QSS, QRC
labels, buttons, and entry widgets.

Fundamental package for scientific


NumPy
computing in Python.(docs)
Learn about geometry managers for Learn to design GUIs visually using Qt
Layout Management Qt Designer
organizing GUI elements. Designer.

Data Analysis
Implement event-driven programming for Explore the signal and slot mechanism for
Event Handling Signal-Slot
user interactions. event handling.

01. Basics 01. Basics


A 2D plotting library for creating static,
Matplotlib
interactive, and animated visualizations. (doc)

A statistical data visualization library


Custom Widgets Create and use custom widgets. Custom Widgets Create and use custom widgets. Seaborn
based on Matplotlib. (docs)

Dialogs and Pop-ups Implement modal and non-modal dialogs. UI Models Use data models to manage data.
Data Visualization

Canvas Widget Explore drawing on a canvas widget. Painter Explore drawing on a canvas widget.

An open-source machine learning


Tensorflow
framework. (docs)
02. Advanced 02. Advanced

An open-source machine learning


PyTorch
framework developed by Facebook. (docs)
Get started with Tkinter, the standard GUI toolkit for Python, Get introduced to PyQt as an alternative to Tkinter and learn to design
and learn the basics of creating simple desktop applications. GUIs visually using Qt Designer.

Machine Learning

Tkinter PyQt

Data Science

Understand principles of UI/UX design.


User Interface (UI) Design Kivy Basics Basic principles of Kivy (docs).
(course)

Implement responsive design for Learn to use the KV language for


Responsive Design Kivy Language
various screen sizes. declarative UI design.

Learn about choosing suitable Learn how to use Kivy to build Android and
Color Schemes and Themes Mobile apps with Kivy
color schemes and themes. iOS apps (docs).

Kivy Storage Store data within the Kivy app. (docs)


Incorporate design principles into your GUI applications to create
visually appealing and user-friendly interfaces.

Kivy is another GUI framework that you can use to build multi-touch GUIs, especially for
Concepts touch screens.

Kivy
GUI

You might also like