Category: Future articles

Датчик за фини прахови частици – как, защо и няколко идеи

Снощи най-накрая свързах датчика за твърди частици с този за температура и развойната платка и всичко тръгна от раз.

Хардуерът

Развойна платка: ESP8266
Датчик за твърди частици: SDS011
Температурен датчик (+атмосферно налягане и влажност): BME280

 

Сега идеята е да измисля начин да събера всичко в приложим вид, който да изнеса извън терасата. Мисля да опаковам (голяма част от) сензора за температура/влага и захранващия кабел с термошлаух. Сензора за твърди частици е измислен добре, защото  в отвора от който всмуква пробите може да се сложи тръбичка, която да изнеса навън. И да – трябва да си окомплектовам кабелите, да махна бредборда, който използвах само да закача термо датчика, че не ми стигнаха кабелите.

Софтуерът

От софтуерна гледна точка нещата са елементарни. В сайта на Air Bulgaria са публикували готов firmware, който прави впечатляващи неща с контролера. Някои от тях:

  • WEB сървър, който сервира данните от датчиците в малка страничка достъпна от всеки потребител логнат в същата мрежа в която е устройството;
  • Вдига сам Wi-Fi spot към което потребителя може да се закачи за първоначална настройка. След това esp8266-то се закача за вашата мрежа и става клент както всяко друго Wi-Fi усторйство закачено към домашния ви рутер;
  • DHCP сървър за първоначална инициализация;
  • Може да изпраща данни към един или повече API endpoints;
  • Изпраща автоматично данните към http://luftdaten.info, а оттам https://airbg.info ги взимат и парсват до подходящ вид на тяхната карта;
  • Може да изпраща данните към InfluxDB;
  • Поддържа OTA updates (On-The-Air);
  • Поддържа доста сензори и дисплеи, които се настройват елементарно.

 

Моята идея

Към стандартната функционалност бих искам да добавя следните неща:

  • Физическо укрепление на системата (кутия, термошлаух, както писах по-горе и други малки неща);
  • Данните ще хвърлям и към InfluxDB, който (по идея на Стан) ще бъде в контейнер (хем да се науча да работя с тях, крайно време е!);
  • Grafana dashboard, защото всеки обича да му е красиво и функцоинално;
  • Независимо захранване. Понеже SDS011 не пести много ток, ще мисля вариант с измервания на една минута. Същото се отнася и за температурния датчик (и евентуална корекция за да синхронизирам двата). Енергонезависимостта му ще е осигурена с power bank (ако някой ден ми попадне соларно панелче, което да пълни power bank-а през деня ще стане епично).

 

Ето и как изгелжда работещия проект на с firmware-а на airbg.info:

 

Ако някой има интерес или въпроси може да пише под статията. Ако мога ще отговарям.

 

P.S. Най-важните неща за накрая. Нямаше да се хвана с този проект ако не бяха три основни фигури – Орлин, който на Zara Code Week миналата година ни показа, че електрониката изобщо не е толкова сложна колкото си мислим и че всеки в днешно време може да реализира IoT проект за отрицателно време, на Стан, че ми подари без причина ESP8266 и на Златина че ме изтърпя докато в нас беше катаклизъм от кабели, платки и документация.

Малки SQL трикове за WordPress

Когато не му се спи на човек ума му решава да прави неща, които в нормални условия не биха се случили (не и в този вид).
Ето и списък с няколко интересни SQL заявки, които можете да използвате докато работите с WordPress.

Как да покажем общия брой публикувани постове за определена година

В този блог за 2017 година съм публикувал 155 поста. Чудя се това малко ли са или много, но колкото-толкова.
Интересно е друго – начина по който видях това. Оказа се съвсем лесно с SQL заявка, която изглежда по този начин:

select count(*) from wp_posts where YEAR(post_date) = 2017 and post_type = 'post' and post_status = 'publish'

Имайте предвид, че тази заявка показва само публикуваните постовете (не page или някакъв custom post type) за 2017 г.

Примерен резултат:

mysql> select count(*) from wp_posts where YEAR(post_date) = 2017 and post_type = 'post' and post_status = 'publish';
 +----------+
 | count(*) |
 +----------+
 | 155      |
 +----------+
 1 row in set (0.00 sec)

Ако искате да видите колко draft-а имате можете да изпълните тази заявка:

select count(*) from wp_posts where YEAR(post_date) = 2017 and post_type = 'post' and post_status = 'draft'

Примерен резултат:

