✙rozho)))k✙🇺🇦 – Telegram
✙rozho)))k✙🇺🇦
3.47K subscribers
292 photos
32 videos
1 file
653 links
Про автора: www.rozhkov.me/about
Про канал: www.rozhkov.me/about-full-of-hatred

Канал про все що не ІТ: @daily_rozhok
дірект: @xrozhokx
блог: rozhkov.me
Download Telegram
Платный интернет

В книге "Предсказуемая иррациональность" описывается эксперимент когда людям предлагали выбрать между бесплатной обычной конфетой и платной вкусной. Люди всегда выбирали бесплатную конфету, даже несмотря на то что она была ни о чём.

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

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

Пашка Дуров держался до последнего, но после того как TON не взлетел, выхода у него не осталось. Поэтому теперь вы вынуждены лицезреть на этом канале скам-рекламу мерзких криптопомоек и инфобизнеса, а я на это никак не могу повлиять.

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

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

Очень надеюсь, что скоро появится возможность занести Дурову лично, чтобы канал был чистым.

Вместо того чтобы сделать нормально—одновременно с рекламой запустить премиум акки для пользователей и возможность отключить рекламу для авторов, сделали через жопу начав с рекламы зашкварных каналов. Ну, им виднее, а деньги не пахнут несмотря на заявления Дурова о том что "богатство переоценено".

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

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

#мета
permalink | задонатить
Продуктовое мышление

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

На всех работах где я работал была такая схема: вначале ты берешь ответственность, доказываешь что можешь с этим справляться, потом получаешь лычку и бабос. Хочешь стать тимлидом → берешь пару человек → показываешь что можешь с ними работать → ... → бабос и лычка тимлида.

С подходом "мне за это не платят" трудно развиваться. Я не призываю работать бесплатно и тащить на себе кучу обязанностей за мелкий прайс, но надо разумно смотреть на вещи и рассматривать такие ситуации как инвестиции в себя.

Если конечно это вам интересно.

Другой вопрос — это способность разбираться в предметной области и интерес к бизнесу. На всех работах где я работал, самый резкий рост (всего) происходил тогда, когда я в своей деятельности приближался к решению проблем клиентов.

В самом грубом описании цепочка денег от клиента к вам проходит так: у человека есть проблема → он приходит в вашу контору → босс вашей конторы смотрит как решить его проблему → делегирует её большому менеджеру → тот делегирует еще одному по менбше → тот ваще маленькому (жесть!) → тот бизнес аналитику → тот вам. Размер цепочки может меняться в зависимости от размера компании и вашего положения в ней.

Логично предположить, что на каждом этапе часть информации и боли клиентского запроса теряется. Теряются и деньги :) До конечного программиста задача доходит в виде перекладывания джосничка в нужное место за миску риса, но что самое интересное, это может быть не совсем то что нужно! Может быть там вообще не надо было ничего никуда перекладывать.

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

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

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

Что делать и куда смотреть — ваш выбор. Но я лично стараюсь как можно больше вникать в потребности бизнеса. Если даже у меня не будет возможности принять решение, по крайней мере я точно буду понимать что и зачем я делаю, и таким образом пытаться повысить свою ценность, что в итоге материализуется в большей сумме денег на моем счету.

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

#карьера
permalink | задонатить
daily rozhok №7: апдейты по Жоре, коронавирус, обзоры автомобилей, ресторанов, сериалов и бытовой техники

Трям коллеги, поздравляю всех с пятницей! Это дайджест канала @daily_rozhok. @daily_rozhok — канал где я пишу на рандомные темы. Подписывайся, если тебе интересны дорогие автомобили, крутые тусовки и настоящая лакшери жизнь!

Давно дайджестов не делал, поэтому постов целая куча, главные из которых это конечно же апдейты о моём товарище Жоре. Интересные посты отмечены эмодзи 👉👌

Рациональная духота—все врут, никому нельзя верить, каждое утверждение должно быть подкреплено пруфами из пабмеда иначе нет вообще никакого смысла в разговоре.

Против социального дарвинизма—дисс на позицию "моя хата с краю, мне на всех плевать, если что уеду в Грузию". Почему играют они а проигрываешь ты.

