✙rozho)))k✙🇺🇦


Гео и язык канала: Украина, Украинский
Категория: Технологии


Про автора: www.rozhkov.me/about
Про канал: www.rozhkov.me/about-full-of-hatred
Канал про все що не ІТ: @daily_rozhok
дірект: @xrozhokx
блог: rozhkov.me

Связанные каналы

Гео и язык канала
Украина, Украинский
Категория
Технологии
Статистика
Фильтр публикаций


Ретроспектива порад щодо боротьби зі свавіллям ТЦК

Від одного з донатерів на антену отримав питання: «Напишіть, будь ласка, пост про свою службу (те що не секретно), посаду, задачі, чи хватає фізухи, поради самому собі до мобілізації, про побут, чи є вільний час». 🤝Дякую за донат, це пост для тебе!

Про службу, посаду, задачі

Не можу нічого написати, причини стисло виклав раніше. Розумію що це звучить як притча про дракона в гаражі, і мені прикро, але вдіяти ніц не можу.

Чи хватає фізухи

Так. Я місяць витратив на щоденні тренування — підтягування, відтискання, присідання і це однозначно мені допомогло не ригати потім. А по бігу так я взагалі виявився в п'ятірці лідерів. Ті підрозділи які набирають до себе напряму (3ОШБр, Азов, інші), зазвичай вказують який фізичний тест треба пройти, ви можете на нього орієнтуватись. Але зрештою, вирішує не стільки сила, скільки витривалість та воля.

‼️Я був свідком як багато людей травмувались через неправильну техніку або переоцінку власних сил. Повірте, краще здатися та зійти з дистанції ніж порвати зв'язки або пошкодити коліна‼️

👟Навчіться правильно бігати та купіть спеціальне взуття для бігу.

Поради самому собі до мобілізації

🤡Ретроспективно, я став жертвою sunk cost fallacy, змарнував дуже багато зусиль та часу. Порада самому собі — якщо бачиш що карта не йде, то нема шо сидіти за столом, встав і пішов, хоч би скільки ти грошей вже там залишив.

🤥Друга порада — не вірити обіцянкам людей. Нікому нема до тебе діла, навіть якщо раціонально здається що це win-win для всіх.

🪖Третя — не витрачати багато на дорогу снарягу. Гроші з останньої зп закінчуються дуже швидко, а я хоч і не шикував, але таки примудрився купити оверпрайснутих та зайвих речей.

🤑Четверта — не смітити грішми. Ситуація — в машину треба долити мастило, автослужба не дає, а треба їхати. Як людина що звикла вирішувати все грошима, я йду й купую те мастило, шо там тих 300 гривень. Так не треба робити. Доповідаєш нагору «командир, треба гроші на мастило, інакше не можемо поїхати», зняв з себе відповідальність, все. Ніби тих 300 грн то небагато, але то небагато коли ти маєш свої айтішні 5k$, а коли нічого ще не маєш то гаманець швидко тане.

З того що я писав раніше і що актуально досі

🚙Найперше найголовніше та найбазовіше це отримати водійське посвідчення обов'язково на механіку. Ця навичка мені знадобилась найбільше зі всього спектру. Буквально. Це підвищує вашу корисність, мобільність, дає можливість легально проєбатися та вирвати собі трохи свободи.

Про решту я писав у невеликому циклі:

🔹Практичні рекомендації щодо боротьби зі свавіллям ТЦК
🔹Практичні рекомендації щодо боротьби зі свавіллям ТЦК: працюємо проактивно
🔹Практичні рекомендації щодо боротьби зі свавіллям ТЦК: загальні поради

Все це актуально. Але водіння то найперше.

Про побут

Якщо ви жили в гуртожитку, то проблем не буде ніяких. Якщо не жили й не знаєте що таке відсутність особистого простору, то напевне буде складно. Хто шарить туристичні походи, той взагалі буде на коні.

Чи є вільний час

Раніше не було, зараз є, незабаром напевне знову не буде, загалом думаю можна буде сказати що вільного часу достатньо.

На цьому все

Вже досить багато айтівців мобілізувалося і на ДОУ є купа матеріалів про учєбку та службу, також з'явилося ще декілька підрозділів які набирають до себе, вивчайте, готуйтесь, вривайтесь!

#армія
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot


Звіт по збору на виносну антену Avenger

💰Всього зібрано: 86,693.94₴ 💪

✅Витрачено на комплект антена+кабелі+штатив+кріплення: 78,000.00₴

Я купував за кеш, тому дилер зробив знижку🤷‍♂️ і ціна виявилась значно меншою ніж я очікував.

Антена вже працює на фронті та допомагає наводити суєту😎

Решту витратили на:

✅14 антен на FPV дрони, по 200 грн за антенку (треба було швидко, тому купив у бариг а не на алі): 2,800.00₴ уважний читач помітить що на фото лише 13 антен, це тому що одна вже встановлена на дрон