mysql> select count(*) from wp_posts where YEAR(post_date) = 2017 and post_type = 'post' and post_status = 'draft';
 +----------+
 | count(*) |
 +----------+
 | 116      |
 +----------+
 1 row in set (0.00 sec)

 

И не – няма грешка. Имам цели 116 поста, които така и не съм публикувал, повечето от които са започнати и недовършени истории, няколко tutorial-а (още ме е яд, че не завърших този за HTTP/2) и няколко пътеписа.

Как да сменим siteurl и homeurl с един ред

Ако не сте чували за siteurl и homeurl няма страшно. Но ако се наложи да мигрирате сайта, да смените домейна или да добавите/премахнете HTTPS поддържка ще се наложи да поработите с тях.

UPDATE wp_options SET option_value = replace(option_value, 'http://www.nedko.info', 'https://www.nedko.info') WHERE option_name = 'home' OR option_name = 'siteurl'

След изпълнението на тази заявка при опит да достъпя сайта ще бъда пренасочван автоматично от non-HTTPS към HTTPS версията на блога. Можете да я използвате и при смян на домейн да кажем като смените втория линк на този, който желаете. Не е най-добрия пример, но е важно да схванете как работят siteurl и homeurl. Друга полза е ако ъпдейтвате сайта и имате да мигрирате да кажем https://nedko.info/v2 към https://nedko.info.

Работа с пароли

Не сме безгрешни – забравяме си понякога паролите или при нужда да дебъгнем проблема в някой клиентски сайт понякога се налага да влезем с подходящите инструменти.

UPDATE wp_users SET user_pass = MD5( '123456' ) WHERE user_login = 'admin'

Тази заявка ще смени паролата на потребителя admin с 123456.

 

Ако ви се наложи да работите върху клиентска инсталация, но не искате да сменяте паролата на потребителя можете първо да запишете хеша ѝ със следната заявка:

select user_login,user_pass from wp_users

Примерен резутат:

mysql> select user_login,user_pass from wp_users;
+------------+---------------------------------------------------+
| user_login | user_pass                                         |                           |
+------------+---------------------------------------------------+
| admin      | $P$B5&50UGz0.kW3tq6jifraX.hT!РqZP.                |
+------------+---------------------------------------------------+
1 row in set (0.00 sec)

Сега запишете стойността на user_pass полето, изпълнете горната заявка, която ще смени паролата на 123456 и като сте готови просто изпълнете следната заявка за да върнете старата парола:

UPDATE wp_users SET user_pass = '$P$B5&50UGz0.kW3tq6jifraX.hT!РqZP.' WHERE user_login = 'admin'

 

Изтриване на всички спам коментари

Преди време ми се наложи да изтрия от един блог над 10 000 коментара. Tricky-то беше, че имаше и коментари от хора, не само спам. Решението е тривиално и се нарича Akismet. Безплатната версия върши страхотна работа, но имах проблем с привилегиите на DB потребителя и коментарите маркирани като спам не се триеха. За това използвах тази заявка за да ги изчистя (~10 000 коментара от които 90%-95% спам се изтриха за под 2 секунди):

DELETE FROM wp_comments WHERE comment_approved = 'spam'

Ако искате да изтриете и тези със статус awaiting moderation можете да ипозлвате следната заявка:

DELETE FROM wp_comments WHERE comment_approved = '0'

Как да видим всички неизползвани тагове

Ако искате да видите дали имате тагове, които никога не са използвани можете да изпълните тази заявка:

SELECT name,count from wp_terms wt INNER JOIN wp_term_taxonomy wtt ON wt.term_id=wtt.term_id WHERE wtt.taxonomy='post_tag' AND wtt.count=0

Примерен резултат:

mysql> SELECT name,count from wp_terms wt INNER JOIN wp_term_taxonomy wtt ON wt.term_id=wtt.term_id WHERE wtt.taxonomy='post_tag' AND wtt.count=0
 -> ;
+--------+-------+
| name | count |
+--------+-------+
| blabla | 0 |
+--------+-------+
1 row in set (0.00 sec)

Ако обаче искат да видите (спорд мен далеч по-практично) тагове, които са използвани 5 или по-малко пъти, сортирани по възходящ ред можете да изпълните следната заявка:

SELECT name,count from wp_terms wt INNER JOIN wp_term_taxonomy wtt ON wt.term_id=wtt.term_id WHERE wtt.taxonomy='post_tag' AND wtt.count<5 order by wtt.count DESC

Примерен резултат:

