Путь к освоению VIM: от плагина до Practical VIM

Решил разобраться в VIM. Вообще я часто пользуюсь им, для быстрого редактирования файлов. Этакая разовая работа. Но полноценно переключиться на работу с VIM у меня не получается. По умолчанию использую VS Code + VIM плагин. Получается неплохой симбиоз: удобные хоткеи VS Code + удобная навигация внутри файла. Но одно дело удалять строчки и прыгать туда-сюда по файлы, а другое дело полноценно работать с большим проектом.

Обычно многие статьи заканчиваются командами h, j, k, l. А дальше читайте официальную документацию, там всё подробно описано. А выйти-то как? А как отступ добавить?

Так вот, отступ в режиме NORMAL задаётся через двойное нажатие >. И тут вот какая проблема: статьи-то на самом деле хорошие, просто команд и сценариев так много, что всего не перечислишь. А еще есть куча разнообразных форков со своими доработками. Например, я пользовался LunarVim. В целом, было неплохо, но некоторые вещи долгое время не исправлялись. И вот однажды я полез искать как же поправить один баг и с удивлением обнаружил, что проект не развивается.

Решил попробовать Astronvim. Проект оказался поинтереснее: быстрее, более структурированнее. И как-то так увлекся настройкой (что-то добавил, что-то переназначил), что в итоге сделал свой форк.

В какой-то момент, устав читать документацию и статьи, я купил себе книжку Practical VIM. Сначала читал демо, потом еще раз читал демо. Понял, что очень понравилось. Простой английский, легкое повествование. Текст читается прекрасно. К слову, у меня есть ещё одна книга про VIM “Изучаем vi и VIM”. Так вот в этой книге я продвинулся всего на четыре главы. В общем, “Practical VIM” понравилась больше.

И вот к примеру пара цитат из книги:

The combination of operators with motions forms a kind of grammar. The first rule is simple: an action is composed from an operator followed by a motion. Learning new motions and operators is like learning the vocabulary of Vim. If we follow the simple grammar rules, we can express more ideas as our vocabulary grows.
Neil, Drew. Practical Vim (pp. 24-25). Pragmatic Bookshelf. Kindle Edition.

и

when an operator command is invoked in duplicate, it acts upon the current line. So dd deletes the current line, while >> indents it.
Neil, Drew. Practical Vim (p. 25). Pragmatic Bookshelf. Kindle Edition.

Ещё книга содержит много отсылок к документации. При желании можно пойти и узнать больше деталей. В общем, книга классная, рекомендую.

Что касается VIM и ежедневного его использования, могу сказать, что в процессе чтения книги снова появился живой интерес к использованию. Некоторые вещи уже не выглядят болью. Еще один важный момент — готовый настроенный конфиг. Возможно, когда-нибудь я попробую всё настроить с нуля. Но вот прямо сейчас хочется использовать то, что работает из коробки. Поэтому решения вроде AstroNvim хорошо подходят.

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

Вывода у статьи не будет. Скорее это просто чекпоинт на тему “вот узучаю VIM”.

Белградская десятка

20241014_081056_87b887.webp

Ну что, сегодня 10км в Белграде. Вчера вот съездил, получил стартовый пакет. В этом году футболка кислотно-зелёного цвета. Прям под цвет кроссовок 🙂

К этому старту я готовился. Вот прям готовился-готовился. И надежды были пробежать по 4:50. Но последнюю неделю то спину ломит, то хвост отваливается. Поэтому пришлось скорректировать цель. Решил, что побегу не на скорость, а где-то в пол силы и 5:30 — 6 минут на километр уже будет хорошо. Впереди еще Новисадский забег в октябре и Бока в декабре.

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

20241014_081132_764bcc.webp

“Ребята, какие спортивные часы выбрать?”

Шёл 2024 год, а люди в интернетах до сих пор спрашивают какие спортивные часы выбрать. Обычно холивар идет про Garmin и Apple Watch. Иногда из толпы кто-то кричит Coros, Samsung, Huawei. Но обычно их заглушают поклонники Garmin и фанаты Apple.

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

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

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

