What is a mock? Mock is a category of so-called test doubles – objects that mimic the behaviour of other objects. They are meant to be used in tests to replace real implementation that for some reason cannot be used (.e.g because they cause side effects, like transferring funds or launching nukes). Mocks are used […]
mypy: how to use it in my project? Part 3: kick-ass tools that leverage type annotations
Type annotations are a formalized way to add some extra information about types to your project. Once you get through adding mypy to your project and annotate your code (remember you can do it automatically, at least to some extent) you will find yourself at the ocean of possibilities. This post will show the most […]
mypy: how to use it in my project? Part 2: automatically annotate code
Even after successful integration of mypy with an existing project (see mypy: how to use it in my project part 1), there are tons of code that does not have type annotations. Adding them manually is an unimaginable amount of work. We may do it gradually (as suggested in part 1) or use tools to […]
mypy: how to use it in my project?
Type annotations are like comments Type annotations are a great addition to Python. Thanks to them, finally our IDEs are able to provide good quality autocompletion. They did not turn Python into statically typed language, though. If you put a wrong annotation (or forget to update it after code change), Python will still happily try […]
Code review: how experienced developers do it?
High-quality code review is one of the secrets of the most effective teams. Over the years I noticed a few interesting ways to approach it. Now I share them with you in this article. Recipe 1: Suggesting refactoring in the right moment Seemingly nothing spectacular, though I do not mean excessive code polishing just to […]
Implementing the Clean Architecture with Python – my book is here!
It is my pleasure to announce that my book is finally available to buy. 🙂 https://leanpub.com/implementing-the-clean-architecture Free sample is available there as well. The books focuses on practical aspects and is illustrated with tons of code snippets in Python. Don’t forget to check out a code repository with the project which is illustrating the book: […]
What is asyncio’s ensure_future?
tl;dr ensure_future let’s us execute a coroutine in the background, without explicitly waiting for it to finish. If we need, we can wait for it later or poll for result. In other words, this is a way of executing code in asyncio without await.
The Clean Architecture in Python. How to write testable and flexible code
(Hey! This article is almost 2 years old 🙂 Look here for something about the Clean Archictecture in 2021) An ideal project? If someone asked about the features of an ideal project, responses would surely mention a few specific things. First of all, an ideal project would have a clean codebase that is simple to […]
Is your test suite wasting your time?
This article has been originally included in a PyconPL 2018 conference book. Abstract Nowadays there is no need for convincing anyone about the enormous advantages of writing automated tests for their code. Many developers had an occasion to feel total confidence in introducing changes to their codebases under the protection of vast test suites. The […]
I am writing a book!
You might be wondering why lately there is not much activity on the blog. Frankly, I am currently fully involved in another writing project, namely I am writing a book on the Clean Architecture! Book will be called Implementing Clean Architecture You can sign up for notification when it will be ready if you follow […]