mysql> SELECT name,count from wp_terms wt INNER JOIN wp_term_taxonomy wtt ON wt.term_id=wtt.term_id WHERE wtt.taxonomy='post_tag' AND wtt.count<5 order by wtt.count
+--------------------------------------------------------+-------+
| name | count |
+--------------------------------------------------------+-------+
| blabla | 0 |
| humor | 1 |
| кино | 1 |
| котка | 1 |
| vulnerability | 1 |
+--------------------------------------------------------+-------+
5 rows in set (0.00 sec)

Извличане на всички мейли от коментарите на потребителите

Маркетинг хората имат нужда да пращат таргетирани съобщения до разни хора и един страхотен начин да изкарате списък с всички мейли от коментиралите по блога хора е следния:

select comment_author_email,comment_author_url,comment_date from wp_comments order by comment_date DESC

Тази заявка ще покаже мейла, сайта (ако има такъв попълнен) и датата на коментара. Това можете да го ползвате като ориентация.

Примерен резултат ще върне следните данни:

[email protected] | http://www.somedomain.com | 2017-11-01 17:18:19 |

Иначе можете да лимитирате само до списък с мейлите така:

select comment_author_email from wp_comments

 

P.S. For non-Bulgarian speakers:

  • What are you doing here?
  • If you think that the article will be useful I can translate it in English.

Равносметката 2017

Мина още една година. И по навик казвам нещата, които не съм направил първо, защото са по-важни.

  • Не водих лекции в Социалната Чайна. Преди няколко месеца излязоха открито и казаха, че парите им не стигат. Тогава се свързах с тях и говорихме да водя лекции в тяхната зала, а приходите (всеки плаща колкото реши) да отиват в Чайната. По същото време смених работата и реших да забавя нещата за да мога да се концентрирам върху нея;
  • Почти не снимах. За поредна година;
  • Почти не танцувах;
    • Нямам нито едно представление за годината.
  • Не говорих на TEDx. Темите ми щяха да бъдат свързани с депресията или Quality Assurance in real live;
  • Не говорих на WordCamp Varna 2017. Предложените ми теми бяха за security и performance testing. Не ги одобриха;
  • Почти не свирих;
  • Не карах колелото точно колкото исках. За това вече писах;
  • Не четох толкова, колкото исках;
  • Не писах толкова, колкото исках.

 

Нещата, които се случиха:

  • Започнах нова работа. За момента това е най-доброто място в което съм работил в съотношение колеги/проект/условия. Компанията е Немечек;
  • Направих моето Голямо Каране. До половината. Три дни интензивно каране и общо 264 км, спане в колата, катерене на връх Ботев, ядене на малини и ягоди на средата на нищото;
  • Случи се това. И близките ми за здрави и повечето дори са щастливи. Повече не мога да искам. Дори и котката Иво е жив и здрав (и дебел);
  • Изкарах 2 дуатлна (Злати се включи във втория и го изкара също), на единия дори и завърших в контролното време. Имам си и медал!
  • Пътувахме със Злати много. Обикаляхме из България, а тази година направихме и няколко пъти Варна-София-Варна със самолет;
  • Изкачихме връх Ботев за ден и спечелих от габровец 10-тина бири;
  • Говорих в WordPress meetup Varna за “Security of WordPress”. Получи се много добре;
  • Говорих и в “ИТ Форум” в Технически Университет Варна. Там организацията беше зле, след като си написах лекцията после 5 (!!) човека от предната фирма в която работих я редакритаха, рязаха, добавяха, осакатяваха докато не стана една страхотно скучна лекция типична за скучно-университетските и/или корпоративни среди. И имаше 10 човека (заедно с лекторите);
  • Говорих във “Вечер на таланта” за моето Голямо каране. Беше интересно, даже има и видео как фъфля;
  • Говорих в “EU Code Week Varna 2017” – беше най-класното и посещаемо събитие провело се в зала “Black Sea Hall” на хотел “Черно Море”;
  • Месец по-късно говорих в “Zara Code Week 2017” поканен от Венко Добрев. Беше най-сърцатото събитие, срещнах ценни хора, имаше крайно черен хумор вечерта преди моята лекция, заразих се от ентусиазма на Орлин. Абе беше страхотно преживяване;
  • Започнах да се заигравам с микроконтролери. За момента съм загърбил Raspberry Pi-то и си играя с ESP8266 (контролер с 80 Mhz процесор, micro USB захранване, вграден WiFi, I2C, etc.), DH11 (датчик за температура, влажност и атмосферно налягане), BSP280 (като DH11, но много по-точен и производство на Bosch) и голямата ми гордост – SDS011 (датчик за твърди частици). Като сглобя всичко това ще се включа в Air Bulgaria да следим в колко мръсен въздух живеем;
  • marvin е още жив. Покрай него научих супер много за системната администрация и как работи отдолу nginx. Нико, Владо – благодаря за помощта, която ми дадохте през времето когато го омазвах солидно;
  • Тръгнах да чета Хари Потър, до момента съм към края на петата част – “Хари Потър и Ордена на Фениска”. Четох и Бакман, Весела Тотева и Агата Кристи. Следващата година ще дочета Потъра и после – Глуховски. И повече от 9 книги за годината(срам, срам…);
  • Отидохме на Hills Of Rock, счупихме главите и си изкарахме потресаващо добре.

  • Не мога да повярвам колко дълга ми стана косата.