Умные часы дарят ощущение контроля сна. Вот же, графики на часах показываются. Но знаете, по настоящему контролировать сон можно только отправляясь спать вовремя. Графики в часах не помогут высыпаться. А если вы спите по 7-8 часов, то какая разница, сколько там у вас там минут глубокого сна?

В каждых спортивных часах есть GPS. Но если пробежать по одному и тому же маршруту на стадионе, кругов так 10, то можно увидеть насколько это неровные круги. И вот обзорщики часов с умными лицами сравнивают точность gps модулей. Но ведь это же не так и важно. Там отклонения всего считанные метры.

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

PS: У меня Garmin, кстати 😀

4:48 /km

20241014_081244_682b34.webp

Сегодня на паркране случился личный рекорд. 7-го сентября бегу 10км в Белграде. А сегодня надо было пробежать пристрелочно, чтобы понять скорость и как долго я так смогу бежать по ощущениям. Вышло неплохо, пятерку по 4:48 за километр я еще не бегал. Если допустить, что 10ку я побегу не на все деньги, а чуть слабее, то я бы ставил на 5:20.

Но это лишь прогноз. Как там будет на самом деле узнаем через неделю.

Четырехдневная поездка в Стамбул

20241014_081432_4154cf.webp

“You pay, you go” сказал секьюрити на FastTrack. И этой фразой можно описать вообще весь Стамбул: метро, где для смены ветки, надо выйти, оплатить и снова зайти; кафе, где tax включают в стоимость, магазины, в которых можно торговаться… Всё-всё. При этом оплата не гарантирует качество. Оплата гарантирует уменьшение денег.

Но давайте обо всём по порядку. Для начала: что такое FastTrack. В аэропорту Sabiha Gokcen в Стамбуле в зоне таможенного досмотра огромная очередь. Судя по отзывам из Google Maps иногда людям не хватает двух часов, чтобы пройти досмотр. Решение этой проблемы гениальное. Вместо увеличения количества пунктов досмотра, добавили возможность пройти досмотр за деньги! Этот коридор был абсолютно пустым, никакой очереди. Приходишь, платишь около 1000 лир за одного человека (в евро это около 25) и легко проходишь. Цена не малая, но длина очереди на бесплатный досмотр просто пугает. Так что, мы решили не рисковать и заплатить. Кстати, на платном досмотре никого не заинтересовала бутылка с водой. Одним словом, удобно!

20241014_081502_e6bb60.webp

Сам Стамбул было посмотреть интересно. Он разный, но очень шумный и суетливый. В туристическом центре идёт просто огромный поток туристов и в этой толпе ты скорее следишь за тем, чтобы сохранить при себе всё с, чем пришёл, нежели наслаждаешься видами. Вот утреннее фото одной улочки. В 7 утра не ней тихо и спокойно.

20241014_081523_63b511.webp
Небольшая улочка в районе Таксим

Перемещаться по городу можно на автобусах, трамваях и метро. Если в аэропорту купить Istambul Card, то ей очень удобно платить: прислонил у терминала на проходной в метро или в автобусе, деньги списались и всё. Пополнять карту можно на станциях метро. Очень удобный способ оплаты. Как и само метро, кстати, самый удобный, понятный и предсказуемый вид транспорта в Стамбуле.

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

20241014_081553_9f8692.webp

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

20241014_081611_f697b2.webp
Пролив Босфор

В эту короткую поездку мы видели немного. Из открытий — видели александрийских попугаев. Это было в парке Yıldız. Они там живут, как и голуби или воробьи в наших регионах.

Но общее впечатление от увиденного неоднозначное. Вроде красиво, интересно, чтобы посмотреть это один раз. Но ничего такого впечатляющего, за чем хотелось бы возвращаться снова и снова. Это не горы Банфа или парк Тиргартен.

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

Бег против инсулинорезистентности: как регулярные пробежки улучшают метаболизм

Сегодня у нас серьезная тема: инсулинорезистентность. Возможно, звучит пугающе, но давайте разберемся, что это такое.

