Привет!

Добро пожаловать на мой личный сервер. Да, это старая добрая домашняя страница, персональный сайт, «хомяк», называйте как привычнее.

Меня зовут Саня, я Go разработчик. Остальное обо мне на отдельной странице. А рядом — мой бортжурнал.

GitRepo.ru четверг, 12 января 2023

Сегодня серьезно переделал свой хостинг репозиториев кода:

  • Переехал на большой арендованный сервак
  • Привел в порядок оркестрацию вокруг сервака с использованием Docker Compose
  • Gitea заменил на её форк Forgejo
  • Впилил CI/CD на основе Woodpecker CI

Приглашаю пользоваться заместо бездуховного западного github: https://gitrepo.ru/

Сервер физически находится в датацентре в Москве у весьма годного провайдера Selectel.

Тем более, время сейчас неспокойное и неизвестно когда github станет недоступен для РФ, а GitRepo — он вот тут, в нашей стране.

Далее...
Golang подборка 1 вторник, 31 мая 2022

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

![Golang links](/img/go.jpg)
- [Extra](https://github.com/neonxp/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.Pow(math.Sin((lat2-lat1)/2), 2)+math.Cos(lat1)*math.Cos(lat2)*math.Pow(math.Sin((lon2-lon1)/2), 2)))
}
  • god — Утилита подгатавливающая демоны из go программы. Для меня ценное — что генерит systemd конфиги.
Возрождение? понедельник, 30 мая 2022

Определенно, вести блог это не мое. Учитывая, что последний пост был год назад — sad but true.

Не буду говорить, что “вот сейчас то уж точно буду вести регулярно”. Нет не буду.

Но раз в полгода-год, наверное все же буду.

Из новостей, что не писал в канал, наверное, только парочка:

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

До встречи когда-нибудь потом 🙂

Далее...
Немного о цифровой гигиене четверг, 13 мая 2021

Вступление

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

Вводные

  • В интернетах я уже очень давно и много где и как “наследил” своими данными. И с этим уже ничего не поделать.
  • У меня в телефоне и на всех компьютерах куча приложений работающих с интернетом, и не только мессенджеры.
  • У меня достаточно узкий круг людей с кем бы я хотел быть на связи, и не хочу чтобы мои действия как-то ухудшили или усложнили их жизнь.
  • Вопрос анонимности для меня не стоит, я не анонимен и это моё осознанное решение. Я законопослушный человек и прятаться мне не от кого. И да, я знаю что этот тезис стараниями либерах нынче пытаются выставить как глупость, но нет. Глупость — это слушать либерах, а не иметь свою голову на плечах. И контртезис “Гы гы гы, ну раз тебе нечего скрывать — поставь камеру у себя в спальне и ванной” даже комментировать не буду в силу его ущербности.
  • Я пользователь техники Apple и с этим уже ничего не поделать, менять целиком экосистему для меня не вариант (это очень дорого, бессмысленно, а местами и невозможно, например, рабочий мак мне поменять не на что). И да, есть наивная надежда что у яблок в плане приватности всё получше чем у ведроидов. Во всяком случае по сравнению со стоком. Гиковские прошивки с вырезанными зондами в расчет не беру, верю что у них совсем всё хорошо.

Цели

  1. Уменьшить информационный шум вокруг себя и тем самым улучшить качество жизни.
  2. Уменьшить свой “информационный след”
  3. Иметь больше контроля над своими данными, чтобы мои волосы стали мягкими и шелковистыми.

Наброски плана

  1. Перейти максимально на собственные ресурсы, которые я контролирую и которые точно не сливают ничего налево.Примерно так: социалки => https://soc.neonxp.ru/ , GitHub => https://gitrepo.ru/ , Облачные диски => локальный NAS Synology и т.д.
  2. Мне надо сократить мессенджеры в идеале до одного, не считая корпоративного рабочего. Тут всё просто — оставляю Telegram, остальные сношу.
  3. Мне надо отказаться от неэтичных социальных сетей, где я не могу полностью контролировать свои данные.
  4. При отказе от социальных сетей чтобы не доставить проблем моим контактам надо оставить “новый адрес” по которому со мной можно связаться и, например, этот пост. Я не хочу чтобы для всех мои действия были прозрачны и понятны, а не “молча удалиться” оставив кого-то в недоумении.
  5. Везде где возможно отключить или заблокировать телеметрию, чтобы как можно меньше моих данных неконтролируемо утекало. Да, полностью не перекрыть, но сократить возможно.
  6. Для связи с “миром” оставить только e-mail как наиболее удобный асинхронный метод коммуникации.

Дальнейшие шаги

  1. Превратить наброски плана в цельный план. Написать манифест? Возможно.
  2. Подготовить “визитку” с актуальными контактами и объяснением что произошло. Причем как в виде изображения, так и текста.
  3. Вышеуказанную визитку поместить на уже неактуальных для меня местах обитания (инстаграм, вк и проч). Удаляться не хочу. Жалко контент за столько лет, да и пункт 3 предыдущего абзаца.
  4. Удалить “лишние” приложения от вышеуказанных сервисов.
  5. Разлогиниться в этих сервисах и очистить браузеры от них, чтобы исключить треккинг на сторонних сайтах.
  6. ?????
  7. PROFIT!

Обратная связь

Очень бы хотелось получить обратную связь по моему плану. Комментарии про то что упустил и предложения улучшений приветствуются в комментариях к посту, в комментариях к телеграм каналу, или на почту a.kiryukhin@mail.ru (кстати, стоит наверное и почту перевести к себе? Но пока уровень сервиса врядли смогу адекватный обеспечить)

Далее...
Jsonnet суббота, 13 февраля 2021

Редко такое бывает, что случайно натыкаешься на какую-то технологию и она вызывает вау-эффект и буквально переворачивает всё верх дном. На днях для меня такой технологией стал Jsonnet от Google.

![Jsonnet logo](/img/jsonnet.svg)
В кратце, это надмножество JSON являющееся языком описания шаблонов. Пока звучит не очень круто, да? На деле это офигенный Тьюринг полный функциональный язык, результатом выполнения которого будет сформированый JSON (и не только) документ([или несколько документов](https://jsonnet.org/learning/getting_started.html#multi)).

Если интересно, рекомендую сразу переходить к туториалу.

Далее...