Нещата, които ще ми се случат:

  • Да направя каквото мога за Чайната;
  • Да правя хората по-добри. Винаги съм вярвал в споделянето на знания и ще продължавам да го правя докато мога;
  • Да чета приказки в дома за деца лишени от родителски грижи;
  • Да се случи моето Голямото каране 2 – този път 500+ км за седмица, вероятно пак сам;
  • Силна бреветна година – 200км, 300км (евентуално 200+300 във Варненски бреветен уикенд) и ако успея да вляза във форма – и един 600 км (400 е за ден, а 600 има време човек да поспи 2-3 часа за това казват и че е по-възможен);
  • Дунав Ултра – много се надявам да успея да участвам и да финиширам в контролното време;
  • Да изкарам първия си мартон.

 

Нещата, които заболяха:

Мина EU Code Week Varna 2017

И ето, че мина Code Week Варна 2017.

Презентацията си я направих на 90% Петък вечерта стоейки до около 2:00., а сутринта отидохме два часа по-рано от старта на Code Week-а в Costa Coffee, изсмуках едно flat white (което съдържа три къси еспресота) за отрицателно време и пренаписах 80% от презентацията.

Качихме се в презентационната зала на хотел “Черно Море” и останах много доволен – имаше мек килим под нас (който е от съществено значение да се изчисти кънтенето в залата), страхотни столове, тюлени пердета, които не пропускат светлина за да може да се вижда какво презентирам на проектора.
Малко преди старта оставих малките изненадки, които Немечек любезно ми предоставиха (отварачки за бира, които са и поставки за такава, весели химикалчета с ръчички и тефтерчета със скрити в тях бонбонки (казващи се “Plan B – creativity boosters”)) и беше крайно време за първи контакт с хората (и тест на това дали всички ме чуват добре. Побърборихме си малко с всички (докато все още влизаха хора) и си личеше от тогава, че презентацията ще е приятна – средната възраст беше под 27, хората бяха разговорливи и не се притесняваха да комуникираме открито.

Презентацията започна в 10:10, Галин Желелязков, организатора на EU Code Week Varna, започна с всъпателни слова за Code Week, разказа с лекота за организацията и идеята на събитието и дойде моя ред като първи лектор.

Залата събира по думи на организацията 120 човека и беше почти пълна, което беше много приятна гледка (особено и за първа лекция). Говорихме на дълго и на широко за всякакви неща, хората се включваха от време на време, имаше и кикотене при някои от меметата, които бяха в презентацията.
Силно се надявам някой да се е вдъхновил и да е почел малко повече по темата.
На Александър Тодоров дължа извинение, че обърках къде работеше. Правилния отговор е Red Hat Enterprise.

И на IT бога Светлин Наков на който му обърках името.

Останалите лекции бяха на:

Страхотни лекции. Юлиан по навик е харизматичен и надъхващ, Преслав Михайлов с който се запознахме преди началото на събитието беше приятен и с лекота разказа нещата, които очевидно са му доста интересни, Жан говори със страстта на човек, който се кефи супер много на това, което прави, Галина Момчева отново демонстрира класа с нейните идеи, а накрая Aaron събра всички около себе си и демострира колко е интересно човек да се занимава с 3D Printing.

 

И малко линкове:
Линк към събитието във Фейсбук;

Медийна подкрепа на събитието имаше от moreto.net, БНР Варна, kmeta.bgyouthub.bg, Информационна агенция “Черно Море” и интервю с Галин Желязков. Искаше ми се информационните агенции и “информационните агенции” да имат малко въображение и да си пишат новините сами, а не да copy/paste директно от събитието.

Презентацията ми:


(Ако се чудите как се embed-ва Google Slides в WordPress (и не само) можете да прочетете тук)

Моите видеа:

Част първа:

Част втора:

Част трета:

 

 

Всички видеа можете да намерите тук:

 

И малко снимки :)