Инсулинорезистентность — это состояние, когда клетки организма становятся менее чувствительными к инсулину. После того как человек съедает пищу, особенно содержащую углеводы, уровень глюкозы в крови начинает повышаться. Это нормальный процесс, так как углеводы расщепляются на глюкозу, которая затем поступает в кровь и используется организмом в качестве источника энергии. В ответ на повышение уровня глюкозы поджелудочная железа выделяет инсулин — гормон, который помогает клеткам организма (в частности, мышечным и жировым клеткам) поглощать глюкозу из крови для использования в качестве энергии или для хранения в виде гликогена. При инсулинорезистентности клетки организма становятся менее чувствительными к инсулину. Это означает, что даже если инсулина в крови достаточно или даже слишком много, клетки не могут эффективно поглощать глюкозу. В ответ на это поджелудочная железа вынуждена выделять еще больше инсулина, чтобы компенсировать эту резистентность.

Попросту говоря, инсулин есть, а толку от него мало. Инсулин препятствует расщеплению жиров, что способствует накоплению жировой массы. Высокий уровень инсулина может усиливать чувство голода, что приводит к перееданию. А хронически высокий уровень инсулина может способствовать развитию воспалительных процессов в организме, которые связаны с различными хроническими заболеваниями.

Диагностировать и назначать лечение конечно же нужно только через посещение врача. Я лишь хочу подсветить влияние бега на снижение уровня инсулина.

Во-первых, когда мы бежим, наши мышцы активно поглощают глюкозу из крови, причем делают это без участия инсулина (он нужен, чтобы доставить глюкозу в кровь в состоянии покоя или при низкой физической активности). Это как прямая доставка энергии, минуя сложную систему с инсулином-почтальоном. Чем больше мы бегаем, тем эффективнее становится этот процесс.

Во-вторых, регулярные пробежки увеличивают количество и активность транспортеров глюкозы GLUT4 в мышечных клетках. Эти ребята – настоящие герои, которые помогают глюкозе проникать в клетки. Больше GLUT4 – выше чувствительность к инсулину.

В-третьих, бег снижает уровень воспаления в организме. А воспаление, как мы помним, может усугублять инсулинорезистентность. Так что, надевая кроссовки, вы не только укрепляете мышцы, но и боретесь с невидимым врагом — воспалением.

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

Но помните, чудес не бывает. Одной пробежкой в неделю не обойтись. Тут важен комплексный подход: сон, питание, низкий уровень страсса. Исследования показывают, что для заметного улучшения чувствительности к инсулину нужно бегать минимум 3-4 раза в неделю по 30-40 минут. И да, интенсивность тоже важна — нужно чередовать спокойные пробежки с интервальными тренировками. И кто знает, может через пару месяцев регулярных пробежек ваш организм скажет вам спасибо не только в виде подтянутой фигуры, но и улучшенных показателей здоровья.

ChatGPT vs Тренер

Наткнулся на интересное исследование о том, как ChatGPT справляется с составлением тренировочных планов для бегунов.

20241014_081716_e081b5.webp

Группа исследователей решила это проверить. Они попросили ChatGPT составить три шестинедельных плана, давая ему разное количество информации. Потом эти планы оценивали тренеры по 22 критериям качества. И вот что интересно:

— Чем больше информации давали ChatGPT, тем лучше получался план. Логично, да?
— Но даже самый лучший план из трёх не дотягивал до идеала. Тренеры часто ставили оценки ниже среднего.
— Самый простой план (с минимумом входных данных) получил низкие оценки почти по всем пунктам.

Что это значит для нас, любителей бега? Во-первых, ИИ пока не заменит опытного тренера. Во-вторых, если уж использовать ChatGPT для планирования, то нужно давать ему как можно больше информации о себе и своих целях.

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

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

Кстати, это не первое исследование, касающееся использования ИИ в медицине. Часто предлагаемые ИИ планы выглядят довольно реалистично, но при ближайшем рассмотрении оказывается, что там полно ошибок. Человеческое общение сложно заменить на операции ввода-вывода данных. Слава людям! 😀

Наблюдения про пульс и сон

20241014_081832_6d4608.webp
График времени сна и пульса покоя

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

20241014_081859_16d213.webp
График продолжительности сна

