tazlog
229 subscribers
40 photos
1 file
11 links
Stuff that's on my mind (by @tazjin)
Download Telegram
Yesterday evening we got back home from a short vacation in Grozny, the capital of Chechnya. For many people the main association they have with Chechnya is the brutal war that was fought there in the early 2000s, but those times are long gone and the region is now stable and - especially in Grozny - very safe.

Grozny is a fairly small city, with a population of only around 320 000, but it feels far more lively than that. It's compact (i.e. walkable!) with the centre consisting mostly of the two main streets (Vladimir Putin Avenue, and Sheikh Ali Mitayev Street), and some pedestrian areas in between. At the very centre is the mosque "Heart of Chechnya", with a 1:1 scale replica of the Sahabi Tree (which initially fooled us!), and across the river a complex of high-rises (including our hotel).

During our short trip we did not get around to exploring much more than the centre. We did not go to the mountains of Chechnya, heck, we didn't even really go to the southern parts of the city. Even within just its centre, Grozny packs quite a punch though with lots of things to see, so we didn't feel like we missed out much.

The people of Chechnya are very friendly and proud of their nation. Everyone we asked happily gave us recommendations for things to see and do, and especially recommendations for what to eat! I went to the local banya (of course!) and even ended up speaking German to a new Chechen friend who had lived in Germany for ten years (and got a staff-банчик hat out of it, but that's another story)! Right before we headed back home, a very energetic taxi driver (короче - it's a long story) piled another ton of things onto our Chechnya-todo-list, so we'll have to return and do more of that.

There's one thing everyone very clearly agreed on: Grozny should be visited during summer! While I quite enjoyed the winter vibes, people are very insistent that everything is a lot nicer during summer there, and with how much I liked this trip it's a no-brainer to plan to head back then.
The culinary experiences of Chechnya are worth a second post. Already on the plane we met someone from Grozny who told us that it's necessary to try Жижиг-галнаш (Zhizhik-galnash), the Chechen national dish, at one of the restaurants of the same name.

We were hesitant, because on most pictures it does not look particularly appetizing. We went for it anyways and were positively surprised! One of the little bowls you see on the pictures contains broth from the meat preparation (which you sip with the meal), the other one is an extremely garlicky sauce (which you dip the various bits in). When we first tried this meal, we had just walked for what felt like 20 kilometres in approximately -5 C weather, and it became very clear why this particular meal is so popular here.