Преживях първия си дуатлон

Вчера беше един много интересен ден (представете си, че казвам думата “интересен” с един много завлачен, пълен със съмнения, но със светещи очи глас).

От около месец в главата ми беше идеята да се включа в дуатлон дисциплината на iRun – “Горско бягане и колоездене “Аладжа манастир”” – 35 км. колоездене и 13.5 км. бягане.

Искам да уточня две неща:

  1. На истинско MTB (добре запознатите сигурно ще ми се изсмеят с онзи пренебрежителен начин по който само един MTB колоездач може да се изсмее на шосеен колоездач като чуе Sprint Apolon Pro 27.5″ да минава за истински MTB велосипед, но на мен ми хареса), което наех от Здравко от Устрем (благодаря за което!) и карах точно веднъж преди състезанието;
  2. През живота си не съм бягал повече от 7 километра и то по асфалт.

 

tl;dr

Жив и здрав съм. Организацията беше невероятна, маркировката и пунктовете – също.
Мамо, татко – не четете надолу. Може да има неща, които може да съм пропуснал да ви разкажа :)

Подготовката

Ден преди състезанието имах възможност да изляза да пробвам МТБ-то. Подкарахме колелетата със Злати и отидохме да се запиша там, където се провеждат редовните бягания на iRun в Морската Градина. 30 кинта назад (защото се записах в последния момент, иначе цените бяха респективно 20 лв. и 25 лв. за по-късно записалите се) и се сдобих с номер петстотин и две, който щеше да бъде извикан по мои сметки около девет пъти на седем контроли и два финала с и без колело и един як бъф, който носих със себе си по време на състезанието. След това потеглих сам към Декатлон от където си взех резервна гума и зацепих с пълна мощ към Аладжа Манастир. И понеже не познавам MTB маршрутите реших да мина по шосе до Аладжата и после да направя малко горско каране.

 

Крах и един научен урок

Още преди да изляза от града усетих трудности с колелото – гумите бяха прекалено широки, шока докато не започнах да го карам напълно заключен обираше много голяма част от енергията ми и не я пренасочваше към педалите и респективно колелата, а се сгъваше и я поемаше лакомо както аз сгънах супата, която Ели щеше да ми даде след около 30 часа.

Макар и чел немалко не можах да преживея лесно разликата между шосейния и планинския велосипед. Гумите са огромни и меки, кормилото е право и доста широко, педалите не се закопчават, а платформите не бяха добри, предните и задните плочи се сменят с палцови команди, които понякога бърках и най-вече дисковите спирачки, които спираха много повече отколкото понякога исках.

MTB велосипеда има свой живот и ако мога да го съпоставя с животно то би било повече като нещо горско, което иска да върви с огромните си лапи върху листа, да се цамбури в реки, да се цапа до ушите и да е свръхстабилно. И респективно изобщо не се чувства добре извън гората.

Едвам стигнах до Аладжата, баира го взех с яд и дойде ред на насечения (за мен) терен. Вече преполовил силите си влязох на територията на MTB-то и напуснах своята. Отключих шока и се понесох по равните пътеки около манастира. Усещах колко много абсорбира шока, колко абсурдно добри са спирачките и как големите и меки 27.5″ (на около 2.0 бара) гуми стъпват стабилно на земята. Усетих как си измених позицията и как започнах да се чувствам по-сигурен и стабилен. За жалост това продължи около 20-тина минути.

След края на карането ми и връщането в града се чувствах съсипан – емоционално и физически. Средната ми скорост на най-бързия ми и любим терен беше едва 17 км/ч, а само преди няколко дни бях направил рекордните за себе си 27.9 км/ч по почти същия маршрут с шисейката. Знам, знам, няма нужда дори да си помисляте, че ги сравнявам, защото са напълно несъпоставими, но при каране на почти един и същи терен волно или не се сравненията сами изплуваха.

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

 

Състезанието, част първа

