Python fundamentals
Language basics
Variables, data types, conditionals, loops, and functions. This is the starting point for those who have never programmed and also for those coming from another language who want to organize concepts. The work relies on short, repeated exercises, because syntax is learned by writing, not by reading.
You should be comfortable using a computer; no prior programming experience is required.
Code practice
Guided exercises
Solving small problems, reading errors, and fixing them without constant help. This part is not a separate course but the way to sustain what has been learned: tasks are proposed, solutions are reviewed, and there is discussion of why one version works better than another. Consistency matters more than speed.
It serves those who have already seen the fundamentals and need to stop copying examples in order to start writing their own.
Web application development
From script to web
How you go from a loose file to an application with routes, forms, and server responses. You work with HTML, HTTP requests, and the logic that connects a view to the data. The goal is to understand the full path of a request, not to memorize shortcuts from a framework.
Suitable for those who already handle functions and want to build something that other people can use in the browser.
Django and Flask
Frameworks
Two different approaches to building applications with Python. Django brings structure, administration, and conventions that help when the project grows; Flask starts from a minimal core and forces you to decide every piece. They are compared by maintenance, team size, and type of application, without declaring an absolute winner.
Recommended after gaining some practice with the language and with basic web logic.
Databases
Modeling and queries
What a table stores, what a key is, and how the entities of a project relate to each other. Practice uses simple cases, such as registering courses and students, to show where a relational database brings order and where a simpler solution is enough. Common modeling mistakes are also reviewed.
Useful for those who already build applications and need to persist information without duplicating or disorganizing it.
Task automation
Repetitive work
Renaming and sorting files, consolidating spreadsheet data, or generating periodic reports with standard libraries. This is the practical application that usually motivates beginners, and also the one that demands the most care: validating data before processing it prevents silently incorrect results.
It does not eliminate all manual work, but it clearly shows where the effort of programming is justified.