Объедки—подгораю от того что другие не доедают свою порцию в ресторане. Приглашаю в комментарии людей которые оставляют несъеденными бортики от пиццы🍕

Кража—купил краденую запчасть для велосипеда.

Окно овертона и сексизм в старой фантастике—рассматриваю Стругацких через призму современной повестки.

Неосознанная жизнь—каждый день я не замечаю маленькие вещи которые мешают мне жить и это очень-очень плохо.

Невкусные помидоры—рассуждения о том почему люди кушают пресную пищу и никого это не беспокоит.

Не смотрю сериалы—уже посмотрели игру в кальмара? А я не посмотрел. И не буду смотреть. А если вы еще не смотрели то не советую, бесполезное это дело.

Компьютерный мастер—как я чинил незагружающийся виндовс 7.

Ламеры—кто-то ещё помнит такое слово?

Вечный двигатель—дилетантские рассуждения на тему низкого качества современного автопрома.

Пропаганда—съездил к родственникам, послушал Киселёва (или Соловьева, хрен их разберешь), сразу же вспомнил "Тридцатую любовь Марины". В комментариях моментально начался срач прямо по канонам, поэтому пост пришлось удалить, а найти его сможет только самый любопытный.

Тупой антиспам гмейла—жму на письме спам, а когда приходит новое письмо от этого же адресата, оно не попадает в спам, ну как так можно? Бугурчу на гугл.

Раммштайн—как прийти к реальному успеху послушав песню "зонне".

Интернет-бездуховность—раньше трава была зеленее и ходить за покупками в настоящий магазин приятнее. Теперь везде бездуховная доставка которая убивает социальные взаимодействия.

🦠Коронавирус—заболел коронавирусом, делюсь впечатлениями.

Атлант заправляет штаны—не хочу видеть нищих и обездоленных на улице.

Go big or go home—motivational talk, посредственности миру не нужны. Кто не рискует тот не ездит на гелике🚀

🌤Жора находит работу и светлое будущее—продолжение истории Жоры. Краткое содержание предыдущих частей.

💉Антиваксер Жора—Жора делает норматив Iron Man благодаря своим стойким убеждениям.

💩Феерия говен—обзор робопылесоса Roborock S5 в стиле Владимира Сорокина.

Как рано просыпаться—как рано просыпаться без регистрации и смс, нечего и добавить. Кто не может настроить сон—бегом читать!

Конструкторы и механики—все программисты на самом деле неинтеллектуально и безыдейно крутят гайки и это плохо.

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

#daily_rozhok
permalink | задонатить
👍1
Рабочая почта

Когда я работал в большом энтерпрайзе, то основным средством коммуникации у нас была электронная почта. У меня в аутлуке были настроены десятки папочек, специальные фильтры и метки. Администраторы создавали группы по интересам, у всех были красивые корпоративные подписи, "Доброго времени суток коллеги" и так далее.

В день могло приходить по пятдесят-сто писем и все они аккуратно разгребались и складывались. Особенно мне нравилась древовидное преставление переписки—сразу понятно, кто кому куда на что ответил. Кто помнит что такое NNTP или видел старые форумы тот оценит. Дерево решает.

Время моего перехода в другую компанию—маленький стартап как раз попало на рост популярности слака, который полностью заменил нам почту. Емейл остался только для сервисных писем и каких-то системных нотификаций. В качестве основного средства коммуникации использовался слак и видеозвонки.

В дальнейшем история повторялась. Никто больше не использует почту. Слак, ms teams. Для документации notion.

Недостатки у этого дела очевидные: нет нормальной асинхронной коммуникации, нет хорошего поиска и каталогизации информации, в общем всё это перетиралось сто раз.

Считаю что это плохо для культуры. Мечтаю поработать как-то в настоящей асинхронной команде, без звонков на каждый чих и километровых переписок в чатиках, а с использованием вдумчивой коммуникации и соответствующих инструментов (Basecamp/Twist/phpBB/тикеты гитлаба).

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

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

Интересно, у кого-нибудь до сих пор активно используется почта?