20241014_081925_b93b0e.webp
Пульс покоя и во время тренировок

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

— Средняя продолжительность сна у меня 6 часов 18 минут;
— За год пульс покоя чуточку сместился вниз. С августа по декабрь 2023-го пульс покоя был 49-51, то с марта по август — 47-50.

Что тут можно сказать: успокаиваюсь 😀

А ещё хотел написать про измерение пульса без часов. Это очень простая вещь, но умные часы сделали нас глупыми и беспомощными, так что некоторые вещи забываются, несмотря на их простоту и очевидность. Я иногда бегаю в обычных часах и из измерителей пульса там есть только секундомер. Так вот, чтобы замерить пульс в моменте, достаточно посчитать его на внутренней стороне запястья, около основания большого пальца в течение 10 секунд и умножить на 6. Данные не самые точные, но этого достаточно, чтобы понять надо ли еще отдохнуть или можно двигаться дальше.

Puma Velocity Nitro 3

20241014_082026_5c5c72.webp

На выходных купил себе кроссовки. Изначально шёл в магазин за Nike Pegasus, но когда примерил, то вспомнил, почему нет. Дело в том, что у меня уже были пегасусы, трейловая модель. Если интересно, вот ссылка на обзор. И вот по характеристикам и износостойкости они были прекрасны. Отбегал в них больше 700 км (и это только те, что учтены). Но был один нюанс: из-за конструкции передней части пальцы страдали. Большой палец при подъёме стопы упирался в ткань верхней части. Безымянный тоже немного страдал. В общем, хорошие кроссовки, но не мои.

В поиске тренировочных кроссовок взгляд упал на Puma Velocity Nitro 3. Они стояли такие одинокие на самой высокой полке и по хорошей скидке. Грех было не примерить. На ноге сидят хорошо. Не так хорошо, как Hoka, но и уровень поддержки стопы там совершенно разный. Hoka как будто обнимает тебя и несёт по трейловым тропам :D. Puma же ощущается просто как нормальные кроссовки для асфальта и резинового покрытия.

Вообще у Puma интересная история. В начале 2000-х она столкнулась с серьезными финансовыми проблемами. И только в 2010-х годах дело пошло на лад. В 2021 году компания запустила серию Puma Nitro, линейку беговой обуви с пеной Nitro Foam. Ключевой особенностью Nitro Foam является ее состав на основе вспененного материала, насыщенного азотом. Это позволяет достичь превосходной отзывчивости и легкости. Отзывчивость и легкость я выделил курсивом, потому что такие заявления можно услышать про любой бренд и модель кроссовок для бега. Но идея понятна: все бренды стремятся уменьшить вес, улучшить амортизационные качества подошвы. Вот в Puma сделали свою пену. Молодцы.

Насколько эта пена долговечна, покажет время. А пока буду наслаждаться ярким психоделическим зеленым, прям под цвет носков, и очень классной амортизацией. Всем легких ног 😀

Беговые планы

С утра в почте увидел письмо с заголовком “Why a Half Marathon should be your next challenge 🎯”. Ответа на этот вопрос в письме не было. Но полумарафон определенно есть в планах.

В сентябре планирую бежать белградскую десятку. В октябре 5-ку в Нови Саде. А вот 21 километр останется на самый конец сезона. В середине декабря в Черногории планирую бежать Бокешский полумарафон. Регистрация уже открылась и до конца августа цены на регистрацию будут самые низкие.

20241014_082059_410691.webp

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

20241014_082110_01e88f.webp
Kotor

Тесты на Playwriter

Немного про разработку. Работал тут с Playwright. До этого писал тесты на Cypress. И после двух лет на Cypress кажется, что вдохнул свежего воздуха. При параллельном выполнении тестов Playwriter прогоняет их быстрее. А еще он запускает отдельный процесс для управления браузером, вместо выполнения тестов непосредственно в браузере.

В результате, переписал тесты к блогу на Playwriter и настроил Github Action.

20241014_082200_e4c38c.webp

Из интересного: для запуска тестов Nuxt + Playwriter нужно в playwright.config.js указать reuseExistingServer: true.

