RSSAmplifier

Blog

sobolevn’s personal blog

On good software, mediocre software, and bad software. Also rants about management and development processes.

sobolevn.meRSS feed ↗10 posts

Latest posts

Python ParamSpec guide

Newly released feature in PEP612 allows you do a lot of advanced typing things with functions and their signatures

Typeclasses in Python

Typeclasses is a new (but familiar) idea of how you can organize behavior around your types

Make tests a part of your app

Tests can be generated, tests can be shipped by library authors directly to end-users, tests can be encoded into the body of your app. Let's follow this path!

Higher Kinded Types in Python

This post will guide newcomers through the high waters of Higher Kinded Types and explain how they work and how they can be used.

How async should have been

Your sync and async code can be identical, but still, can work differently. It is a matter of right abstractions. In this article, I will show how one can write sync code to run async programs in Python.

Do not log

A lot of developers consider logging as a silver bullet to fix all things at once. And they don't realize how hard it actually is to work with logging properly.

Conditional coverage

Sometimes your code has to take different paths based on the external environment. Make sure that your coverage follows it smoothly.

Typed functional Dependency Injection in Python

Dependency injection is a controversial topic. There are known problems, hacks, and even whole methodologies on how to work with DI frameworks. It is not the case when using functional approach: which is simple and explicit.

Complexity Waterfall

The thing about complexity is that it comes out of nowhere. One day you start your fairly simple project, the other day you find it in ruins.

Testing Django Migrations

When migrating schema and data in Django multiple things can go wrong. It is better to test what you are doing in advance.