#работа
permalink | задонатить
👍2
Как я оставил коллегу без отпуска

На моей первой работе постоянно была нехватка ресурсов. Проектов было слишком много, а людей, которые что-то соображали во внедрении сложных вещей—слишком мало.

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

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

Дальше босс пошёл с этим списком по линейным менеджерам и как-то надёргал людей, временно потушив проект.

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

Менеджеры в той компании умели быть настойчивыми, а наш герой не смог отстоять свои границы, поэтому он согласился сдать билеты и перенести отпуск.

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

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

А сама необходимость "аппрувить" отпуск перемещает меня в средние века, когда крестьянин имел ограниченную сводобу и зависел от феодала. Вроде умом и понимаешь что синхронизация отпусков нужна для управления проектом, тебя никто не привязывает и чуть что—через дорогу на +500, а душой всё равно чувствуешь что остаешься рабом.

#кулстори
permalink | задонатить
👍1😁1
Линукс на лептопе. Чем я заменил макбук

Больше двух лет прошло с тех пор, как я переехал на линукс. Для тех кто пропустил, начало: «Как я съезжал с macOS после 5 лет работы за макбуком» и промежуточная ретроспектива: «Линукс на десктопе год спустя».

До конца этого лета в качестве мобильного средства разработки я пользовался MacBook Pro 2015. На моих задачах он уже давно тормозил и совершенно меня не устраивал, поэтому я ограничивался там мелкой разработкой. Новые макбуки мне покупать так и не захотелось, поэтому я вяло смотрел на то, что есть на рынке. Полноценной альтернативы макбуку с точки зрения качества сборки и тачпада как не было так походу и нет (кроме frame.work, см. ниже). Но так как лептоп у меня дополнительный, а не основной рабочий инструмент, то я решил что согласен мириться с недостатками существующих решений.

Длительное время я пассивно посматривал обзоры разных ноутов. Так как я собирался установить Linux, то список несколько сужался—известно что Lenovo отлично поддерживается и не вызывает проблем.

У меня образовался шорт-лист из ThinkPad X1, T14 и T490. По характеристикам и цене они примерно одинаковы, отличаются весом и ремонтопригодностью.

Официальный ноутбук за фулл прайс я покупать не собирался, поэтому пошел на OLX и начал рыть там. После двух недель ленивого поиска и отсева нашёл отличного кандидата—американский T14 пользованный пару часов (видно по смарту) с 3+ годами международной гарантии. Core i7-10610u, 16 GiB RAM, 256 GB NVMe, IPS Full HD всего лишь за 1000$. T14 довольно ремонтопригодны—можно добавить памяти, заменить NVMe, батарею, всё разбирается и собирается стандартными отвёртками. Вначале я хотел сразу апгрейднуться до 32/512, как на десктопе, но потом передумал.

Ноут был куплен у продавана на Позняках и привезён домой. Дома я поставил на него Linux Mint. Всё завелось без дополнительных настроек, кроме сканера отпечатка. Его кажется тоже можно завести, но я не разбирался. Засыпание по закрытию работает, батарея держит не знаю сколько, если просто браузер смотреть то наверное более 7 часов, если вебпак гонять то меньше. Это можно подтюнить но я не занимался. В интернете пишут что проц троттлит, возможно это так, но мне не мешает. Всё работает очень быстро, я не замечаю никаких тормозов и свои задачи (IntelliJ, докеры, браузеры) решаю без каких-либо проблем.

Я эпизодически работаю за этим ноутом с августа и весьма доволен. На макбук возвращаться желания нет.

Из вещей которые лучше в макбуке:

- Тачпад. Хотя тачпад моего синкпада очень хорошо меня весьма и весьма радует (а я помню тачпады еще с t410), до макбука ему далеко.

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

- Экран Full HD конечно будет хуже чем ретина, но у меня глаза не вытекают, вполне ок.

Всё это некритично, жизнь не портит и неудобств не доставляет.

Итог: я для себя решил проблему мобильного устройства для работы и весьма-весьма доволен соотношением цена/качество. Моё мнение неизменно и укрепилось—Linux полноценно пригоден для работы программиста.

