Python Tutorial #21: Logging and Debugging — Professional Python

In the previous tutorial, we learned about databases with SQLite and SQLAlchemy. Now let’s learn about logging and debugging — the professional way to understand what your program is doing. If you still use print() to debug your code, this tutorial is for you. By the end, you will know how to use Python’s logging module, debug with breakpoint(), and profile your code. Why print() is Not Enough Every beginner uses print() for debugging: ...

April 30, 2026 · 8 min

Python Tutorial #20: Databases — SQLite and SQLAlchemy

In the previous tutorial, we learned about HTTP requests and APIs. Now let’s learn about databases — how to store, read, update, and delete data using Python. We will cover two approaches: Python’s built-in sqlite3 module (no installation needed) and SQLAlchemy (the most popular Python ORM). By the end of this tutorial, you will know how to build data-driven applications. What is SQLite? SQLite is a database that stores everything in a single file. It comes built into Python — no installation, no server, no configuration. It is perfect for: ...

April 30, 2026 · 8 min

Python Tutorial #19: HTTP and APIs — Requests, httpx, and REST

In the previous tutorial, we learned about async/await and asyncio. Now let’s learn about HTTP requests and APIs — how to call REST APIs, send data, handle responses, and build a reusable API client. Almost every Python application talks to an API at some point. Weather data, payment processing, social media, databases — they all use HTTP. By the end of this tutorial, you will know how to make HTTP requests, handle errors, and build a clean API client. ...

April 29, 2026 · 8 min

Python Tutorial #18: Async/Await — Asynchronous Python

In the previous tutorial, we learned about testing with pytest. Now let’s learn about async/await — Python’s way to run multiple tasks at the same time without threads. Async programming is one of the most powerful features in modern Python. It is used in web frameworks (FastAPI), HTTP clients (httpx), database drivers, and many other libraries. By the end of this tutorial, you will understand how async works and when to use it. ...

April 29, 2026 · 10 min

Jetpack Compose Tutorial #16: Custom Layouts and Canvas — Drawing Your Own Components

Sometimes Column, Row, and Box are not enough. You need a circular progress bar. A custom chart. A drawing canvas. A shape that doesn’t exist in Material Design. That is when you use Canvas — Compose’s drawing API that lets you draw anything pixel by pixel. What is Canvas? Canvas is a Composable that gives you a blank area to draw on. You can draw shapes, lines, arcs, text — anything. ...

March 24, 2026 · 7 min