One name == one meaning
Written by Grigory Rechistov in Uncategorized on 27.08.2026. Tags: functional programming, value, single source of truth,
This is a draft I started to write two years ago but never finished. I want to put it out anyway.
This is a draft I started to write two years ago but never finished. I want to put it out anyway.
Recently I encountered a real danger in form of the primitive obsession code smell: https://luzkan.github.io/smells/primitive-obsession.
Using int as function’s return created a confusion about how many many return
values the function may return, and whether or not they could be interpreted as
boolean value …
This is an older inquiry into whether Python as programming language allows undefined behavior (UD) in the same sense that it has in C and C++. That is, UD is cases of erroneous program behavior that is outside of the scope of the language facilities, which may be assumed by …
Written some time in 2023-2024. Finalized in 2026, when I was about to change the job.
Semi-structured thoughts about what a new position should have for me to be worth trying.
A few projects that I completed as part of my academic work, in my spare time or as a part of job interview processes.

Погода и дорога: практически идеальные, скорее “слишком сухо”. +15° вечером, +12° ночью, +20° днём. Солнце всё время, ветер до 10 м/c.
Маршрут: 11 км вперёд, 11 км назад. Из них в каждый день 9 км по грунтовым дорогам, около 1 км по тропам, около 1 км по асфальту.
Стоянка …
Upd 2025-05-03.
Написано на основе предыдущих списков https://atakua.org/w/checklist-example.html и https://atakua.org/old-wp/wp-content/uploads/2014/06/triplist.pdf, адаптировано для ПВД в условиях Стокгольма в мае.
Ожидаемая погода в районе похода: перепад температур от +5 до +25°C, возможны палящее солнце, дождь …
Recently I was asked to review a …
There is a good rule of designing functions (and class methods, which are a variant of functions): a function should do one thing only, and do it well.
A corollary of it is another tactical design rule: a function should have as few arguments as possible. Three is the absolute …
For every measurement, there is at most one (i.e., sometimes there are zero) way to carry it out correctly, and innumerable ways to do it wrong.
I want to share a few pitfalls that I fell into (and probably will do it again in the future) while working on …
Finite state machine (FSM) is both a strict theoretical concept and a practically useful mechanism to build and reason about certain kinds of software. Unit tests is a category of tests that focuses on having the minimum of dependencies when making verifiable assertions about production software’s behavior. Neither is …
Open-Closed Principle (OCP) is one of the SOLID principles. Code should be open to extension …
Let’s see if I can express those patterns found in the GoF book, meant for object-oriented languages …
Publicerad i augusti 2026 :-/
Skaljacka av Gore i storlek XL.
Liten Knipex tång
Knipex tångnyckel 250 mm
https://www.clasohlson.com/se/Knipex-tangnyckel-250-mm/p/41-1789
https://www.amazon.se/T%C3%A5ngnyckel-skruvnyckel-flerkomponents%C3%B6verdrag-250-86/dp/B01H73UPXE
“What/who tests the tests?” This question arises at some point while learning Test-Driven Development (TDD). If every piece of production code ends up tested in the TDD process by construction, does the same apply to the code of the produced tests themselves?
It’s time to go meta.
Before we talk about how a test case could end, let’s recall its canonical structure. It is needed because we will refer to events that can happen in test’s …
The following is quoted from Wilbert McKeachie, McKeachie’s Teaching Tips, an older edition from the 1990-s.
Teachers’ manuals that are provided for many textbooks contain multiple-choice items. You will not be able to rely on a manual as the source of all your questions, because it often will not …
https://www.byggmax.se/verktygstavla-tellbe-p705228#1250=89042
https://www.clasohlson.com/se/Knipex-tangnyckel-250-mm/p/41-1789
https://www.amazon.se/T%C3%A5ngnyckel-skruvnyckel-flerkomponents%C3%B6verdrag-250-86/dp/B01H73UPXE
Början: del 1.
Forumtråden: https://happyride.se/forum/threads/restaureringsprojekt-magura-durin-md100-race.3702162/.
Hade lite tid att ta isär luftkammaren och ta en bild. Elastomererna är helt tillplattade och smulas:

Om man jämför mot en bild funnen i service-PDF:en ser man skillnaden på nya brickor:

De nya verkar vara …
Forumtråden: https://happyride.se/forum/threads/restaureringsprojekt-magura-durin-md100-race.3702162/.
Jag har fått den Magura Durin MD100 Race som en del av en barncykel.

TL;DR: there is a difference between “is proven” and “could not be disproven”.
Let’s say you have a hypothesis A. How do you test it? By doing a set of experiments E₁, E₂, E₃, etc., observing their outcomes and comparing them against predictions made by A.
How do …
Do you write your tests after corresponding production code has been written? Do you run your new test, see it pass, consider the job done and then move on onto the next task?
Here is a thought experiment for you. I hope it will illustrate a problem with this approach …
I came to realisation that certain design principles originally formulated within object-oriented programming (OOP) are applicable to a wider range of programming concepts. Inheritance is one of them.
Bureaucracy has good (wut?) and bad sides.
The good intentions behind of formalizing an activity into a documented process is to reduce variation, reduce possibility for corruption and thus improve scaling. While all good things, there is a price to consider.
Automation has lower flexibility than humans have when it …