The first time (on Friday) we tried beef and chicken, the second time (on Sunday) we tried Ба1ар-галнаш (Ba'ar-galnash). This second one is a stomach (probably of sheep?) stuffed with ground offals. You might even say it's a sort of Chechen haggis! Again, despite it's unappealing appearance this was quite a tasty dish.

This was served together with черемша, a Chechen preparation of ramsons. Think of it as leaves that taste like garlic, also pretty good!

As mentioned in the other post, I went to one of Grozny's public banyas (@groznenskie_bani). Chechnya is a Muslim republic and the sale of alcohol is strictly limited (only in hotel bars, and in one supermarket from 9AM-10AM), so whereas in Moscow beer and vodka are free-flowing in banyas, the Chechens stick to lemonade and ... cheese water. I wasn't aware that this is a thing (apparently it's called whey in English), and the way it was explained is that it is literally the liquid wrung out of cheese cloths while making cheese.

It tasted exactly like cheese in water form. Honestly, not horrible, but I'm gonna stick to other banya drinks.

Overall Chechen cuisine is interesting and tasty, harboring strange surprises like cheesey water and salty tea, but definitely worth exploring!
Just finished an almost two hour (!) talk on the topic of "What is Nix?", featuring a sort of introductory overview over how Nix packages work and so on.

It is already available online (in Russian): https://www.youtube.com/watch?v=0Lhahzs-Wos

The idea of the talk was to give a fairly short initial "presentation" part to get people interested in why they should care about Nix (which could probably stand on its own without the rest of the presentation), followed by a more hands-on "workshop-style" part in which I tried to pedagogically show the concepts of Nix from scratch.

Thanks to @progmsk for inviting me!

That was a lot of work, time to chill.
If you're curious about getting started with Nix/NixOS, and happen to be located in Moscow, join us this Saturday (the 18th) for a NixOS install party at @undefspace!

(Experienced Nix-users are also welcome, it can't hurt to have more people on hand to answer questions and guide beginners!)

More info in Russian: https://progmsk.timepad.ru/event/2358560/

More info in English: https://discourse.nixos.org/t/2023-03-18-nix-os-install-party-in-moscow/26334
До начала Сигнала в этом году осталось совсем немного времени. Кто из моих дорогих подписчиков пойдет?

Я вот подготовил Плейлист на Яндекс Музыке с музыкой всех артистов, которые в этом году на официальном лайнапе Сигнала.

https://music.yandex.ru/users/v.ambo/playlists/1141

Головокружительная экскурсия по современной российской электронной музыке)
Вчера вечером написал некоторые патчи для моего emacs-конфига. Их на самом деле давно уже хотел написать, они решают маленькие проблемы которые мне постоянно мешали. Об одной из проблем я хочу рассказать, потому что она привела к тому, что "порог раздражения" был переступлен.

Emacs у меня основная часть своей рабочей среды. Он у меня является, конечно, текстовым редактором, но и еще менеджером окон, мэйл-клиентом, чат-клиентом и много другого.

Внутри emacs есть концепция "буферов", один буфер может быть один открытый файл в текстовом редакторе, один чат на Телеграме, или одно десктопное окно (например, браузер). Навигация между ними осуществляется с помощью команды `switch-to-buffer` (или кое-каких альтернатив, например `ivy-switch-buffer`, `helm-switch-buffer` и так далее). Буфер - на стороне emacs-lisp является объектом с некоторыми полями. Одно из них: `buffer-name`.

У всех buffer-switch команд есть одинаковая проблема: Они берут список буферов из emacs, показывают *имена* буферов пользователю, и в результате получают выбранное *имя*. Затем они просят emacs открыть буфер с этим именем.

Кто-то наверно уже понял какая тут проблема. Имени буферов могут меняться, и да, не только могут, но и делают! Например, Телеграм-клиент может показать каличество непрочитанных сообщений в названии, окно с Яндекс Музыкой меняет названия по треку, и так далее. Получается довольно часто такая ситуация, что название меняется при выборе буфера, и `switch-to-buffer` больше не найдет выбранный буфер и просто открывает новый, пустой буфер с старым названием! Когда разработывали эти команды в emacs (да, это совершенно давно, где-то в 70х/80х, большинства нас пока не было тогда!), они никогда не сталкивались с такими ситуациями, и это решение, которое тогда хорошо работало теперь больше просто не адекватно.

Фикс был не очень сложным. Вместо списка имен буферов создаю alist с названием и *с самим объектом*, и после выбора буфера с списка передаю именно этот объект, а не только его название, в функтцию, которая открывает буфер.

Коммит с этой новой функцией здесь: https://cl.tvl.fyi/c/depot/+/9147
Советую её особенно всем пользователям EXWM!

Для меня это настоящее улучшение жизни. Конечно, это странно звучит, но даже если бы у меня была такая проблема всего раз в день, это каким-то образом привело бы к ухудшению моего настроения. Как маленький камешек в твоем ботинке.

Выньте камни из своих ботинок!
Всем привет! В четверг (07.09.2023) я выступлю с докладом "tvix-eval - компилятор и рантайм для Nix, на Rust", на Московском Rust-митапе. Начнем где-то в 19.00, рядом с ВДНХ. После докладов пойдем, конечно, в паб.

Зарегистрируйтесь, это бесплатно, просто хотим понимать, сколько нас будет.

https://progmsk.timepad.ru/event/2560621/
Однажды друг мне рассказал теорию о том, почему на Go столько любят протобуфы для всего. Она, кажется мне, резонна и простая, хотелось бы ей поделиться:

В Go нет нормальной системы типов для 21-го века (все на уровне C с 80-x). Однако людям нужны современные фичи типа sum types (которые в протобуфе можно реализовать через oneof), и поэтому они просто заменяют неадекватную систему типов протобуферами.

Вот и все. Food for thought, как говорится.
Years ago on the site formerly known as Twitter, I wrote: "tazjin's law - every infrastructure process not supervised by a reconciliation loop will eventually fail"

This, folks, is still true! Too little software is designed for how fragile everything actually is. Threading a chain of push-based events through a bunch of Rube-Goldberg machines will not work consistently. Stop doing it!
Когда уже не знаешь, что ещё о санкциях сказать.
Теория: Поведение большинства "умных" фич неотличимо от стохастического.

Хочешь написать умную фичу? Тебе не нужно ничего кроме std::rand!

Ну, серьезно: Если пишете "умные" фичи, дайте пользователям настройки, чтобы они могли их просто "глупо" в(ы)ключить.
Всех с новым годом! Пусть у вас получиться в этом году больше кода удалить, чем написать!
Greetings from the Thaigersprint in Thailand! We published an update on the current status of Tvix this morning: https://tvl.fyi/blog/tvix-update-february-24

Sprint is still going on for another few days, hopefully we'll have even more to show in a week))
Are you interested in Nix? Do you have a week of free time at the end of August? Great!

At the last week-long Nix hackathon (Thaiger Sprint, in Thailand) I decided to organise the next of these events in Kazan, on August 22-29: The Volga Sprint!

We'll get together in and work on various Nix-related projects (which ones is up to you!) for a week, with the occasional extracurricular activity.

Sounds interesting? Read more & sign up at https://volgasprint.org/
My 50 kopecks on the Nix drama:

Ignore it, it's irrelevant. The only thing that matters in the Nix world is nixpkgs, and nixpkgs governance and development is sufficiently stable. Yes, C++ Nix and Tvix, and all other related projects don't actually matter much overall.

Ignore this drama, ignore flakes, just use Nix and contribute whatever is interesting to you to nixpkgs. Don't pay attention to people trying to cause outrage with (badly edited) open letters, don't pay attention to power-hungry twats who think they can "own" Nix by hiring its creator, don't spend your energy getting angry about whether some company that supports US imperialism pays for t-shirts and coffee at some conference.

Ten years down the line only the technical results will matter, and nobody will really remember all these people.

Oh, and come to Volga Sprint! We still have two spots available :)