Skip to content

A Practical Journey into Modern Python

Welcome! This project is more than just a collection of code. It's a living journal of a journey: the story of an experienced software engineer from the statically-typed world of Java and Scala diving headfirst into the dynamic, rapidly-evolving ecosystem of modern Python.

Author's Note

My name is Jegors. As a developer with a background in the JVM ecosystem, I needed to get up to speed with Python for a new challenge. I believe the best way to learn is by building, so I turned to the excellent projects on the Hyperskill platform to guide my learning.

But learning a language is only half the story. The real challenge was navigating the modern Python development landscape. So much information online is outdated. This project became my way of answering the question: "How would you build a Python project with best practices in 2025?"

The Goal: Beyond Syntax

This portfolio has two primary goals:

  1. A Personal Learning Ledger: To document the process of not just learning Python's syntax, but mastering its contemporary toolchain. This includes everything from dependency management with uv to code quality with ruff and static analysis with mypy.

  2. A Modern Guide for Learners: To serve as a practical, up-to-date resource for anyone starting their Python journey today. Instead of abstract examples, this site breaks down real, working projects and explains the "why" behind the technical decisions, refactoring processes, and tool choices.

What You Will Find Here

This site is structured to help you explore different facets of the development process:

  • Projects: Dive into detailed case studies of each application. Each page explores the project's goals, the refactoring journey from a simple script to a robust application, and the key Python concepts illustrated.

  • Development Setup: Explore the "how" of the project. This section explains the modern tooling used, why each tool was chosen, and how they fit together to create a professional development environment.

  • Blog: Read articles and thoughts on broader software development topics, lessons learned, and comparisons between the Python and JVM ecosystems.

Thank you for visiting. I hope you find this journey as insightful as I have.