Pull to refresh
7
2.6
Антон Муравьев@tsb99x

User

Send message

Демо Smalltalk-76.

Иногда просто поражает масштаб того, что разрабатывали в Xerox PARC.

На этом видео Дэн Инголлс презентует Smalltalk-76, объединённую интерактивную среду исполнения и сам язык программирования. Два в одном! И это в 1976 году!

Smalltalk исторически повлияет на большое количество современных ЯП с ООП. Отдельно стоит отметить яркое влияние на ЯП, где в основе лежит модель акторов.

В то время ООП было не столь про термины "инкапсуляция", "полиморфизм" и "наследование". Скорее про то, что всё есть "объект", а объекты общаются между собой исключительно путём обмена сообщениями.

Это — основа современной акторной модели.

Да, Smalltalk сейчас — довольно нишевый и редкий язык, но в прошлом это был аналог и прямой конкурент молодого, только появившегося Java...

Презентация на YouTube: https://youtu.be/NqKyHEJe9_w

Tags:
0
Comments8

Впечатления от RoadCraft.

Добрался на выходных до демо-версии RoadCraft. Прохождение заняло (по цифрам Steam) около 4 часов.

Впечатления смешанные. Как и в случае с Expeditions, разработчики захотели сделать SnowRunner, но не совсем SnowRunner. Получилось так себе, как и с тем же Expeditions.

Самая большая проблема — они берут всего один аспект SnowRunner и выкручивают его на максимум. В Expeditions — это исследования местности, в RoadCraft — ремонт инфраструктуры. Но формула SnowRunner в таком случае рассыпается и играть становится не так интересно.

Чести ради, в RoadCraft было проще втянуться, чем в Expeditions, там я не продержался и пары часов. А тут демку до конца прошёл.

К слову, в отличие от SnowRunner, RoadCraft можно купить в ру-регионе Steam. Но смотрю на цены... Уф. Сейчас игра стоит 1749 рублей (30% скидка от 2499 руб.) Нет уж, я лучше пойду в классику какую-нибудь поиграю...

Tags:
+1
Comments3

Dotfiles для NVIM v0.10.

За прошедший год меня несколько раз спрашивали: каким конфигом NVIM я пользуюсь?

Люблю брать дефолтный NVIM и накидывать минимум плагинов, которые чуть-чуть упрощают жизнь. Для локальной машины добавляю LSP, линтинг, авто-форматтеры и тему.

Единственная особенность конфига — прибиваю гвоздями версии плагинов, чтобы они были совместимы с NVIM v0.10. Некоторые плагины уже требуют v0.11+, но я на Debian Trixie и в стабильных репах живёт только v0.10. Бэкпортов пока не завезли...

В общем как-то так, вот репа на GitHub.

Tags:
+1
Comments0

Podman, OCI и HEALTHCHECK.

Восстанавливал работоспособность одной репы и столкнулся с забавной особенностью.

Compose файлы, которые там есть — предельно простые. Есть цепочка сервисов, которые запускаются друг за другом. Первым стартует БД, никаких проблем. Вторым — сервис с API для загрузки данных в БД. Опять никаких проблем. Третьим — контейнер с wrk для нагрузочного тестирования. И вот тут загвоздка. Контейнер зависал в бесконечном состоянии "Created".

Подебажил. Оказалось, что при сборке образа API никак не фиксировался HEALTHCHECK! Podman по-умолчанию использует именно OCI спеку контейнеров, а не Docker, и там нет поддержки HEALTHCHECK. Из-за этого не срабатывал condition: service_healthy в Compose-файле, подвешивая контейнер с wrk.

Чтобы решить эту проблему, нужно явно указать формат спеки как Docker при сборке Dockerfile/Containerfile. У Podman это выглядит так:

podman build --format docker .

А вот так для Podman Compose:

podman-compose --podman-build-args='--format docker' build

Альтернативный вариант, если не хочется передавать аргумент каждый раз — установить переменную окружения:

export BUILDAH_FORMAT=docker

Вот такие пироги :)

Tags:
+9
Comments2

Rustfs vs Minio.

Login-screen у RustFS
Login-screen у RustFS

Раньше много пользовался Minio, бывало удобно, когда нужно быстро поднять сервис для перекидывания файлов.

Самая большая проблема у Minio, которая меня преследует в последнее время — жёсткие требования минимального объёма свободного места на диске. Разработчики говорят: нужно минимум 10% свободного места. Неважно абсолютное значение, хоть даже 400T, как в одном из issues на GitHub.

На днях нашёл RustFS, прямой аналог Minio. RustFS даёт спокойно записать файлы и при 1% свободного места.

Для домашнего пользования или мини-лабы — самое то!

Tags:
+6
Comments0

Раздолбайский дух Sanic.

Как выглядела версия 18.12.0
Как выглядела версия 18.12.0

Обновлял свои сэмплы простеньких API-сервачков. Версия на Sanic отказывалась работать, так что закатал рукава и пошёл читать их маны. Захожу на сайт, а тут... Батюшки! Всё чинно, благородно, серьёзно так. Я отлично помню, что рисовал их дебаг в консоли. Эх, куда дели раздолбайский дух? :)

Tags:
+1
Comments0

Information

Rating
1,174-th
Location
Россия
Registered
Activity