По традиция преди състезания и бревети ставам по-рано, закусвам бавно, слушам малко музика, проверявам екипировката и велосипеда си още веднъж и ако имам време чета своя разказ “Не мога?” (колко помпозно, а?). Този ден не беше изключение.
Едвам наблъсках колелото в колата и тръгнах към месността Аладжа Манастир около час и половина преди официалния старт. Като стигнах вече имаше доста хора, велосипеди, деца, кучета и всички бяха усмихнати (дори и добермана, който беше единствения вариант да си вдигна средната скорост по баирите нагоре, ми се стори усмихнат). Изкарах колелото, сглобих го, приготвих си номера (петстотин и две, да не го забравите до края на разказа, ей!) и потърсих приятели. Видях Право, Карен и още двама-трима. Отбих се при Никото от Нико Байкс и се заговорихме.
По едно време един човек дойде при мен и ми каза – “Случайно преди да си имал един Drag Grand Canyon?”. Учуди ме въпроса, защото Drag-а го продадох преди две години, но именно с него участвах на първото си (и единствено до вчера) MTB състезание пак на Аладжа Манастир. Оказа се, че ме помнил от тогава и ми изказа респекта си (това беше, защото Drag-а е хибрид, който някой би сметнал, че е убийство да бъде каран в такива условия на насечен терен и особено с 28 мм си гуми).

После минах покрай щанда на Допел Херц и се загледах в нещата им – имаше магнезии, витамини, малки еднократни дозички с кофеин и таурин (от които се възползвах) и две добре подготвени за повода жени зад щанда. Заредих, поговорихме малко с момчетата от Нико Байкс и се наредихме с Карен и всички останали колоездачи на старт/финиша. Имаше 20-тина минутно забавяне на старта, предполагам са имали солидна причина за това и смятам, че такива неща се случват така, че нямаше драма. 30 минути след нас стартираха и бегачите.

Старта

Старта беше даден и невидима сила ни закрепи един за друг докато не образувахме нещо като голям рояк от плът, метал и гума, който се завихри бясно към едни стълби, които бяха щедро намазани като филия с мармалад от ягоди, но вместо слузесто-червената гъста течност имаше загнили листа, кал и камъни. Минах с доволно темпо и ясната представа, че ако някой от нас падне е напълно вероятно да има много лоши последствия. За моя радост тези пред и зад мен бяха по-опитни и не ми дадоха и момент в който да се притеснявам за собствената си цялост и на тези около мен.

Последва каране по почти равен терен и със супер много хора около мен – деца, мъже и жени на всякаква възраст, подготовка и велосипед.
Първото спускане беше на едва десетата минута от старта и за шест минути бях цар на света – беше сравнително спокойно спускане с много хора отпред и отзад, листа, тишина (макар и имам опасения, че някой осемдесет и пет годишен англичанин нямаше да мисли така), свеж въздух и красота.

И последва първо изкачване, което по Страва профила ми е имало скакалка (или по-скоро стена?) с денивелация от 31.2% (в Strava профила ми на 22:11 минута). Бутах, карах, бутах, карах и го изминах.

 

Искам да се извиня на хората, които четат този пост – мислих да опиша всеки баир, гледка и спускане, листата и аромата, хората и усещането, но историята ще заприлича на енциклопедия пълна с точни проценти, цифри и бездушие точно като стар балон с въздух. За това ще опиша общото, сравнително абстрактно усещане на това да караш за пръв път 35 км горско и след това да изтичаш 13.5 км.

Маршрута беше нечестно труден на места – имаше стени, които бяха по 4-5 метра високи, които по-слабите физически колоездачи (имаше едно момче, което беше под 40 кг например) сигурно никога нямаше да могат да прескочат без помощта на други. Имаше и спускания, които приличаха на много гъста крем супа с крутони забъркана предната вечер от дъжда от пръст и камъни. Имаше и пътеки, които бяха невероятно красиви, минахме през нива (да – минахме през средата на нивата. Бяхме инструктирани в началото на състезанието, че преди е имало път там, но предния ден са го изорали), минах през реки и стадо овце, срещнах интересни хора.

Моето състезание с другите свърши след не повече от 30 минути след старта и се изправих срещу най-големия си враг – самия себе си.

Времето минаваше и с него се срещах с други колоездачи, срещнах се и с един овчар, стадото му и огромното му рошаво с кални крака куче. Не се запознах с него, но имаше вид на човек, който се казва Данчо, насъбрал трудностите на селския живот на лицето си точно под гъста бяла брада. Махнах от далеч и с усмивка извиках – “Добър да е деня!”. Бай Данчо се опули малко и като ме прецени се усмихна блажно и каза – “Добър да е, момче. Хайде давай напред и успех!” докато бутна с гегата един коч. На 20 метра след това се озовах пред 30-40 см. дълбоко поточе. Вдигнах колелото и преминах по камъните като госпожичка за да не си намокря обувките, които вече се бяха превърнали в бълвоч от кал, пясък и слама.

