У меня несколько своих подписок Claude, и Claude Code работает почти весь день: я пишу сам, параллельно крутятся агенты. Пятичасовой лимит заканчивается в самый неудобный момент, недельный — задолго до конца недели. Дальше всё одинаково: открыть терминал, выйти, залогиниться другим аккаунтом в браузере, вернуться в сессию и вспомнить, на чём остановился. В какой-то момент мне надоело делать это руками.Так появился ccswap — демон на Go для macOS и Linux. Когда текущий аккаунт подходит к лимиту (…
Ещё в школе, когда я впервые начал писать на Pascal, меня заинтересовал вопрос: что именно происходит, когда запускается программа? Программа читает клавиатуру, выводит текст, выделяет память. Но кто её запускает? Кто выделяет ей процессорное время? Почему она не может прочитать память другого процесса? Как нажатие клавиши превращается в событие для приложения? И что происходит между включением компьютера и первым приглашением командной строки? Вместо того чтобы ограничиться прикладным программ…
Обычно на митапах всё довольно предсказуемо: доклады, слайды, кофе-брейк и немного общения между ними. Но в прошлом году мы решили перевернуть привычный формат — собрать Go-сообщество и побрейнштормить архитектуру. Активность была похожа на System Design, но с фаном и мясом!Так появился Avito Grill & Go. Формат зашёл настолько, что участники попросили повторить. И мы подумали: а почему бы не привезти его в Петербург?В этот раз собрали 130 Go-разработчиков во дворике Union Bar и разделили их…
Всем привет!Меня зовут Егор, и я уже несколько лет пишу на Go.Сегодня я хотел бы представить свой небольшой проект по генерации свагера для Go‑проектов.С чего всё началосьКогда я работал в банке, у нас были жёсткие требования: API бэкенда должно быть досконально описано. Паттерны для строк, максимальная/минимальная длина и так далее. Но главное — спецификация должна была быть версии не ниже 3.0.К сожалению, подходящих библиотек на тот момент было не то чтобы много. Я уже не говорю о том, подход…
Раздать имена в Тайном Санте — задача на пять строк: перемешал список, проверил, что никто не достался сам себе, готово. Я так и думал, пока не посчитал. При таком способе почти в четырёх играх из десяти найдутся двое, которые дарят друг другу, и это не баг реализации, а свойство случайных перестановок.Я делаю сервис для Тайного Санты (My Santa), и жеребьёвка в нём — те самые пять строк, которые разрослись до ста тридцати. Ниже — почему разрослись, как устроены и какой перекос я нашёл в собстве…
Расписание живёт в приложении ИТМО, а вся моя жизнь — в календаре: работа, секции, встречи, поездки. Каждую неделю я сверял одно с другим и почти каждый раз находил расхождение. В итоге сделал сервис, который превращает расписание в подписку: одна ссылка, и пары появляются в календаре сами. Сервис неофициальный: у ИТМО такой подписки нет, поэтому её сделал я.Как былоПроще всего объяснить на примере. Однажды я приехал на пару на Кронверкский, а она оказалась перенесена на Ломоносова. Уведомлени…
В компании редко бывает один прокси. Обычно это пара Squid в основном ЦОДе, свои прокси в филиалах и отдельные внешние выходы для облачных сервисов. Клиенты при этом настроены просто: PAC‑файл с двумя адресами по порядку, и всё.Беда в том, что «какой прокси лучше» зависит от сайта. Партнёрский банк пускает в API только с согласованных адресов, и выход питерского филиала в этот список не попал. Зеркало пакетов через европейский выход отдаёт втрое быстрее, чем через московский. Канал в филиале уз…
"Я каждый день работаю с кучей инструментов для мониторинга и управления инфраструктурой и меня сильно раздражает то, что путь от момента первого запуска до нормального использования неоправданно длинный." - Владислав, инженерМеня зовут Александр, я один из разработчиков NKT (NetKnownsThat) — нашего первого опенсоурс проектаNKT - это один бинарник на Go (~29 МБ) с встроенным веб-интерфейсом на React+TypeScript+Ant Design. Без Python, Node.js и внешних зависимостей, всё внутри бинарника…
При заказе VPS/VPS (уж не знаю, для каких вам нужд) - стандартная схема - при минимальной комплектации вам дают сервер, к которому можно подключиться только по SSH, и нельзя открыть никакие другие порты. Сам порт SSH может отличаться от стардартного 22-го (обычно так и происходит в начале).За дополнительную плату можно подключить опцию “статический IP” - и тогда уже можно открывать какие угодно порты и вешать на них какие угодно сервисы, веб-серверы, прокси-серверы.В целом, деньги то есть, и ту…