Войти Публичная лента

Лента

Open Source as We Know It Is Dead
07.10.2026 Александр Нет комментариев
Я создал аккаунт на GitHub 17 июня 2011 года. Примерно через две минуты после этого я открыл первый issue: телепортация не работала в TShock, модификации для серверов Terraria, и я хотел понять почему. Не так рано, как некоторые, но достаточно рано, чтобы помнить, как слияние моего PR кем-то совершенно незнакомым казалось маленьким чудом. (С тех пор я был одержим игровыми серверами — теперь это буквально моя работа.)
GitHub не был началом. До этого были проверки SVN, которые ломались, если на ниЧитать далее…
OpenSSH Ships on Every Mac, Linux Server and Windows PC. Its Creator Trusts No One.
07.10.2026 Александр Нет комментариев
October 05, 2026 · 36 min read
OpenSSH creator Theo de Raadt was pushed out of NetBSD, lost a DARPA grant and fought half of open source. Now his paranoid code guards the world's servers.
I. Half a Second
Until the last days of March 2024, almost nobody outside a small circle of programmers had heard of liblzma. It was a compression library, a piece of plumbing buried deep in Linux, and for two years someone had been preparing to use it to walk through the front door of the internet.
He called hЧитать далее…
Creocode, okTable и остальное...
09.09.2026 АлександрНет комментариев

Я опять перестал писать в блог. Каждый раз говорю себе: «пиши!», а другая моя часть говорит «лень!». В этот раз немного поборю лень.

Наверное, стоит написать про то, что делал, да что происходило... А делал я вот что:

CreoCode (https://creocode.io/)

Читать далее…
Переехал на Steam Deck
31.05.2026 Александр Нет комментариев

Вчера с моим ноутбуком случилась досадная неприятность - вышла из строя система охлаждения. Точнее, она работает, но издаёт душераздирающий скрежет. Работать стало невозможно.

Систему охлаждения в сборе я решил заказать целиком, благо это стоило совсем небольших денег, примерно 2.5К₽. Но загвоздка в том, что идти из Китая будет достаточно долго и придёт только 16-18 июня по обещаниям. То есть больше чем на две недели я остаюсь без рабочего инструмента!

Но не беда! У меня же есть прекрасный Steam Deck, который хоть и считается игровой консолью, но по факту достаточно мощный и портативный x86 ПК.

Читать далее…
sh вместо make
11.05.2026 Александр Нет комментариев

В мире всяких аналогов make создано достаточно. И даже больше чем достаточно! Есть как альтернативные реализации (GNU Make vs BSD Make), так и совсем самобытные (redo). В моей практике, как разработчика НЕ на Си — make используется исключительно как запускалка некоторых частых команд. И это притом, что make всё же несколько для другого. И в целом, именно запускалка — скорее побочный эффект.

Казалось бы, тогда для большей красоты — стоит использовать специализированное решение, например, Taskfile. Но тогда каждому для работы с проектом придётся ставить приложение для работы с Taskfile. Выглядит как такое себе решение.

Но! У всех же точно есть POSIX sh! Так что мешает делать очень минималистичный sh скрипт, суть которого в простом запуске команд? Да ничего! Вот самый простой вариант:

Читать далее…
Попытка вести блог из Obsidian
02.05.2026 АлександрНет комментариев

Мне надоело!

Надоела сложность с которой я сталкиваюсь при написании новых постов в блог!

Поэтому я всё же выделил время и настроил пайплайн так, чтобы хотя бы писать посты было удобно. А именно, в Obsidian. Который и сам на себя берёт управление статикой, которую я прикладываю и красивое оформление и управление тегами, потому что я не помню какие теги есть, а каких нет.

Читать далее…
Моё первое дополнение для Firefox
01.02.2026 Александр Нет комментариев

Буквально только что пришло письмо, что наконец-то опубликовано публично моё первое расширение для Firefox!

Без долгих разгонов, вот ссылка: https://addons.mozilla.org/ru/firefox/addon/groupper/

И, конечно же, исходники: https://gitrepo.ru/NeonXP/Grouper

Читать далее…
qChat — чатик поверх SSH
31.12.2025 Александр Нет комментариев

Для собственного интереса написал на Go реализацию IRC-подобного чата, который работает поверх прокола SSH.

Умеет пока немного, но много я от него и не хотел. Основная идея в том, чтобы его можно было запустить без конфигурации, с минимальными усилиями на любой «картошке» и чтобы он могу обслуживать, например, небольшую группу пользователей в одной локальной сети (хотя может работать и по интернету).

Получилось очень гиковски и лампово. Так сказать, чатик на случай ядерной войны :)

