☕️ Мерлин заваривает τσάι 🐌
1.1K subscribers
3.53K photos
64 videos
94 files
2.42K links
Merlin makes a slice
Merlin iterates it's twice
Happy compiling!
Download Telegram
Forwarded from How to Go wrong (Alexey Palazhchenko)
Выпустил новую версию, позволяющую очищать кеш в фоне и указывать процент от полного размера диска:

hardcache local trimd --unused-for=0 --max-size=5%

В ближайшее время планирую добавить поддержку сжатия кеша (оттого и опросы про zip/deflate выше).

Если вы хлопали предыдущему посту, вы используете hardcache или просто хотите поддержать – поставьте звезду на GitHub’е, это очень важно. 😄
Пока меня тут не было, я не бездельничал, а ковырял разные штуки:
- освоил n8n и тут же накидал несколько автоматизаций поверх телеграма и openai API - сбор новостей, бот-погодник и тд
- погрузился чуть больше в #Clojure и персистентные структуры данных – кое-что даже затащил в свой язык
- потыкал палочкой #OCaml - он ощущается пока что правильным в разных местах, только состояние кросскомпиляции не радует
- сделал мини-террарирум с несколькими растениями
3🎉11🥰5🕊1
Вообще аудитория на 1000+ человек для меня очень большая - я никогда не выступал больше чем на несколько десятков человек вживую. Меня удивляет, что нашлось так много людей, готовых потратить несколько секунд на обработку моего контента.

Круто что вы тут есть, а те, кто кидают звёздочки - вообще взрывают мне мозг. Тот факт, что я получают за свои посты микрокопейку сильно трогает меня за центры мотивации в мозгу.
10❤‍🔥19🤝10🥰7
☕️ Мерлин заваривает τσάι 🐌
Photo
Такое ощущение что в 10-х каждый второй пытался сделать свой coffescrypt или groovy
C3, unison, gleam, rhombus, basilisp, uiua, strudel, pql - из того, что трогал
я уже морально созрел чтобы потыкать nixos на домашнем сервере

хочу мягкого корма декларативных хэшиков
🤝8
Батарея-гной, батарея-мразь (приклеена)
Я устал убивать ботов в комментах, так что я поднял ещё одного убиватора.

В комментариях к каналу начал работать антиспам бот, так что возможны ложные отстрелы человеков
Варианта два:
- пишите в личку для разбана
- вы это заслужили, тогда не пишите
🙏4💅2😱1
Вот уже месяц я живу #selfhosted стримингом музыки.

Дело было вечером субботы: я зашёл в свой плейлист на Spotify и увидел прекрасное — почти весь экран треков был помечен как недоступный по легальным причинам. За почти десяток евро в месяц я всё‑таки ожидаю, что смогу слушать набранную музыку вне зависимости от того, забыл провайдер переподписать контракт со стримингом или нет.

С недавних пор я начал восстанавливать свой флот серверов — поэтому решил немного поизвращаться с доморощенным вариантом.

Вместо простого советского «что там сейчас люди поднимают для self‑hosted музыки» я схватился за golang.org/x/net/webdav, написал read‑only адаптер к os.Root и получил простенький файловый сервер.

Оказалось, foobar2000 живёт и здравствует на iOS, умеет и понимает WebDAV — так что от задумки до результата у меня прошло где‑то минут сорок. После этого — пара дней на поиск, скачивание и выгрузку музыки на мой сервер.

Итоговый сетап: WebDAV‑сервер сидит внутри контейнера, к которому примонтирована в RO‑режиме директория с музыкой, и раздаёт файлы внутри Tailscale‑сетки.
Я немножко психанул, поэтому музыка бэкапится, как и всё остальное, по схеме 3‑2‑1.

Опыт использования с технической стороны:

- интернета на Кипре хватает, чтобы стримить FLAC даже в горах на 1600 метров;

- foobar2000, на удивление, неплох — вполне приличный интерфейс, надёжно работает;

- Opus хуже всего для стриминга — там нужен бинарный поиск по файлу для seek по времени, так что плеер делает пять–шесть HTTP‑запросов на каждое начало воспроизведения файла, если файл больше размера одного чанка скачивания;

- M4A + AAC очень хорош для стриминга, если поставить moov в начало — иначе foobar2000 не может вытащить часть метаданных длинных треков;

- WireGuard VPN, включённый 24/7, тратит мало ресурсов и не греет iPhone 16 Pro.


Опыт с точки зрения музыкального опыта: я стал более осознанно слушать музыку. Если раньше я включал на Spotify динамический плейлист и слушал алгоритмическую смесь моих и новых треков, то сейчас я выбираю альбом или собранный мной плейлист и слушаю от начала до конца, потом выбираю следующий. Отсутствие рекомендаций тоже пока не мешает — достаточно раз в неделю позалипать в Википедии на странице жанра или группы, послушать пару сэмплов на YouTube — и я получаю представление, нравится мне альбом или нет.

Чего не хватает и прочие неудобства:

- foobar2000 не умеет кэшировать файлы автоматически — для прослушивания офлайн музыку надо скачивать в отдельном, очень кривом окне;

- метаданными треков надо заниматься отдельно — спасибо MusicBrainz Picard, это довольно просто;

- не хватает UI. Можно было бы раздавать webdav‑js как статическую страничку — но, кажется, вложение не стоит усилий.


Итогами перехода я скорее доволен. Скорее всего, в течение ближайшего месяца я подниму Navidrome — я обнаружил под него гораздо более широкий выбор плееров, чем есть на iOS с поддержкой WebDAV и Samba.
9❤‍🔥4🎉2🍌1🤨1👾1
☕️ Мерлин заваривает τσάι 🐌
Я люблю питон. Честно. На всех моих машинах постоянно открыт терминал с ipython. Если мне нужно обработать табличку, какие-то числовые данные или текст — я беру jupyter, pyplot, pandas и numpy. Питон незаменим, когда нужно накидать прототип или другой одноразовый…
я у стеклесс корутин с async/await и аналогов вижу ещё такой мощный плюс - их относительно легко прикрутить к языку, при создании которого про конкурентность не думали вообще

но у них есть и минус: async/await стеклесс корутины прикручивают к зыкам, при создании которых про конкурентность не думали вообще
188🥰3🌚3
Со вторым днём космонавтики! 👩‍🚀🛰🌒
🤝7🕊2🌚1💋1