✅Припой змивка та флюс для пайки FPV: 840.00₴

✅Болти, щоб кріпити мотори на FPV, бо китаєць не поклав правильної довжини: 60.00₴

✅Частково покрили ремонт корча в якого пропелер охолодження перебив трубку охолодження коробки: 3,500.00₴

✅Шайби, ключ та коробочка-органайзер для SD карт в епіцентрі: 159.02₴

✅Доставка зарядок до FPV батарей школі пілотів, на які збирав раніше: 180.00₴

💵Від збору на FPV ретранслятор залишалося 27.73₴, які я додав у цей збір.

Залишок: 1,182.65₴ піде або в наступний збір (рами та камери для FPV) або на дріб'язок який робить death by a thousand transactions гаманцю.

Щиро вдячний всім за донати!🇺🇦🇺🇦🇺🇦


Вітаю всіх!

Мої знайомі аеророзвідники звернулися за допомогою в покупці виносної антени. Їх Alientech (стандартний підсилювач, такий ви вже купували декілька разів для різних підрозділів) не витримав лихої долі, та крякнув у дуже відповідальний момент, терміново потрібна заміна.

Такі антени використовуються для того, щоб працювати з укриття, збільшити дальність польотів та покращити ребостійкість. Життя наших бійців + краща розвідка + збережені дрони — рецепт успіху.

Я вирішив взяти більш моцний та якісний варіант — Avenger AvengeAngel. Вона краще зібрана та потужніша за Alientech.
Все добре, кусається лише прайс: за комплект з антени, кабелів, штативу та кріплення потрібно відвалити ~83000₴😱

Вірю що спільними зусиллями вдасться зібрати цю суму.

Банка: https://send.monobank.ua/jar/7i2owh4VP
PayPal: xpunkerx@gmail.com
Приват: 4627055113374002

🇺🇦Дякую кожній і кожному за допомогу!🇺🇦


Видео недоступно для предпросмотра
Смотреть в Telegram
Звіт по збору на ремонт волонтерського буса

💰Всього було зібрано 30 048.90 ₴
❤️🤝Дякую всім хто долучився!
🎥Відеозвіт додаю.


Прочитав «Фундація»/«Foundation»

Хотів оце подивитись якесь sci-fi кіно, а дивитися нічого. Колективний розум сходиться на тому, що sci-fi фільми вже не роблять, натомість роблять серіали. Я хоч і не дивлюся серіали (ті що я дивився можна перелічити на пальцях руки), але тут вирішив ну ок гляньмо, що зараз пропонують.

Вибір впав на серіал «Foundation» від Apple. Подивився кілька серій, дай думаю книжку почитаю, адже вона була у мене в домашній бібліотеці, батько купив повну збірку Азімова ще не початку дев'яностих. Але я тоді читав тільки про роботів, а про Фундацію не читав. Не знаю чому. Вирішив надолужати.

Перші кілька книг це радше серія новел об'єднаних загальною ідеєю. Герої змінюються, декорації теж, незмінний лише загальний сетінг.

Отож, у майбутньому вчений застосовує матан до поведінки великих людських мас та винаходить «психоісторію» — спосіб передбачити рух цих самих мас. Далі заганяє в комплюхтор наявні дані й комплюхтор видає результат — Галактична Імперія, найбільше суспільно-політичне утворення в Галактиці, незабаром розвалиться і настануть темні часи, війни, занепад технологій, та ролбек до примітивних суспільств.

Тоді той вчений робить План, який все пофіксить. Всі книги присвячені подіям які відбуваються протягом ~тисячі років, а герої — лише сліпі інструменти в руках абстрактного Плану.

Власне на картинці нижче абсолютно точно передана суть всієї епопеї.

Дуже цікаво ретроспективно читати стару фантастику. Герої двадцятитисячолітньої Імперії курять сигари та п'ють віскарь, жінок на головних ролях немає, а розвиток технологій химерний та непорівнянний — разом зі штучним інтелектом та турбо комп'ютерами людство використовує діафільми та книги з газетами.

Автор розглядає різні моделі суспільств — тоталітарну імперію (шляпа), напівдемократичну технологічну спільноту торгівців (теж шляпа) та врешті приходить до висновку що сталий розвиток та існування людства може бути забезпечений лише одним способом, а яким — я не буду спойлерити.

Книжки цікаві та короткі. До прочитання рекомендую.

Серіал дуже поверхнево заснований на книзі — сценаристи взяли імена героїв та частково основну ідею, а далі традиційно змінили всім стать, колір шкіри, орієнтацію, та додали тонни персональної драми, якої у книгах було мінімум. Але мені сподобалося, тож якщо ви ще не дивилися, то подивіться, бо голівуд не готовий вкладати бабки у хороший sci-fi блокбастер.

P.S.: на жаль, в українському перекладі немає двох приквелів, тому я їх не прочитав, та обмежився лише оригінальною трилогією та двома сиквелами.

#прочитав
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot


Go та дзен одного бінарника

Go звичайно процідурна шляпа, але таки має одну суттєву перевагу якої бракує решті — проєкт компілиться в один бінарник.

Коли звик що будь-який додаток тягне за собою якщо не сорці, то купу якихось бібліотек, файлів і т.д., то один-єдиний бінарний виглядає як артефакт з майбутнього (або минулого, як подивитися).

Здоровенний проєкт поміщається в один файл. Тераформ, номад з консулом, пубернетис, you name it.

Звісно якщо проєкт великий, то і бінарник буде чималий.

Але здається, люди недооцінюють простоту дистрибуції.

Половині доводиться тягнути за собою системно-незалежний рантайм, іншій половині треба придумувати якісь хаки й милиці, щоб обійти обмеження системного рантайму, третя половина тягне за собою якісь бібліотеки або вимагає ставити libzalupa-dev строго визначеної версії, і лише Go яскраво дає всім посмоктати прутня зі своїм єдиним блобом.

Вчора шукав альтернативи системному крону і натрапив на популярне рішення написане на пітоні. Звісно в першому рядку how to install автор пропонує нам щось робити за допомогою virualenv🥴🤮. Дякую, не треба, я тільки того тижня вичистив 20 гігабайтів пітонячих віртуаленвів зі старих проєктів.

Такий підхід в ультимативній формі вироджується Docker, але у нього є проблеми з монтуванням файлових систем та мережі.

За стільки часу людство так і не спромоглося зробити нормальну систему управління залежностями та дистрибуції, що може багато сказати про нашу індустрію.

На тому все, висновок такий — пакуйте все в один бінарник без залежностей, і буде вашим юзерам щастя.

#інструменти
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot


Обісрався з кроном

Час розваг! Місяць тому я рефакторив @Donate1024Bot, щоб прибрати node.js та npm з білдчейну.

Через кілька днів помітив що кнопки на інтерфейсі попердолило. З'ясувалося що кудись дівся CSS який відповідав за теми, і замість того щоб зафорсити світлу тему, воно вмикало системну, відповідно частину UI пердолило, бо вона не була заточна під темну. Замість того щоб розібратися, я накопіпастив css-варіаблів світлої теми в дефінішн темної. Ну типу