export default defineConfig({
...
webServer: {
command: 'npm run preview',
url: 'http://localhost:3000',
reuseExistingServer: true
}
}

И еще раз про охлаждение

Ранее я писал о том, как охлаждаться в жару. И вот, когда жара уже почти кончилась, мне пришла посылка со спортивным полотенцем.

Инструкция по использованию проста: намочить, встряхнуть, носить. Сегодня было не очень жарко, и вполне можно было обойтись и без полотенца. Но эффект от ношения ощущался. Это просто тряпочка, по ощущениям градусов 20-ти. Даже если носить на руке, чувствуется прохлада. На шее — вообще отлично. Стоит 250 рублей на озоне.

Смузи как легкий способ пережить жару

Сегодня у нас снова жарко. Так жарко, что смотреть на еду даже не хочется, если она не изо льда. В такие дни я выезжаю на смузи. Не фанат этого слова, но адекватной замены этому нет. Вряд ли кто-то захочет называть это “густым напитком, приготовленным путем измельчения и смешивания различных ингредиентов”. Поэтому краткость выигрывает, пусть будет смузи. Так вот основа смузи это молоко (обычное или растительное) и овощи/фрукты. Мне нравится брать за основу банан (обычно целый) и овсяное молоко. Количество молока зависит от того, какую степень тягучести напитка надо получить. Если хочется пить из трубочки, можно добавить примерно половину стакана. Если хочется есть ложкой, можно вообще не добавлять.

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

Всем этим прекрасно наслаждаться, но насытиться невозможно. Для насыщения можно добавить овсянку. 2-3 столовые ложки.

Банан, немного молока, замороженные ягоды или кубики фруктов + овсянка. Вжжжж-вжжжж. И всё готово. Пищевая ценность такого напитка примерно 230 калорий. Это очень примерно, но достаточно для понимания. Чувство сытости обеспечено примерно на пару часов. А там или жара пройдет, или можно еще один смузи приготовить.

Если нужны идеи, что положить в блендер, можно глянуть на сайт FoodHero, там есть разные вариации смузи.

Активности недели

20241014_082235_4c26f0.webp

На прошлых выходных проехал 70 километров на велосипеде. Это была долгая классная поездка вдоль Дуная по трассе EuroVelo 6. EuroVelo 6 — это велосипедный маршрут длиной 4700 км, который соединяет Атлантику с Черным морем. Конечно, я проехал всего маленький кусочек этой трассы. Где-то на 30-м километре, я понял, что заканчиваются запасы воды. Ехать назад с пустой бутылочкой было плохой идеей. Так что после 30-го километра я ехал “до магазина”. Того самого, уникального, работающего в воскресенье 😀 Сложно передать словами ту радость, когда я всё же нашел его!

20241014_082249_6ff41a.webp

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

Возвращение к бегу после перерыва

Я тут не бегал почти три недели. Очень жарко. И вот поймал себя на мысли: “возвращаться к бегу немного страшно”. Дело не в страхе выйти на улицу, а в опасении, что забыл как бегать, растерял форму и так далее. Уверен, я не один с такими мыслями. Так вот, у меня хорошая новость: мышцы всё помнят, и вернуться в форму будет проще, чем начать с нуля. Поэтому, если вы отдыхали пару недель, то, скорее всего, не заметите больших изменений.

Согласно статье из Runner’s World, перерыв в 3-5 дней идет на пользу, так как тело успевает восстановиться после предыдущих нагрузок. VO2 max и сердечный выброс остаются примерно на том же уровне.

После пяти дней начинают происходить изменения, которые со временем влияют на форму. Объем плазмы крови уменьшается. Это приводит к снижению сердечного выброса. После 10 дней начинается снижение VO2 max на 4-5%. Мышцы становятся менее эффективными, появляется ощущение “заржавелости”.

В течение нескольких месяцев наше тело возвращается к относительной базовой форме.

Но вернемся к хорошей новости: восстановиться проще, чем начать. Поэтому не нужно переживать: “не бегал три недели, не буду теперь и начинать”. Тридцать минут прогулки или легкого бега трусцой — лучше, чем ничего. Поэтому давайте, влезайте в свои любимые кроссовочки, жара почти закончилась. Пора возвращаться к бегу!

Отладка через git bisect

Сегодня узнал о способе отладки через git bisect. Работает это путем поиска по истории репозитория.

Допустим зарелизили в прод стопицот фич и что-то сломалось. Неделю назад работало, а теперь нет. Берем коммит недельной давности, когда точно все работало и переключаемся в него: git checkout <тот самый коммит>. Ставим метку git bisect start.

Проверяем, все ли работает и если да ставим метку: git bisect good. Далее git кидает нас на следующий коммит. Если все работает ставим good, если нет: git bisect bad. И так продолжаем искать с середины диапазона сужая поиск пока не останется один коммит.

Найдя коммит, где все сломалось, уже можно понять проблему. Для завершения поиска: git bisect reset. Эта штука сегодня сильно помогла мне найти проблему, так что я решил записать все, пока не забыл 🙂

Подробнее можно почитать вот тут.

Беговые итоги июня

20241014_082329_705a86.webp

Последний день июня — время подвести небольшие итоги. Июнь был жаркий. Настолько жаркий, что пришлось сместить пробежки с 9-ти на 7 (и раньше). Это не очень удобно, иногда просыпал, иногда пропускал потому что, был не готов бежать, спрыгнув с кровати и без кофечко 😀. Но, тем не менее, тренировки стали регулярнее.

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

С регулярностью пришло и увеличение скорости. А ещё количество мозолей увеличилось 😀.

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

Как охладиться во время бега в жару

Основная тема обсуждения летних забегов — кто во сколько бегает и бегает ли вообще. Бегать в жару ужасно. Многие мои знакомые перенесли свои тренировки на раннее утро или на ночь. Я и сам сместил пробежки с 9 утра на 7. Можно ставить их ещё раньше (если будут силы просыпаться, хаха). Даже в 7 утра уже жарко: по ощущениям 23+ и бежать некомфортно. В какой-то момент в голове возник вопрос: а есть ли системы охлаждения?

Оказывается, есть. Единого названия у этого нет, но можно искать по запросу “охлаждающие полотенца” и “охлаждающие платки”. Полотенца сделаны из специального материала с высоким коэффициентом теплопроводности. Основной принцип работы — охлаждение за счёт испарения.

20241014_082405_fde0a9.webp
Выглядит это полотенце примерно так. Картинка из интернета.

В некоторых видах платков есть пакетики с гелем. Перед использованием платок помещается в морозильную камеру (хотя есть варианты, которые просто замачиваются в воде).

20241014_082427_8f81eb.webp

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

Выдра трейл

Возможно звучит несколько безумно, но единственный вопрос, который меня волнует в 4:30 утра это “какие шорты надеть”. Через час надо стоять на перекрестке Ослобождения и Горького, чтобы запрыгнуть в бус и отправиться в Градац. И вот, проснувшись в 4 утра, я сижу, потягивая кофе, и думаю про шорты в которых выйду из дома. Выбор состоит из двух вариантов: обычные джинсовые или обычные спортивные. В обычных джинсовых не побежишь. Хотя для бега у меня есть беговая форма, но почему-то именно в этот момент мне кажется, что надо максимально перестраховаться и взять на себе второй комплект для бега. Чтобы что? Чтобы пробежать дистанцию еще один раз, но уже в чём-то другом? 😀

4:44. Утро, время потупить. Потягивая кофе, пытаюсь решить очень сложный вопрос.

В 5:30 запрыгнул в микроавтобус и вместе с группой таких же любителей встать пораньше, чтобы пострадать, поехали.

В 9:10 мы все еще стояли у стартовых ворот. В десяти метрах справа шёл дымок из мангала, где готовилось что-то очень мясное и вкусное. Если честно, хотелось пойти и поесть. Потому что те два бутерброда, съеденные мною в 4:30, давно уже переварились.

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

В 9:20 внезапно раздался хлопок и все дружно возрадовались, захлопали и побежали. Эм, и это всё? В том же Бечее за полчаса до забега гудела вся площадь: со сцены проводили зажигательную зарядку, играла музыка, уже стояли палатки с едой и напитками. Было ощущение классного праздника. А тут — хлопок в тишине и все побежали.

Бежали мы недолго. Как и в Повлене толпа столкнулась с первым же препятствием через 100 метров от старта. Это были закрытые решетчатые ворота с калиткой в 90 см. Более пяти ста участников встали через сто метров от старта, пытаясь пройти в дверь. Давки не было, было лишь долгое и медленное движение вперед.

После ворот свобода и первый брод через 300 метров. Холодная вода по щиколотки, брызги во все стороны и дикий восторг. Бежать в низине очень классно. Бежишь себе в тени и прохладе. Только и слышится “шлёп-шлёп, шлёп-шлёп”. Мокрые кроссовки чавкают в грязи и все бегут, смотря под ноги. А под ногами грязевая каша, ветки и корни деревьев, выступающих из-под земли.

20241014_082539_e51918.webp

Ещё одна остановка была примерно через 1.7 км. Взбирались в гору по тропе и где-то на середине стометрового подъема встали. Почему? Да просто тем, кто дошёл на вершину захотелось сделать фото. Вот и стояли и ждали, пока все фотографируются 😀 Стоять в середине подъема скучно. Когда удавалось — обходили друг друга через кусты. Но занятие такое себе, кусты там чаще всего непролазные или подъем настолько крутой, что и зацепиться не за что. Так что приходилось ждать на тропе.

20241014_082613_4ea9bc.webp

Второй подъем был на пятом километре. К этому времени толпа сильно разредилась. Кто-то остался сзади, кто-то оторвался вперед. Но очереди уже не было даже на двухсотметровом подъеме. Забавно, но пока ползешь двести метров вверх постоянно думаешь о том, когда же вершина. Ползёшь, потому что бежать настолько вертикально уже не выходит примерно через четверть пути. И всё время думаешь “когда же вершина”, смотришь на часы и считаешь метры.

Осталось 71 метр до вершины. Обхожу людей с палочками. Они прижались к краю, пропускают и улыбаются. В голове мелькает мысль постоять с ними. Судя по всему им нравится стоять, почему бы не присоединиться?

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

20241014_082636_2ee6d0.webp

5, 4, 3, 2, 1 и вот она, вершина. Там уже пункт питания и плоская трасса, уходящая в лес. А всего через 600 метров спуск! Да, подниматься наверх тяжело, но спускаться на 300 метров вниз еще тяжелее. Ноги несутся вниз и только и остается, что пытаться бежать медленнее.

20241014_082707_3e3817.webp

Я очень ждал, что в конце будет хотя бы ещё один брод, чтобы можно было плюхнуться в воду и немного охладить мышцы. Но брода не было. Был мостик, резкий поворот и вот уже те самые металлические ворота, в которых час назад была пробка. Оставшиеся сто метров хороший асфальт, музыка и аплодисменты. Широкого улыбаешься, стараясь выглядеть нормально, чтобы сделать фото на финише и вот она, медаль финишера уже висит на шее. Беру бутылку воды и плюхаюсь на траву недалеко от финиша, чтобы ждать остальных. Эти 10 км я прошёл за 1:44:50. Трасса, которую на обычном асфальте я прохожу на 55 минут, заняла у меня почти два часа. Но было очень классно. Мокро, грязно и красиво.

20241014_082918_d4e40f.webp

Конечно была еще и поездка обратно и плескавица, которую я съел примерно через час после финиша. Огромная котлета в булке, в сто раз вкуснее того, что делают в любом МакДональдсе. Лук, помидоры и соус, который я даже не смог запомнить, прикрывали котлету, приготовленную на мангале. Все это тоже было частью забега. Но главное впечатление было на трассе. Там где надо было прыгать по воде, шлёпать по грязи и ползти наверх, мечтая поскорее ползти вниз.

Немного git-а

git branch --contains <commit> – позволяет посмотреть в какой ветке коммит. А чтобы найти все ветки, понадобится флаг -a:

git branch -a --contains <commit>

При необходимости можно просто перейти на коммит: git checkout <commit>. Или вынести его в новую ветку: git checkout -b new-branch-name <commit>.