Before ParamSpec (PEP612) was released in Python3.10 and typing_extensions, there was a big problem in typing decorators that change a function’s signature.| sobolevn’s personal blog
Today I am going to introduce a new concept for Python developers: typeclasses. It is a concept behind our new dry-python library called classes.| sobolevn’s personal blog
Today I am going to discuss quite a new idea for Python users, an idea of making tests a valuable part of your application.| sobolevn’s personal blog
dry-python/returns@0.15 is released! And it means that now anyone can use our Higher Kinded Types emulation in their projects.| sobolevn’s personal blog
In the last few years async keyword and semantics made its way into many popular programming languages: JavaScript, Rust, C#, and many others languages that I don’t know or don’t use.| sobolevn’s personal blog
Recently I had to add python3.8 for our Python linter (the strictest one in existence): wemake-python-styleguide. And during this straight-forward (at first look) task, I have found several problems with test coverage that were not solved in Python community at all.| sobolevn’s personal blog
Dependency injection is a controversial topic. There are known problems, hacks, and even whole methodologies on how to work with DI frameworks.| sobolevn’s personal blog
When talking about “bad code” people almost certainly mean “complex code” among other popular problems. The thing about complexity is that it comes out of nowhere. You start your fairly simple project, then one day you find it in ruins. And no one knows how and when it happened.| sobolevn’s personal blog
Dear internet,| sobolevn.me
Almost every week I accidentally get into this logging argument. Here’s the problem: people tend to log different things and call it a best-practice. And I a...| sobolevn.me