@media (prefers-color-scheme: dark) {
:root {
color-scheme: light;

Класно придумав, правда? Зробив так і забив.

На вихідних трохи мав часу, щоб нарешті замерджити фічу для сайту: список волонтерів, який зробила моя колега Олекса Лелека. Коли вже засів за мердж, давай думаю оновлю бібліотеку DaisyUI. Cкачав новий css, поклав у папку vendor, запустив, подивився, ніби майже нічого не зламалося. Посипалась пара елементів, але Олекса люб'язно підфіксила те що відпало та й по тому.

Далі пішов в адмінку, дивлюся, а там інпути не такі як мають бути. В DaisyUI вони з закругленими бордерами, а у мене — з прямокутними🤔 Знову прошу Олексу подивитися, каже що там чомусь не відпрацьовує потрібний CSS.

Починаю підозрювати, що ідея викинути ноду та збирати все тайлвіндівським бінарником не дуже спрацювала, бо є якісь бока. Деякий час дебажимо, але не знаходимо проблеми. Думаю що проблема таки точно у збірці, тому що DaisyUI підключається як Tailwind плагін, а якщо брати чисто CSS, то воно там може щось пропустити.

Тому наступного дня вирішую що треба вертати все взад. Збирати CSS не бінарником, а через ноду. Насправді я й раніше збирав бінарником, але сам css тягнув через npm. Тому то було не зовсім «вернути взад», швидше, «зробити по-іншому».

Сів, gem install cssbundling-rails, туди сюди, піф паф, yarn install, yarn build:css, там підфіксив, рефрешу — опа! Всі стилі стали як треба, а CSS скоротився в 19 разів. Походу все-таки або я той бінарник не так сконфігурив, або там щось не так.

Ну я такий задоволений ура ура, стилі на місці, все красиво.

Давай тепер то в докер імедж запхати, а ви знаєте, не так просто зібрати докупи Ruby та Node. Короче я ставлю dockerfile-rails, генерую Dockerfile де розумні люди за мене подумали як все так поставити, щоб не за всі гроші світу.

Зібрав поставив запустив, все працює! Нюанс тільки в тому, що в новому імеджі debian замість alpine. Ну, думаю, не проблема.

Деплою все туди сюди, запрацювало, сайт дзижчить. Дивлюся логи білда — впало. Нумо розбиратися — виявляється не встає підіймається crond який я запускаю окремим контейнером та який відповідає за те, щоб розіслати донаторам щоденний збір, звіт, оновити інфу по монобанках і так далі.

Перша проблема, в альпіні бінарник називається crond, а у дебіані cron. Геніально! Друга — відрізняються ключі. Міняю назву бінарника, міняю ключі... cron: can't open or create /var/run/crond.pid: Permission denied

Ну звісно, старий імедж в мене запускався з-під рута, а в новому яйцеголові зробили все по-сек'юрному, юзер 1000 і поїхав.

А тисячному юзеру ніхто не давав право запускати крон.

Сідаю з'ясовувати як то зробити правильно, гуглю, пробую всілякі cron.allow і chmod gu+rw /var/run && chmod gu+s /usr/sbin/cron звісно ця шляпа не працює. Ніби й помилок нема, але й джоби не запускаються.

Крон це знаєте штука яку не так легко продебажити. Логи не пишуться, ні помилки, ні успіху. Не розумію в чому річ. Кронтаб є, самі команди виконуються якщо запускати окремо.

Короче годину я з тим і так і так провозився, ніц не допомогло. Думаю ганьба, 2024, а людина не може крон в контейнері запустити.

У відчаї йду на fly.io думаю може там вже шось придумали. І такі да! Розумні люди плюнули на бінарник 50-и річної давності та зробили drop-in replacement який працює з-під юзера і не вимахується.

Називається Supercronic. В інструкції вже готовий набір для докерфайла, бери й запускай. Зкопіпастив, задеплоїв, вуаля! Все працює. І логи і пише і їсти не просить.

Fin.

#робота
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot


Прочитав «Убік»/«Ubik» та «Чи мріють андроїди про електричних овець?»/«Do Androids Dream of Electric Sheep?»

Втомився від селф-хелпу та бізнес літератури, та вирішив надолужати лауреатів премій хуго, неб'юла.

«Убік»

Дуже дивно читати книги, ідеї з яких ти вже бачив у багатьох фільмах. Виявляється що матрицю та inception придумали ще у 60-і роки, а ми, замість першоджерела, дізнаємося це з химерних та блідих адаптацій.

Книжка починається як бадьорий кіберпанк, але досить швидко трансформується в абсолютно психоделічне оповідання з примарною межею між реальністю та галюцинаціями. Спойлерити не буду, якщо вам сподобався Inception, то прочитайте й це, тим більше що вона досить коротка.

«Чи мріють андроїди про електричних овець?»

Як поцінювач кіберпанку та блейд ранерів маю з соромом зізнатися що до книги добрався тільки зараз. Традиційно, фільми мають лише поверхневий стосунок до книг.

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

У фільмах абсолютно не згадується релігійний аспект та програмування емоцій, яким тут надано багато значення. Я тему не викупив. У мене взагалі трохи туго з розумінням глибинних сенсів, тому порожня пригодницька бойова фантастика мені заходить добре, а складні психологічні трилери та драми у фантастичних сетінгах — недуже.

Втім, до прочитання рекомендовано.

#прочитав
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot

3k 1 22 13 56

РТФ

У часи коли я вчився, мені було невідомо, чим займатимуться майбутні випускники інших факультетів. Здавалось, що тоді на радіотехнічний, авіаційний, приладобудівний, машинобудівний, зварювальний та інші, йшли ті, кому не вистачило балів, щоб потрапити на ФІОТ, прикладну математику, або ІПСА (не плутати з ІПСО).

Здавалось, що випускники інших факультетів не знайдуть роботу у країні де немає виробництва, або займуть свої мікроніші, працюючи у трійці великих провайдерів зв'язку та на кількох атомних станціях за смішні гроші.

Програмізм здавався мені безальтернативним квитком у щасливе безбарвне майбутнє. Я був абсолютно впевнений що ІТ буде тільки зростати, і нас ніколи не чіпатиме криза, тому що software ate the world, а решта — невдахи приречені рано чи пізно свічнутися в ІТ.

Аж ось, раптово, з'ясовується, що вся ця братія, яку вчили старенькі професори у лекторіях де протікає дах, дуже і дуже навіть потрібна.

Раптово з'ясовується що порахувати антену це ніфіга собі який потрібний скіл, раптово з'ясовується, що знання як працює радіо дуже потрібне, раптово з'ясовується що треба люди які шарять у станках та виробництві, раптово з'ясовується що енергетики стають життєво важливими, раптово з'ясовується що нам треба терміново робити свої шахеди.

Де ці всі люди, навчені за держваний кошт? Чи зайняті вони у реальному секторі, чи вже давно вивчили джаваскріпт та пішли у комфортні офіси пити лавандовий раф?

P.S.: до речі я вчився на конструктора комп'ютерів. Але замість піти працювати в Інтел або АМД, я теж нюхнув ентерпрайзної бебри й навіки залишився кодером, все як передбачав один з наших старих професорів.

#війна
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot

3.7k 1 31 159 96

Офіс простих рішень

Прокляття програміста — всюди бачити неефективність та мати ідеї та «прості» рішення щодо виправлення цих прикрих помилок реальності.

Головне — тримати свої «рішення» при собі, поки не з'ясуєш усі вхідні дані. Бо може трапитися так що те, що тобі здається тривіальним процесом, насправді є лише вершиною айсберга, а пропозиція викличе лише сміх.

Dan Luu чудово описав це в статті «Cocktail party ideas» — коли купка програмістів збирається, та починає придумувати як вирішити неефективність світу, хоча насправді вони не усвідомлюють масштаб та складність проблем.

Багато думаю про неефективність у війську, але зрештою розумію що простих рішень немає. Система складається з такої кількості компонент, мотивація яких часто суперечить одна одній, що складно робити будь-що, а інновації та покращення стикаються з неймовірною інертністю.

Коли я працював у великому ентерпрайзі, то в нас був ІТ відділ, який займався тим що видавав на проєкти сервери та інші ресурси. І от мені треба було ті самі сервери, але щоб отримати їх треба було створювати заявки які апрувились великим начальством.

Мені для роботи конче були потрібні ресурси, але в ІТ була інша мотивація. Вони не отримували гроші або премії за те що видавали ресурси. Вони стояли на сторожі витрат компанії. Їх ідеальний стан — це коли взагалі нікому нічого не видано, а кожна заявка — це маленька битва, в якій треба було довести що кандидат достойний. Зрозуміло що власники фірми зробили це умисне, бо інакше споживання могло б бути недоцільним, та перевищувати реальні потреби. Але щоразу коли створюється така структура, то вона стає «вахтером», задачею якого вже не є забезпечення комфорту відвідувачів, а утримання власної посади.

Будь-хто, хто працював у великих організаціях стикався з проявами цього і спостерігав таку дисфункцію та виродження.

Тому умовний генерал не може просто так змінити всі процеси та підвищити ефективність. Це неможливо за збереження комплексу системи.

Один зі способів змін — створити маленьку структуру за своїми правилами, та будувати інтеграції, що абстрагуватимуть її учасників від великої материнської структури. Стартап, досвід якого потім можна буде масштабувати.

Здається що саме це зараз відбувається з 3 ОШБр. Невеликий підрозділ, який довів свою ефективність, отримав ресурси для масштабування та екстраполює свій досвід на інших.

Інновації та покращення рідко приходять зверху. Можна керувати всім в ручному режимі, але це буде зустрічати опір та італійські страйки з низів, зводячи все нанівець.

Тому в мене небагато очікувань від верхівки. Чи буде вона така, чи інша — без звитяжних людей, які здатні ефективно діяти, та мають волю до змін з низів, нічого не буде.

#армія #війна
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot


Від 0 до 1

Чим далі в ліс, тим менше залишається low hanging fruit — інновацій, які легко зробити. Невпинний технологічний розвиток залишає дедалі менше і менше простору для винаходів, відтак, більшості доводиться проходити не цікавий шлях від 0 до 1, а нудний та передбачуваний від 1 до ∞.

В мене з тим проблема. Коли усвідомлюєш, що задачу вже хтось робить, пропадає мотивація займатися нею. Наприклад, зараз багато команд намагаються застосувати AI/ML для донаведення дронів. В мене теж є трохи знань OpenCV та відповідних технологій, але усвідомлюючи, що тим вже хтось займається, не хочеться витрачати на то час. Ну типу точно є люди які сидять фуллтайм і щось там колупають, а що можу зробити я, коли в мене небагато вільного часу та ресурсів?

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

Це оманлива та небезпечна думка. Бо якщо так мислити, то можна просто сісти й нічого не робити. Але коли так будуть думати всі, то прогрес зупиниться.

Десь рік назад мав елементарну ідею — допиляти аналізатор радіоспектра, щоб він видавав алерти при наближенні джерел випромінювання на визначених частотах. Детектор дронів. Я навіть сконтактував з людиною, яка мала напрацювання. Забив, бо мав оплачувану роботу, та й подумав що напевне вже точно хтось таке робить.

І дійсно робили! Drone Spices поставили на потік виготовлення таких детекторів, які зараз відомі як «Цукорки» ще влітку, але щоб його купити я стояв в черзі 2 місяці! Зараз там щось має покращитись, але уявіть — минув вже рік! Якби я не кинув той задум, то вже б точно мав схожий прилад..

Війна дає практично необмежений ринок, та створює постійний дефіцит технологічних засобів. Спробуйте замовити дрони, РЕБ, детектори — на все потрібно чекати, й не один тиждень.

Зрозуміло що якщо ви свідомий громадянин, то робити надприбутки на цьому не вийде, максимум покрити зарплати людям, але все ж.

Не забивайте на свої ідеї, навіть якщо здається що таке вже точно зробили.

#війна #ідеї
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot

3k 1 30 19 109

Чмобіки у светрах

Оце підписався на канал «розвідка ворога» де публікують матеріали з ворожих пабліків, і зажурився.

Ще у 2014 я зрозумів, що технічна вища освіта не робить людину адекватною та розумною. Тоді один з розробників-росіян контори в якій я працював випустив апдейт внутрішньої тулзи куди додав колорадську стрічку та в реліз ноутсах написав «у той час, коли фашизм знову піднімає голову...». На початку великої війни крінжанув з одного відомого CTO, теж росіянина, який на той час був резидентом Естонії й написав щось типу «це геополітичні шахи, це все нато та америка винуваті», ну далі ви зрозуміли.

А зажурився я тому, що в москалів, виявляється, дуже багато недурних людей, які готові вкладатися ресурсом та головою у їх ВПК. Виявляється, що оте все снобське шобло у светрах, яке сиділо та бризчало слиною у коментарях на хабрі, тепер зібрало раму, та мутить якісь проєкти, щоб допомогти своїм військовим поставити «зарвавшихся х@хлов» на місце.

Хоч росія як держава і не спромоглась реалізувати таланти своїх людей, але ті самі люди впрягаються, і це сильно нам шкодить.

Попри загальний занепад, інженерна школа в росії така-сяка є, люди там розумні є, і ось вже вони якось намагаються закрити діри у зв'язку китайськими цифровими станціями, роблять РЕБи, аналізатори, збирають картонні та текстолітові дрони. Зробили навіть симулятор FPV-камікадзе, щоб краще тренувати своїх пілотів.

Так, це ті самі «братушки» з якими я не так давно працював в одній конторі, і тепер вони свідомо спрямовують зусилля, щоб вбивати нас. Ніхто їх не жене в шарашки, вони самі йдуть, і їх багато.

Шкода що так, але в нас варіантів нема. Маємо вистояти.

#війна
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot

4k 0 45 245 132

В середині грудня телефонує мені товариш з «Айдару», якому ми допомагаємо вже рік. Каже „наша волонтерка привезла цілий бус димових та запалювальних шашок, але не має можливості зараз їх відвезти до нас, бо бус зламався. З наших ніхто теж не має можливості їх забрати. Може вам треба?“

Звісно, нам треба. Через кілька днів до неї виїхала машина мого іншого підопічного підрозділу і забрала весь вантаж шашок. Тепер буз порожній і його можна везти на ремонт, справа тільки в коштах. Товариш просив за можливості допомогти з цим, а я звертаюсь до вас.

Цей збір не на прямі потреби військових, тому я не розміщую його в @Donate1024Bot. Скільки зберемо стільки зберемо, також мають допомогти панове з того підрозділу, який забрав вантаж.

💸 PayPal: xpunkerx@gmail.com
💳 ПРИВАТ: 4627055113374002
🫙 БАНКА: https://send.monobank.ua/jar/7yVR1BqgAW

P.S.: по попереднім зборам запчастини ще йдуть з далекого Китаю.


frozen_string_literal: 🤡

Знадобилося тут попрограмувати трохи (поганий той штурмовик що забув як програмувати), поки прокрастинував та думав як краще організувати новий проєкт, дай думаю оновлю старий.

Ласкаво просимо до проклятого світу веброзробки!

Зробив bundle update, запустив локально, прогнав тести, „на моїй машині працює!”, пушу в репозиторій, build failed. Причому failed на тих самих тестах. WTF, в мене ж все працювало!

Іду розбиратися, виявляється що в релізі Rails 7.1 команду rake assets:precompile, яка збирає фронтедерські діла (css, js, ассети й тд) включили до команди rails test яка запускає тести. Ну типу раз ми вже тести женемо давайте фронтенд зберемо, а то мало що там може бути.

А команда не пройшла на CI, тому що там не було css-файлів які брались з node_modules, які я там не інсталив в тестах, бо воно не треба було.

Взагалі мені JS не потрібен, а node_modules є, щоб мати на диску Daisy UI, який Rails мені люб'язно пакує в проєктний CSS бандл.

Щоб не додавати ноду разом зі всім барахлом в тестовий імедж я вирішую піти шляхом, який треба було обрати з самого початку — завендорити той CSS. Добре що в гітхаб тікеті дворічної давності для бібліотеки tailwindcss-rails вже є рішення для конкретного CSS фреймворку і там є навіть мій комент.

Приємно знаходити відповіді на свої питання, але ще приємніше бачити що ти взяв участь в обговоренні.

Качаю CSS, тестую — все працює. Бандл правда збільшився на скількись кілобайт, причина того мені невідома, десь @import не так написав чи що, вже вирішив не гаяти на те час.

Проєкт оновився, ура, все працює. Час переходити до наступного.

Ставлю новий, а тут вже ж Різдво було, а що у нас на Різдво? А на Різдво у нас завжди виходить мінорний реліз Ruby, цього разу це 3.3.0.

Ставлю його, ініціалізую проєкт, туди-сюди, хочу запустити Rails Console, щоб відразу в репл і програміровать, запускаю, пишу там гелоу ворлд, а мені зась! Ніц немає, відповіді нема, репл пустий.

WTF, думаю може мене «чехи» з JetBrains надурили вчергове і я там не прописав якийсь дурнуватий параметр, йду перевіряти та нє, ніби все ок. Пробую інший проєкт — працює. Пробую новий — не працює. Згадую що колись мав таку проблему, але забув як вирішив. Чищу кеші, вмикаю-вимикаю комплюхтор, перестворюю конфігурацію. Не допомагає.

Йду на багтрекер JetBrains і звичайно ж знаходжу там багу, виявляється в Rails Console який запускається з IntelliJ не працює в Ruby 3.3.0, девелопери розбираються.

Ок думаю, з терміналу попрацюю, хоч це і не зручно, там все ок.

Роблю новий і клас — що за чудеса! — першим рядком в згенерованому файлі йде frozen_string_literal: true. А це ще що таке? Чому раніше не було? Ах, це якась оптимізація, типу щоб не казати кожному рядку що він імутабельний, ми це робимо на рівні всього файлу. Колись Matz (автор Ruby) хотів зробити всі рядки за замовчуванням іммутабельними, але потім передумав. А тепер розробники IntelliJ чомусь вирішили що треба цей комент додавати. Ну типу, а чому б і не викусити пару мікросекунд на виділенні пам'яті та не зекономити пару байт на перевикористаних рядках?

Я згадав про геніальне # -*- coding: utf-8 -*- в другому пітоні.

І подумав: шо за фігня, чому машини самі не можуть роздуплитися коли їм треба той рядок реюзати, а коли не треба, щзх, чому у 2024 у мене кожен файл має бути засраний архаїчними конструкціями двадцятирічної давності які ще й користі принесуть близько нуля!

Видалив той коментар гарбедж колектору на зло.

Ви кажете прогрес технологічний, але подивіться, мені досі треба знати про існування гарбедж колектору та якихось магічних коментів які полегшують йому (а не мені!!!) життя!

Короче шляпа повна наше програмування.

#робота
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot


Монобанки як спосіб організації бюджету

Надзвичайно здивований тим, що за 2 роки жоден з банків не додумався або не спромігся повторити функцію Монобанок. Можливо я не правий, виправте, будь ласка, мене в коментарях.

І справа не тільки в супер зручному інструменті для донатів.

Дуже зручно використовувати монобанки для планування власного бюджету. Наприклад, визначити ціль на якусь покупку. Зафіксувати борг. Запланувати щомісячні витрати на будь-яку категорію, книжки або розваги.

З кожного збору, який я проводжу, зазвичай залишається трішки грошей. Замість того, щоб трекати, скільки цих грошей є в екселі, я просто скидую їх на нові банки. Стара банка розбивається, щоб позначити що ціль збору досягнена, а кошти спрямовані куди потрібно. Також гроші на банці «ізольовані» від основного рахунку, яким я користуюсь, тому я не зможу випадково їх витратити.

Ось, в мене залишилися кошти зі збору на ретранслятор і сьогодні я оплатив ними ремонт старлінка та доставку НП.

Наскільки розумію, монобанка це абстракція над рахунком/карткою, тому відкриваючи нову банку ми фактично відкриваємо новий рахунок що, ймовірно, тягне за собою деяку кількість операційного навантаження, тому, можливо, інші банки не поспішають це робити.

А від простої функції «додатковий рахунок» до «система керування бюджетом» лише один крок, проте чомусь ніхто не зацікавлений у тому, щоб зайняти цю нішу. Воно й не дивно — у банківському середовищі керують не стартапери-продуктовики, а зашкарублі інертні фінансисти.

Поза тим, навіть просто пропускати через себе величезний обсяг донатів, теж, здається було б вигідно для банків. Чому ж вони цього не роблять?

#спостереження
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot

3k 0 10 50 69

Impossibru security

Близько року тому я хотів поділитися з читачами деякими подробицями щодо збірки перевіреного-робочого, «bind-and-fly» набору FPV польотів. Але порадився з товаришем та вирішив цього не робити, щоб не допомагати ворогам.

Зараз, коли ми вже втратили ініціативу в FPV, такими відео завалений і наший і російський ютуби, тепер «секретна» інфа це автонаведення дронів, хитрі частоти, ппрч та інше.

Поза тим, проблема розповсюдження корисної інформації залишається. Багато команд працюють над різними цікавинками, але ніхто нічим не ділиться, бо, по-перше, не знає що від цього може бути користь, по-друге, не знає як це зробити безпечно.

Відомий радіоінженер Сергій Флеш теж зіткнувся з цією задачею і теж не знає як її грамотно вирішити.

Якщо в ті роки, коли ксерокс в СРСР був пристроєм який вимагав спеціального доступу, обмеження доступу до чутливої інформації було відносно простим ділом, то зараз убезпечитися практично неможливо.

Відповідно всі матеріали, які публікувалися Флешем у його «закритих» групах вже стали надбанням ворога, а ворожі матеріали — зливають нам.

Як зацікавлена сторона я б теж хотів мати якийсь спосіб ділитися та обмінюватися інформацією, але якщо будувати все на особистих контактах та зустрічах, то воно абсолютно не масштабується.

Переконаний що галузь оборони від цього сильно страждає, через те що кожній команді доводиться наступати на однакові граблі, але як це вирішити?

Є державні системи до яких має доступ обмежене коло людей, але враховуючи що в нас є багато фахівців, як військових, так і цивільних, які не мають можливості туди потрапити, то розвиток гальмується.

Схоже що єдиний вихід — швидше впроваджувати нові рішення аніж вони будуть ставати відомими росіянам. Щодуху бігти, аби лише залишатися на місці.

Ваші ідеї, секопси та криптани? Ідеями як це вирішити не ділимось, щоб не дізнався ворог.

#війна
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot

3k 1 15 49 53

Підсумки 2023 😤

🤐Перша половина року пройшла під NDA і друга половина року теж пройшла під NDA, тому поділитися, на жаль, нічим не можу.

Відтак від підсумків відразу перейду до подяк.

🫡Дякую збройним силам за те що я та моя родина живі здорові та маємо можливість чілити на свята.

🤗Дякую кожній підписниці та кожному підписнику @Donate1024Bot. Я не знаю яким дивом, але суми щоденних донатів, хоч і мають тенденцію до зниження, проте тримаються на одному рівні впродовж усього року: близько 30 тисяч гривень. За місяць збираємо мільйон, за рік — понад 12 мільйонів🤩 У 2023 я ще більше розширив коло довірених волонтерів, та диверсифікував збори.

🙏Дякую тобі, читачка, та тобі, читач, за те що підтримуєш мене, збори, та наше військо. Ваша підтримка дуже багато значить. Кожного разу коли я відкриваю збір то непокоюсь та стресую що не вдасться зібрати потрібну суму, але кожного разу ви мене дивуєте, і все вдається.

Ви найкращі!❤️

🎄Всіх з Новим Роком! Цього року докладу ще більше зусиль, щоб вигнати російських окупантів з нашої землі👊

#війна
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot

4k 1 4 11 184

Вітаю пані та панове!

ДОУ проводить голосування за найкращі ІТ проєкти та ініціативи.
Мій проєкт, @Donate1024Bot, теж там є, у категорії «Найпотужніша ініціатива від ІТ-спеціалістів, що наближає перемогу»

За півтора року існування спільнота бота зібрала 16 мільйонів гривень на 498 зборів!

Переходь, голосуй!

https://jobs.dou.ua/questionary/dou-award/peremoga_people


Вітаю пані та панове. Прошу допомогти закрити невеликий збір на 3 FPV дрони та інструменти для FPV-майстерні мого товариша з 24 ОШБ «Айдар»

На зібрані кошти закупимо:
- інструмент: паяльник, третю руку, викрутки, кусачки, мультиметр, пінцет а також розсип болтиків, гайок, термоусадок, роз'ємів, конекторів.
- 3 набори запчастин для 8" дронів

Загальна сума 60 тисяч, 35 вже зібрано, залишилося 25.

💸 PayPal: xpunkerx@gmail.com
💳 ПРИВАТ: 4627055113374002
🫙 БАНКА: https://send.monobank.ua/jar/svov1Cq6e

Дякую всім!


It Depends

— „Краще працювати в продукті, ніж в аутсорсі”
— „Ні, це залежить від того який продукт і який аутсорс, буває цікавий аутсорс”

— „Потрібно видавати людям овнершип та контекст, щоб вони самі робили задачі”
— „Залежить від того яка робота, на конвеєрі тобі потрібні прості виконавці які не вимахуються”

— „Робота має мати сенс та приносити задоволення”
— „Залежить від обставин, є ситуації коли просто потрібні гроші”

І так далі.

На кожне твердження знаходиться кмітливий коментатор який поважно скаже „люди різні, контори різні, ситуації різні, все залежить від купи факторів”.

І мати рацію!

Але тоді ріжку й писати нічого буде, а на каналі буде один пост: „все залежить від обставин, дійте на власний розсуд”

Програмістська натура дуже любить все абстрагувати, виносити спільне з різного, узагальнювати.

Але такі рафіновані поради та концепти ні до чого не годяться. Зрозуміло, що все залежить від обставин. Зрозуміло, що є різні люди, різні проєкти. Зрозуміло, що немає срібної кулі та універсальної теорії всього. Зрозуміло що те що підійде мені, не підійде вам, бо кожен — унікальна особистість.

Проте без якогось досвіду власних або чужих рішень у конкретних ситуаціях складно сформувати власну теку.

Для того я і намагаюсь ділитися конкретними ситуаціями з якими я мав справу і сам люблю читати такі історії. Чим конкретніше, тим краще, тим живіше воно все, а над конкретним кейсом з конкретним рішенням вже можна й подискутувати.

Але, як відомо, it depends.

#робота #мета
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot

4.6k 1 7 14 101
Показано 20 последних публикаций.