P.S.: пока верстался номер, ребята из frame.work сделали крутейшее решение. Если бы я подождал, то взял бы его—там лучше экран. Поэтому если ищете замену макбуку—настоятельно рекомендую обратить внимание.

#инструменты
permalink | задонатить
👍10😱31
Докер для разработки

Непопулярное мнение—не использую докер в разработке.

Исключения—когда нужно сделать хитрый образ и протестировать сборку локально намного быстрее чем мучать заведомо медленный CI/CD.

А так то случаи когда мне пригождался докер, можно пересчитать по пальцам руки. Пару раз делал фичу которая требовала поднять кухню из прометеуса-графаны и на этом всё.

Девелоперские окружения, например python, java, node или руби ставлю локально с помощью pyenv, rvm, sdkman, fnm. Базу данных (pg, mysql и redis) использую либо ремоутную либо подымаю полноценно локально (sudo apt install postgresql-12).

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

Удобство докера понимаю, но в работе не применяю. Это конечно не касается деплоя. Там всё контейнеризировано и оркестрировано.

Истории о куче докеров которые люди зачем-то подымают читаю с содроганием. А вам нужен докер? Поделитесь в комментариях.

#инструменты
permalink | задонатить
2👍2
daily rozhok №8: 🎄итоги года🎄, книжки, бумажки и отдых на море

Друзья, спасибо что были со мной весь год, надеюсь он у вас был лучше предыдущего, несмотря на все карантинные невзгоды!

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

А у нас свежий выпуск @daily_rozhok:

🎄Итоги года 2021🎄 — всё не так уж и славно; но это отличный повод сделать следующие итоги намного круче!

Прочитал «Одураченные случайностью»/«Fooled by Randomness» — обзор первой книги Нассима Талеба. Талеба я люблю, поэтому рекомендую.

Жизненные установки на бумажке рядом с монитором — как я повесил рядом с рабочим монитором бумажки с мотивационными лозунгами и что из этого получилось.

Мне норм — поговорил с коренным синайцем. Притча о богаче и рыбаке на бедуинский лад.

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

Переосмысливая офис — начал немного ходить в коворкинг чтобы совсем не одичать, делюсь впечатлениями.

Дырка в зубе — держите зубы в порядке а то будете как я потом ходить раз в неделю к докторам. Впрочем на самом деле ничего вы держать в порядке не будете; про это и пост.

Помнить всё — хвастаюсь отличной памятью и сетую на её выборочность.

Информационная перенасыщенность — на читалей вываливается всё больше и больше инфы и захватить внимание человека сейчас труднее и труднее. Весёлые картинки и тикток — всё что мне нужно.

---

🎄Всем счастливого Нового Года!🎄

P.S.: Я еду в Подобовец на лыжи, с 10-го по 17-е января. Присоединяйтесь, затусим 🎿

#daily_rozhok
permalink | задонатить
🎉20👍17💩42🤩1
Отпуск за свой счёт

Интересно как работает логика отпусков в наёмной работе. Большинство людей из моего окружения принмают лимиты, навязанные нанимателями. Если тебе выдали 20 дней — вот эти 20 дней и планируются, не больше.

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

А отпуск "за свой счёт" чаще всего берут когда только сменили работу, планы уже есть, а дни ещё не накапали.

Хотя эти ограничения только у нас в голове. И в здравом смысле. Сомневаюсь, что ваш босс обрадуется, если вы будете отсутствовать 3 месяца в году, но думаю что никто не напряжётся если аккуратно превысить лимит в два раза.

Во всяких американских конторах популярная тема "безлимитных отпусков". Я не уверен как это работает, но у меня есть ощущение что никто ними не пользуется.

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

Я сам почти никогда не работаю в пятницу, но и денег за это естественно не получаю. Да и вообще, не видел оплачиваемого отпуска уже лет 5 🤣

А если посчитать отпуск в денежном эквиваленте, то получатся совсем небольшие деньги. Почему же люди так мало отдыхают? Я уже писал об этом два года назад: «Отпуска»

