Typeclasses is a new (but familiar) idea of how you can organize behavior around your types
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!
This post will guide newcomers through the high waters of Higher Kinded Types and explain how they work and how they can be used.
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.
Hello, everyone! Let me introduce a list of the best open-source findings for March 2020. If you wa...
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.
Sometimes your code has to take different paths based on the external environment. Make sure that your coverage follows it smoothly.
Originally published in my blog: https://sobolevn.me/2020/02/typed-functional-dependency-injection D...
Hello, everyone! Let me introduce a list of the best open-source findings for November 2019. If you...
Originally published in my blog: https://sobolevn.me/2019/10/testing-django-migrations Dear internet...
Hello, everyone! Let me introduce a list of the best open-source findings for October 2019. If you...
Originally published in my blog: https://sobolevn.me/2019/10/complexity-waterfall When talking about...
Happy #Hactoberfest, everyone! 🎃 Let me introduce a list of the best open-source findings for Septem...
Originally published in my blog: https://sobolevn.me/2019/08/testing-mypy-types Have you ever tried...
Happy autumn, everyone! 🎃 Let me introduce a list of the best open-source findings for August 2019....
Originally published in my blog: https://sobolevn.me/2019/08/typechecking-django-and-drf As you have...
You often can see lists of awesome apps that you are not going to use or ones that just do not fit you. This one is different. This list contains simple, yet very powerful productivity boosters that totally fits everyone.
This is not another "setting up" a new project with Vue and TypeScript tutorial. Let's do some deep dive into more complex topics!
We have moved wemake-vue-template from Flow to TypeScript. Everyone, jump on the hype train!
Agile people are obsessed with writing user stories. And it a very powerful instrument indeed. But, from my practice a lot of people are doing it wrong. Let's learn how to do it correctly. Including proper verification and mapping to the source code.
Single Responsibility Principle (or SRP) is one of the most important concepts in software development. The main idea of this concept is: all pieces of software must have only a single responsibility.
Limit your docker image size, prevent it from growing too big
You might be wondering how do exceptions are an anti-pattern and how does this relate to typing at all? Well, let's find out!
Python typing just got a new shiny feature: Literal types. Let's dive in a get familiar with it.
The important thing is: how do you respond to the bugs you and other people have created? What do you do to prevent them from happening in the future? How do you even know that this buggy situation even exist?
Managing Django’s settings might be tricky. There are severals issues which are encountered by any Django developer along the way.
I have heard a lot of rants about inflation of terms like "junior", "middle", and "senior" developers. So, I have decided to conduct a small and simple case study on these titles for the last 20 years. I would also like to invite you to express your opinion in the comments.
Simple linter for `.env` files. While `.env` files are very simple it is required to keep them consistent. This tool offers a wide range of consistency rules and best practices. And it integrates perfectly into any existing workflow.
Blaming people does not work. Let's stop to do that. And find alternative ways to work
How to use `final` types to make your API better