Читать далее…
Прогулка в сквере филармонии
28.12.2025 АлександрНет комментариев

Вчера гуляли с супругой на набережной, а сегодня чисто случайно решили прогуляться в сквере филармонии им.Тукая. Людей было немного, что только создавало больше уюта и ламповости этому хорошо украшенному скверику. К сожалению, гулять прям долго-долго особо не вышло, т.к. хоть и всего -7°, но продрогли сильно, т.к. гулять изначально не планировали и не были одеты соответственно. Сейчас дописываю этот пост и пытаюсь отогреться :)

Как водится, дальше будет немного фотографий :)

Сходили на ярмарку OSM
27.12.2025 АлександрНет комментариев

Сегодня с супругой съездили для интереса на ярмарку OSM (нет, это не OpenStreetMaps, а OpenSpaceMarket :) ) в гастрокомплексе «Кайт». Ярмарка не скажу что была сильно большой, но нам понравилось. Купили всякого не сильно много, поднос да пару ароматных свечек с зимними ароматами. Фотографии покупок да и самой прогулки прилагаю. Всё таки у нас очень красивый город!

P.S. на фотку можно кликнуть, тогда она откроется в большем размере.

Покупочки

Читать далее…
Личный органайзер
23.11.2025 Александр Нет комментариев

Пришло в голову, почему бы не рассказать как у меня организован личный органайзер.

Для начала стоит очертить то, какие у меня потребности от органайзера:

  • Вести список ежедневных, еженедельных, ежегодных, а так же, одноразовых
    событий
  • Вести быстрый список ближайших задач (ToDo список). Под быстрым, я
    подразумеваю то, что внести новый пункт в него я могу не дольше, чем за пару
    десятков секунд. Если это будет требовать бо́льших усилий, то я себя знаю: я
    это быстро заброшу, т.к. это станет для меня не помощью, а повинностью.
  • Место для быстрых заметок в формате «бесконечного текстовика». Аналогично,
    это должно быть под рукой в быстром доступе. Obsidian себя показал слишком
    медленным. Настолько, что мне стало проще запоминать, чем испытывать свои
    нервы каждый раз, наблюдая его длительный запуск. Да, звучит на первый взгляд
    глупо, но у меня так: запуск Obsidian
Читать далее…
Деплой блога — пересмотр
04.11.2025 АлександрНет комментариев

После вчерашнего поста мне написал один хороший человек с дельным замечанием, что не стоит для этих целей использовать make. Действительно так. И предложил хорошее решение, что это стоило сделать просто sh скриптами.

У меня только один вопрос. А почему я сам-то так сначала не сделал? Это же буквально на поверхности!

Штош, бывает, затупил. Да и привык для всех гвоздей использовать этот молоток.

Читать далее…
Деплой блога
03.11.2025 АлександрНет комментариев

А ещё, я решил поделиться тем как я пишу в блог. Потому что, почему бы и нет.

Во-первых, у меня есть такой вот Makefile просто в корне home:

new-post:
	@printf "Введите имя поста (латиницей, без пробелов) [new-post]: "; \
	read postname; \
	if [ -z "$$postname" ]; then \
		postname="new-post"; \
	fi; \
	date=$$(date +%Y-%m-%d); \
	file="neonxp.ru/posts/$$date-$$postname.md"; \
	echo "---" > "$$file"; \
	echo "title: " >> "$$file"; \
	echo "date: $$da
	echo "tags: []" >> "$$file"; \
	echo "---" >> "$$file"; \
	echo "" >> "$$file"; \
	echo "---" >> "$$file"; \
	echo "Комментариев в блоге не предусмотрено, но вы всегда можете написать мне на e-mail [i@neonxp.ru](mailto:i@neonxp.ru) или в джаббер [i@neonxp.ru](xmpp:/i@neonxp.ru)" >> "$$file"; \
	nvim "$$file"