#работа #лайфстайл
permalink | задонатить
👍36🔥6😁43
Оплата за результат

Пять лет назад я был сильно увлечён идеями Егора Бугаенко о по-задачной оплате программисту. Закрыл тикет—получил деньги. Есть целая методология, с ролями, процессом, поощрениями и наказаниями. Всё тщательно продумано. Подробнее почитайте на странице проекта который это всё реализует.

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

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

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

В некоторой степени акции и опционы позволяют получить немного лавэ если компания успешна, но вклад каждого конкретного человека в такой системе сильно размывается. Мы работаем в гугле. Я работаю в отделе адтеха а ты делаешь гугл драйв. Моя работа приносит колоссальную прибыль, а твоя—убытки. При этом у нас одинаковый грейд и зарплата. Добро пожаловать в социализм и уравниловку!

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

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

В повседневной деятельности я миксую позадачную и почасовую оплату, но заметил что часто задачу просто оцениваешь примерно в часах а в не в том, сколько за неё можно получить. Это плохо, и надо стремиться каким-то образом привязать свою оплату к финансовому результату, который будет получен. Хорошо если например ты говоришь "я срежу ваш счёт AWS за 10% от экономии за год". А если надо делать что-то сложное, что не поддаётся точной оценке, то мозг имеет тенденцию якориться на жопочасы.

Так на гелик не заработаешь.

#работа #карьера
permalink | задонатить
👍31🔥5🎉21
Масштабная утечка персональных данных граждан Украины

В ночь на 14 января на государственные сайты Украины была совершена хакерская атака. Много сайтов просто не работали, на части хакеры оставили дефейс с антиукраинской пропагандой.

21 января на сайте с объявлениями о продаже слитых баз появилось объявление в котором предлагали к покупке большую базу правительственного портала госуслуг "Дія". В качестве доказательств продавец выложил в открытый доступ три архива: дамп базы 100 000 пользователей, 10 гигабайт изображений а так же дамп слабоструктурированных данных в виде JSON записей.

Минцифры Украины, Киберполиция и другие спикеры от власти немедленно заявили о том что эта база является фейком, "Дію" не ломали, то что предлагают купить—это компиляция из старых сливов до 2019 года завёрнутая в фантик, а все кто распостраняют информацию о якобы сливе—это провокаторы и враги государства которые хотят дестабилизировать ситуацию на пороге войны.

Я решил самостоятельно проверить, что же это за такие данные и скачал сэмплы предоставленные продавцом. Первое что меня интересовало—это актуальность данных. В таблице есть: емейл и телефон, дата рождения, ФИО, ИНН, серия и номер паспорта или ИД-карты и другая информация. Среди этой инфы оказалось достаточно много записей с 2020-2021 года.

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

Я опубликовал проведённый мной анализ на форуме доу и начали подключаться другие люди.

Один человек обратил внимание на то, что идентификатор userId из слитой базы совпадает с идентификатором который записывается в JWT-токен выдаваемый порталом Дія в момент логина. Он написал инструкцию о том как получить userId из сессии и уже скоро мы имели подтверждение от кучи людей о том, что поиск по их userId в базе выдаёт корректные данные.

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

Анонимный пользователь ДОУ разработал сервис с инструкциями по проверке скомпрометирован ли ваш userId:

👉https://haveiindb.xyz/check.html 👈

По userId сайт покажет ФИО и частичные паспортные данные. Вы можете сами убедиться в аутентичности данных. Из-за того, что выборка маленькая (всего лишь около 100 000 записей), то вероятность этого невысокая, но на форуме ДОУ нашлось достаточно людей которые подтвердили корректность.

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

Кроме персональных, в дампе есть JSON с другими данными. Я перепроверил и могу утверждать, что формат этих данных очень похож на тот, который отдаёт портал Дія. Среди горы файлов есть информация о заявках на получение матпомощи для ребёнка (Є-Малятко) что так же позволяет сделать вывод о том, что база свежая.

Среди скомпрометированных пользователей есть как те, кто логинился на веб-портал Дія, так и те, кто только ставил приложение.

