Очки для компьютера

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


Caddy в качестве альтернативы Nginx

До недавнего времени все мои веб сервисы были жёстко завязаны на Nginx. Через него работал сайт и проксировались приложения. Естественно, всё находится внутри контейнеров и рассортировано по серверам в разных масштабах. Проблема в том, что веб сейчас достаточно требователен в плане стандартов и всяких штук связанных с безопасностью. Конфиг Nginx только для данного сайта состоит из 50 строк. Кроме того, есть ещё задачи связанные с получением и доставкой сертификатов. Для этих целей обычно используют certbot.


Автоматический деплой приложений

В этой заметке пойдёт речь об автоматизации выкладки приложений на удалённые серверы и базовом управлении процессами. Проблематика Обычно у админа есть несколько задач связанных с работой приложений на удалённых серверах: Доставка, установка приложения и его зависимостей Доставка контента Доставка служебных файлов Конфиги Сертификаты Скрипты Переменные окружения И так далее Администрирование сервера Создание и настройка учётных записей Управление сервисами Обновление приложений И так далее Это набор довольно типичных задач, но их объём может варьироваться в зависимости от требований.


Управление терминалом VS Code с клавиатуры

Встроенный терминал хорошо вписывается в интерфейс VS Code, но по умолчанию управляется только курсором. Мышка зло, так как работа в терминале подразумевает режим ввода с клавиатуры. При активной отладке нужно как минимум быстро переключаться между вкладками терминала, создавать новые и убивать существующие сессии. Стандартные привычные клавиатурные сочетания ctrl+tab, ctrl+shift+tab, cmd+n и cmd+w дефолтом работают только для вкладок с контентом, но настройками предусмотрена возможность по разному реагировать в зависимости от того где находится фокус.


Outline Proxy

В Outline (VPN над Shadowsocks от Google) зафигачили поддежу режима Connect On Demand. Причём равносильно для клиентов Mac / iOS. Теперь можно попробовать им попользоваться. Это в общем-то единственное решение для обеспечения VPN с настройкой которого справится даже ваша бабушка. Выглядит это примерно так: ставится Outline Manager, который (опционально) сам поднимает VPS (например в DigitalOcean), инсталлит нужное ПО, а вы лишь генерите ключи доступа для клиентов. Юзер только вставляет себе ключ и у него сразу всё работает.


Автозапуск Tmux при использовании SSH

При работе удалённо по ssh довольно удобно запускать tmux буквально в каждой сессии, чтоб в случае обрыва или преднамеренного закрытия можно было легко вернуться в то же окружение. Я уже молчу про базовые удобства tmux в виде виртуального оконного режима, сплита экрана и прочих фишек. А если у вас ещё macOS и iTerm с интеграцией tmux, то вообще красота. Но есть маленькая проблема — набирать в каждой сессии tmux -CC attach или tmux -CC new или tmux -CC new -A -s common это рутина.


OpenVPN своими руками

Хочу поделиться инструкцией по созданию собственного VPN на любом удалённом Linux сервере. Мой сервер работает на хостинг провайдере Digital Ocean, так как у них хорошие цены, быстрые каналы и много включённого в трафика. Тариф выбирайте любой, но достаточно минимального. Для России, наверное, наиболее предпочтительным регионом является Frankfurt. У меня до серверов из этого датацентра самые низкое время отклика. Системные требования На стороне клиента вам потребуется установленный ansible, так как в моём решении используется именно этот инструмент для конфигурирования сервера.


Bose QuietComfort 35 II

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


Hyper Caps Lock

Ещё недавно клавиша caps lock была для меня одной из самых бесполезных. После отказа от раскладки Бирмана перешёл на системную и активировал возможность использовать caps lock в качестве переключателя языкового ввода. Это очень удобно. Спустя время наткнулся на заметку Рахима и мне понравилась идея использовать эту кнопку в качестве комбинации ⌘⇧⌥⌃, но променять её на раскладку готов не был. Как оказалось, с помощью Karabiner Elements можно решить обе задачи сразу:


Новосибирск

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