Читать далее…
Ещё немного печати
09.08.2025 Александр Нет комментариев

Я продолжаю погружаться в печать не просто готовых моделей из интернета, что не очень интересно, но так же и в проектирование и печать собственных изделий. Сегодня моя любимая супруга попросила напечатать ей органайзер для косметики. Показала референс, какой она хочет. ТЗ понятное, размеры подобрали, осталось дело за малым — непосредственно запрограммировать изделие.

На практике, это пока самое сложное по детализации изделие из всех, что я делал. Код получился кривоватым, но рисует то, что нужно.

Вот так результат в редакторе:

Читать далее…
Давай запрограммируем деталь?
05.08.2025 Александр Нет комментариев

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

Штош. Я решил восполнить этот недостаток с интересом для себя и решил этот колпачок самостоятельно спроектировать и напечатать на 3D принтере, который есть у меня на хозяйстве.

Читать далее…
Meshtastic
02.08.2025 Александр Нет комментариев

Некоторое время назад наткнулся в блоге Евгения Степанищева на потрясающую штуку - Meshtastic, или как в народе её называют - «мышастик». Вкратце, это протокол и, в первую очередь, специальная прошивка для целого спектра устройств, которые позволяют организовать mesh сеть поверх протокола LoRa.

Базово, как это выглядит при использовании:

У каждого участника сети есть небольшое портативное радиоустройство (готовое или самодельное - не важно), прошитое специальной прошивкой. К устройству, чаще всего (но необязательно!) подключен смартфон со специальным одноимённым приложением. Устройство ищет и старается подключиться к другим подобным устройствам, а со смартфо

Читать далее…
Мой сетап 2025
08.06.2025 Александр Нет комментариев

Давно ничего не писал, да и не было особо о чём. Немного играюсь с нейросетями и LLM в последнее время. Если выйдет что интересное - напишу об этом.

А пока хотел написать вот о чём.

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

Читать далее…
Мой сетап 2025
08.06.2025 Александр Нет комментариев

Давно ничего не писал, да и не было особо о чём. Немного играюсь с нейросетями и LLM в последнее время. Если выйдет что интересное - напишу об этом.

А пока хотел написать вот о чём.

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

Читать далее…
Табы или пробелы?
05.04.2025 АлександрНет комментариев

Так получилось, что с Нового Года я ничего в блог не писал. Тому причина в личной загруженности, и в не менее личной лени. Так же я делал некоторые эксперименты над самим блогом, потому что моё внутреннее чувство прекрасного не даёт мне просто остановиться и не трогать то, что работает.

Но всё же, я чувствую внутреннюю потребность написать небольшую заметку с размышлениями, которые недавно приходили ко мне в голову.

А связаны они с тем, что есть определённые догмы в индустрии, которые непонятно (ну или понятно) почему появились, и которым слепо следуют, хотя, как будто они уже не имеют смысла.

Читать далее…
Golang подборка 1
31.05.2022 АлександрНет комментариев

Просто собираю подборку интересных ссылок по гошке на почитать потом.

  • Extra — Моё. Пакет с разными полезными
    функциями без дополнительных зависимостей.
  • Серия видосов про создание игры в стиле Animal Crossing на golang с помощью
    raylib —
    https://www.youtube.com/watch?v=iWp-mCIQgMU&list=PLVotA8ycjnCsy30WQCwVU5RrZkt4lLgY5&index=1
  • Самописный распределенный типа Postgres
    https://notes.eatonphil.com/distributed-postgres.html. Под капотом raft от
    hashicorp, boltdb и самое интересное — парсинг SQL
  • Рассчет расстояния между двумя Geo точками:
import "math"
...
// https://en.wikipedia.org/wiki/Haversine_formula
func GetDistance(lat1, lon1, lat2, lon2 float64) float64 {
    lat1 *= math.Pi / 180
    lon1 *= math.Pi / 180
    lat2 *= math.Pi / 180
    lon2 *= math.Pi / 180
    return 12742 * math.Asin(
      math.Sqrt(
        math.P
Читать далее…