Мне бы очень хотелось чтобы это действительно была фейковая база, но сюдя по имеющимся доказательствам, к сожалению, это не так. Моё предположение—во время хакерской атаки 14-го января злоумышленники получили доступ к приложению, которое находилось в одном контуре с Дієй, и смогли сдампить базу. При этом заявления киберполиции и минцифры о том, что "Дію не ломали" вероятно де-юре правдивое, но для нас, как граждан это не имеет значения—данные утекли в сеть, и неважно, каким путём.

Тем временем государство выбрало тактику замалчивания и отрицания. Я уже дал свой комментарий порталу ДОУ, ждём независимого расследования.

Лайк, шер, репост.
👍115😱30💩21🔥93
Личные облака

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

Что я понимаю под личным облаком и удобной инфраструктурой?

- приватная сеть с балансировщиком, VPNом внутрь, фаерволами

- легко масштабируемые вычислительные ресурсы

- managed базы данных с автобекапами, автообновлениями, горизонтальной и вертикальной масштабируемостью

- мониторинг и алёрты

- объектное хранилище и CDN, очереди

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

- service discovery чтобы сервисы могли общаться друг с другом

- https снаружи и внутри, автогенерация сертификатов

- полностью автоматизированный blue/green, canary деплоймент

- хранение секретов и изоляция сервисов друг от друга

- понятный CI/CD, интеграция с тулзами

- дашборд чтобы медитировать на метрики загруженности кластера

- не за все деньги мира

- всё полностью автоматизированно, так чтобы если завтра война, датацентр взорвали, а человек, который всё разворачивал, пропал, то любой другой боец мог подхватить пачку терраформ шаблонов и поднять всё в новом месте одной командой

Да, все эти задачи решаются, для большинства из них есть вендорские решения. Менеджед базы данных есть почти у всех, кубернетес кластер тоже, VPC и друзья тоже есть, миллион пресетов для графаны и прометеуса и так далее, и так далее, и так далее.

Проблема в том, что никто до сих пор не собрал это в кучу. Есть те или иные куски—там сеть, сям облачные ресурсы, тут сервис дискавери и сервис меш, здесь гора баш скриптов для автодеплоя.

Но единого, и главное, простого решения нет.

Я вижу здесь разрыв. Или мы берём хероку и деплоим один сервис, или мы нанимаем двух девопсов по $8k каждый и строим кубер в амазоне который стоит столько же.

Нет решения посредине, которым могли бы пользоваться разработчики, и которое не было бы запредельно сложным.

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

Конечно, у каждого PaaSа (а то что я предлагаю это именно PaaS) есть фатальный недостаток—он написан не той командой, которая его использует. Все команды так или иначе будут упираться в ограничения платформы, а если делать её слишком универсальной—то мы получим кубернетис.

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

#инструменты
permalink | задонатить
👍31👏2🤔1
Личные облака: Nomad

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

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

Nomad

Я уже давно облизывался на Hashicorp Nomad как легковесную альтернативу тяжёлому и сложному Kubernetes и завендорлоченному ECS. Полтора года назад я даже поднял полу-продакшн кластер для одного из клиентских решений, но проект схлопнулся и на том мои эксперименты закончились.

В экосистеме Hashicorp (Nomad, Consul, Vault) есть всё, что мне нужно, и когда подвернулся новый проект, где менеджед кубер обошёлся бы слишком дорого, я взялся за прототипирование.

План был такой: сделать терраформ модуль в котором описать стандартную структуру веб-сервиса (приватная сеть, бастион, балансировщик, менеджед база, автоскейлинг группа, докер реестр) которая бы в один клик подымалась и разворачивала Consul+Nomad кластера. Дальше с помощью GitLab туда уже бы деплоились нужные джобы.

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

Дальше я задеплоил туда своё приложение и навернул сверху ингресс в виде Traefik с LetsEncrypt конфигурацией. По незнанию я поднял кластер траефиков и некоторое время разбирался почему у меня не генерируются сертификаты, пока не дошло, что каждый запрос к LetsEncrypt генерирует свой challenge, а так как траефиков много, то они соревнуются друг с другом и отдают не те ответы. Хотите решить эту проблему—покупайте enterprise-edition или оставляйте только один инстанс. Не high-available, но пока так.