Малко по-напред се срещнах с още трима колоездача като имаше време да си поговорим бутайки по огромния баир нагоре. Там беше и едно момче на около 13-14 години, което буташе мъжката колелото си нагоре. Предложихме му помощ с което той се обърна към нас и с неочаквана мъдрост и сериозност каза – “Колоезденето е индивидуален спорт. Ще се оправя сам, благодаря.”. Бях впечатлен и му разказах как ние като караме по бревети си помагаме с гуми, помпи, храна, вода и с каквото можем. После без да го питам му хванах единия грип и го избутахме заедно до някъде след което той искрено благодари и пое по своя път докато аз все още се опитвах да си успокоя дишането.

Малко по-натам останахме само двама и се придвижихме заедно докато пътя не свърши. От нашата перспектива имаше поляна до края на пътя и после бездна. Вече бяхме на спускане и много внимателно стигнахме на безопасно разстояние от ръба когато нещо накара кръвта ми, която вече бълбукаше от горещото време (би трябвало да е било около обяд) да се вледени като студения поглед на служител в НАП – не беше трап, а отвратително стръмно спускане. Погледнахме се опулено, намерихме маркировката в далечината и полека-лека с колело в ръка слязохме на безопасно за спускане място. Сигурен съм, че голяма част от участниците са се спуснали от най-високата част, но не съм сигурен дали искам да знам какво е било усещането.

