sobolevn's personal blog
On good software, mediocre software, and bad software. Also rants about management and development processes.
2019
-
Complexity Waterfall
October 13, 2019 19 mins read 0 comments
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 mypy stubs, plugins, and types
August 31, 2019 8 mins read 0 comments
Have you ever wanted to test type reveal in python? In case you do you would probably need pytest-mypy-plugins for that.
-
Typechecking Django and DRF
August 25, 2019 9 mins read 0 comments
Types are comming to the Django land! This posts announces TypedDjango organisation and stubs for django and djangorestframework
-
6 mac apps that fit everyone
July 19, 2019 2 mins read 0 comments
You often can see lists of awesome mac 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.
-
Really typing Vue
June 29, 2019 12 mins read 0 comments
This is not another "setting up" a new project with Vue and TypeScript tutorial. Let's do some deep dive into more complex topics!
-
From Flow to Typescript. Why?
March 30, 2019 8 mins read 0 comments
We have moved wemake-vue-template from Flow to TypeScript. Everyone, jump on the hype train!
-
Enforcing Single Responsibility Principle in Python
March 10, 2019 21 mins read 0 comments
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.
-
Announcing docker-image-size-limit
March 3, 2019 1 min read 0 comments
Keep an eye on your docker image size, limit, and prevent it from growing too big.
-
Engineering guide to writing correct User Stories
February 23, 2019 12 mins read 0 comments
Agile people are obsessed with writing user stories. And it is 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.
-
Python exceptions considered an anti-pattern
February 9, 2019 17 mins read 0 comments
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!
-
Simple dependent types in Python
January 31, 2019 11 mins read 0 comments
Python typing just got a new shiny feature: Literal types. Let's dive in and get familiar with it.
-
Best engineering practices: how to fix a bug?
January 21, 2019 9 mins read 0 comments
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?
-
Announcing dotenv-linter
January 10, 2019 2 mins read 0 comments
Simple linter for `.env` files. While `.env` files are pretty straight-forward 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.
2018
-
Building blameless working environment
December 13, 2018 6 mins read 0 comments
Blaming people does not work. Let's stop to do that. And find alternative ways to work.
-
1-minute guide to real constants in Python
July 8, 2018 4 mins read 0 comments
How to use final types to make your API better
-
I am a mediocre developer
March 13, 2018 8 mins read 0 comments
I personally know some developers who are very talented and can create wonderful pieces of software with no or little struggle. Because of these gifted individuals, our industry is full of high expectations. But the sad truth is: not everyone is a ninja/guru/rockstar developer.
2017
-
Using better CLIs
October 9, 2017 4 mins read 0 comments
Don't stick to the default CLIs, there are better alternatives!
-
Instant +100% command line productivity boost
August 23, 2017 4 mins read 0 comments
Brief overview of some awesome command line utilities to increase your productivity and make you a happier developer
-
Creating slugs for Ecto schemas
July 19, 2017 6 mins read 0 comments
The term “slug” comes from the world of newspaper production. If you have ever created a simple “Blog” application you have already reinvented it. Let's have a look at how you can use slugs in Elixir apps.
-
Testing Bash applications
July 8, 2017 9 mins read 0 comments
Some time ago I was faced with a task of testing a bash script. At first I decided to use Python unit-tests, however, I was reluctant to bring external technologies to the project. Therefore I had to go with the testing framework written in the notorious bash.
-
Is Yarn still a thing?
June 12, 2017 3 mins read 0 comments
When npm@5 was just released this question was the first one I have googled. No doubts it comes to mind since new npm version introduced a lot of yarn’s features. In other words: should I still use yarn after installing npm@5?
-
Why changes in Phoenix 1.3 are so important?
May 14, 2017 14 mins read 0 comments
Phoenix Framework always has been awesome. But it was never as awesome as the new 1.3 release.
-
Managing Django’s settings
April 1, 2017 4 mins read 0 comments
Managing Django’s settings might be tricky. There are severals issues which are encountered by any Django developer along the way.