Вся эта связка: Nomad+Consul+Traefik круто заинтегрирована друг с другом, в интернете есть туториалы на всё и фактически, после того как я поднял железо, то джобы заработали с пол-пинка. У всех продуктов есть приятный и отзывчивый UI в котором легко получить нужную инфу.

У меня осталось несколько нерешённых задач: Vault для хранения секретов (сейчас я просто сложил их в Consul) и нормальный CI/CD. Из-за того, что кластер находится внутри приватной сети, подключиться к нему можно только по VPN, поэтому мой GitLab не имеет туда доступа чтобы дёрнуть редеплой. Есть несколько способов решить эту задачу (GitLab Runner или Waypoint внутри сети), но я пока не дошёл до реализации.

Часть работы после полного пересоздания инфраструктуры приходится делать вручную—создание секретов и конфигурацию vpn, но для остального уже есть готовый шаблон. Собрал Dockerfile, нажал кнопочку и оно поехало куда надо.

Nomad мне прям зашёл своей простотой и скоростью работы. Конечно, готовых решений по нему намного меньше чем по куберу, но у Hashicorp очень крутая документация и синергия между своими продуктами. Поэтому в планах у меня большая миграция разбросанных тут и там по облакам сервисов в свой nomad-кластер.

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

Ну а на этих выходных я занимался уже подъемом такого же прототипа, но на базе Kubernetes. Об этом в следующей части.

#инструменты #работа
permalink | задонатить
👍68🔥30
Война

От поздневечерних новостей очень тревожно засыпалось. Хотелось верить и надеяться на лучшее. Но уже в ~5 утра меня разбудили звуки взрывов. Тут же позвонила наша подруга которая живет в пригороде возле военной части—там тоже что-то взорвалось. Открываю укрправду—«Путин начал войну».

Мы ±были готовы, поэтому без паники оделись и поехали за мамой на левый берег. У неё всё было собрано. На дорогах города уже ездило много машин для такого раннего часа, к заправкам выстроились огромные очереди, у банкоматов тоже самое. Забрали маму и двух котов и поехали ко мне, на правый берег. Я живу недалеко от центра, в плотной застройке. Надеюсь что сюда ничего прилетать не будет. В нашем доме есть укрытие.

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

Ехать из Киева пока не собираюсь—учитывая что авиаудары нанесли по всей стране, не уверен что где-то безопаснее. Сохраняю спокойствие.

Если у вас есть животные то не бросайте их, а подготовьтесь. Инструкцию можно прочитать на канале FreeAnimals: https://news.1rj.ru/str/FreeAnimals_Ukraine/3

На всякий случай для читателей из РФ: никаких «неонацистов» у нас нет, «военной хунты» тоже, русскоязычных никогда не угнетали, нападать мы ни на кого не собирались, ядерное оружие никто делать не собирается, и «освобождать» нас не надо. Фантазии Путина которые он озвучивал в своих обращаниях комментировать даже не буду—бред поехавшего деда который не стал придумывать очередных распятых мальчиков для объявления войны а просто подло напал потому что может.

Держимся 🙏

#война
permalink | задонатить
👍199168😢47👎5
Media is too big
VIEW IN TELEGRAM
Номер карты 4149629354643025 Ковтунова

Отчёты на нашем канале https://news.1rj.ru/str/FreeAnimals_Ukraine
68🔥9👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Наше замовлення на суму понад 100 000 грн. Дякуємо вам!
48👍11👏6🔥1
Приветствую, друзья!

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

Если есть возможность просьба донатить ещё, карта приват 4149629354643025 Ковтунова.

upd: пишут что моно не работет, но приват и укрсиб ок.

Мы сами тоже добавляем свои финансы а databand.ai поддержали нас на 2000$.

Верим в победу Украины!

p.s.: пока идёт война то не до кубернетисов. Вчера в районе вокзала где я живу сбили крылатую ракету, бахнуло так шо аж дом задрожал. Параллельно обустраиваю с соседями советский бомбарь💪
👍9019😱4👎2😢1