Преминахме още едно поточе, после още едно. Дойде контрола (всичките контроли бяха с ентусиазирани млади хора, които имаха всичко от което имах нужда (като на последната бегачна контрола имаше дори и сол в пакетчета), поговорихме си малко и тръгнах. Оставаха ми само шест километра, какво толкова може да се обърка? Е – обърка се. Терена беше каменист, а отдолу – прясно засъхнала почва. И това по баир нагоре. Шест километра ги изкарах (избутах) за почти един час! Това ме сломи. Напъвах се, дърпах, бутах, бях целия зачервен и бесен на себе си, псувах наум, чудих се къде съм сбъркал в разпределението на силите си, в храненето и пиенето на течности. Мразих се. Карах отвратително бавно, силите изцяло ме напуснаха. Исках да легна и да изчакам някой да дойде да ме прибере. Не исках повече. Бях обиден на себе си, че съм толкова жалък, че не мога да изкарам едва 36 км (като до преди 3 седмици изкарах 370 за два дни), че бях дебел. Очите ми започнаха да губят фокус и точно в този момент една груба нота на отчаяние излезе от гърлото ми. Беше нещо като приглушен вой. Това ме смути неимоверно много, защото имаше хора около мен и това сякаш ме стегна.
После ме настигна един бегач и ме изпревари, после аз го изпреварих, после той мен и така бях изпреварен три пъти от бегач на дълги разстояния (дисциплината му беше 32 км). Реших да се стегна. “Колко километра остават още?” попитах някого. “На тридесет и пети километър сме сега”. “Ъъъ колко?”, “Тридесет и пет”, казва някой. Не повярвах, че съм почти на финала.

Финиша

Дадохме газ аз и едно момиче и заедно с наистина сетни сили се запътихме за финалния спринт.

Видях финиша.

Бях на 20-25 метра от него, карах и започнах да мисля за бягането. И в този момент момичето, което беше само метър-два пред мен падна. Аз спрях, защото моето състезание с другите беше свършило отдавна. “Давай, тръгвай.” виках. Качи се на колелото, но веригата беше паднала, “Давай, давай” викнах. Финишира 2 секунди преди мен.

 

Бях жив. Духът ми се върна и последва второто състезание. Пак с мен.
В този момент вече ми бе ясно, че няма да мога да вляза в контролното време на дуатлонистите.
Спрях се при щанда на Нико Байкс, оставих си част от екипировката и велосипеда, взех си 2 барчета от раницата и тръгнах.

 

Състезанието, част втора

Бях изтощен. Започнах да получавам жестоки крампи на бедрата, нищо, че до този момент бях приел над 1000 мг магнезиев цитрат за да избегна това. Маршрута над средата беше същия като колоездачния. Проблема беше, че краката ми не можеха да понесат повече. Започнаха да не могат да се сгъват, а за моя огромна “радост” още в началото на маршрута последва стръмно спускане, което взех на бедра и накрая се предадох.

Спрях, строполих се на земята и бях напълно наясно с две неща:

  1. Нямаше да позволя да не изкарам маршрута;
  2. Трябваше ми пейсър.

 

Странна птица съм аз – волята ми е най-силна само когато положението вече започне да граничи с невъзможното. В този момент съм излязъл с двата си крака от зоната в която ми е удобно и нещо изплува много дълбоко от мен. Нещо човешко и кокалесто, нещо, което не те хваща за гушата за да те дръпне надолу, а точно обратното – кара те да се изправиш, да драпаш с крака и ръце, да се стегнеш и да дадеш да се разбере на теб самия, че тая работа няма да я бъде.
Започнах да пълзя за кратко, изправих се на крака и започнах да вървя.
Усетих, че съм към края на състезанието си, когато започнах да вървя като патка  (тоест на цяло стъпало, видео с един нагледен пример) – това е един почти сигурен признак, че мускулите ми излизат извън контрол, а сухожилията са се изпънали до безкраен предел.
Вървях така и мучах тихичко от болка докато не стигнах до първата чешма от маршрута. Измих си лицето, пийнах от студената вода, свалих си джърсито с дългите ръкави и продължих.
Не знам кое ме накара да живна, но се случи. Вероятно е от хората, които се разхождаха в гората и се усмихваха и пожелаваха успех или от човека, който подминах докато правеше барбекю на една поляна и се провикна – “Момче, ела да хапнеш с нас, да се подкрепиш” или с това, че стигнах първата контрола. Знаех, че нямам шанс за финиш в контролното време, но не се отказах. Състезанието за мен, срещу мен, беше в разгара си и щеше да свърши след пресичането на финиша.

И от умората вероятно започнах да си внушавам някакви неща. Понеже по маршрута се срещат доста гущерчета, които са шумни докато бягат по сухите листа за около 20-30 минути бях убеден, че зад мен голямо куче или вълк (може сега да ми е смешно като си го признавам, но тогава бях отчаян) и се обръщах на всяка трета стъпка.

За късмет се оказа, че не съм сам и при поредното обръщане видях една бегачка. Оказа се по-добра от мен в бягането и ми послужи за невероятно добър пейсър. Тя определи темпото и лека полека се отправихме към пътищата със засъхнала кал, полята с вятъра, който предвещаваше дъжд и втората контрола.

Там ни посрещнаха с много усмивки млади и надъхани доброволци, дадоха ни храна и вода и ни отпратиха.

Оставаха два километра. Бях жив. Вече не ме болеше, не ми се повръщаше. Бях се изморил да ме боли и просто бягах и вървях, но не спряхме.
Срещнахме същия овчар, който ни спря и ни помоли да му помогнем да си зареди минути на телефона. Още ми става гадно като се сетя колко се разочарова като му казах, че няма да имаме време и че сме на състезание.

Видях последната маркировка преди финала, която два часа по-рано видях с колелото. Нещо в мен се обърна. Бях съсипан физически, но човек никога не знае колко много има и може докато не стигне до предела си и не види, че може още малко. И още малко. И още малко.

Финиша

Направихме последния завой и ни посрещнаха всички участници и голяма част от доброволците по трасето. Бяха се наредили за снимка зад финала и когато ги видях си глътнах граматиката. Беше много вдъхновяващо особено когато всички за секунда застинаха учудени, че има още състезатели и изведнъж всички започнаха да викат и ръкопляскат. Държах намачкания лист с номер петстотин и две пред себе си, а усмивката ми не можеше да бъде скрита.Този момент ще го нося със себе си дълго време.

Финиширахме заедно и извън контролното време.

Аз победих себе си и след втория финал вярвам станах с един кършей по-добър, по-силен и по-отдаден от когато и да е било.

 

Следфинално

Отидох при щанда на Нико Байкс да си взема екипировката и колелото, поговорихме малко с тях и видях другия Карен (до преди година и нещо не познавах нито един Карен, а сега познавам цели двама) от Averi Beers и взех един червен Гларус. Отпих една глътка, тежко въздъхнах и усетих спокойствието да се влива във вените ми.

Огледах се и видях Ели и Свилен, които видях и малко преди да започне моето бягане. “Недко – искаш ли супа?”, попита тя. Беше риторичен въпрос. Наля ми една 500 мл. боб чорба, взех си филия хляб и рая слезе на земята. Бях спокоен, не ме болеше и знаех, че за ден мога да си позволя да бъда горд със себе си.
Прибрах се – чакаха ме Злати и котката, топъл обяд и един приятен ден.

За спорта

Спорта е нещо много повече от потене по фитнесите, по горите, на колелета и с насинени крака и обелени колена. Спорта е споделено съзнание, което кара хората да стават по-добри. Кара ни да мислим за хора, които не познаваме, да спрем и да помогнем с каквото можем на човек в беда, да работим в екип и да се радваме искрено, когато всеки един финишира преди или след нас.

Малко линкове и статистики:

Снимки