Search
Write a publication
Pull to refresh
3
0.5

WEB-программист, сетевой администратор

Send message

Что я понял к 35 годам о карьере в айти и об отношениях

Level of difficultyEasy
Reading time5 min
Views106K

Я прошел путь в IT: около 5 лет был разработчиком, а последние 6 лет — DevOps‑инженер. Но сегодня я хочу поговорить о другом. По‑настоящему задуматься о жизни меня заставил серьезный кризис, когда одновременно случились развод, увольнение и всплыли детские травмы. И знаете, тот случай когда психология мне помогла.

Здесь не будет технических деталей. Скорее только психологический аспект и моё видение. Так что я понял о карьере в айти и отношениях на личном опыте?

Интересно

Rapid STP

Reading time10 min
Views93K

Протоколы семейства STP обычно несильно будоражат умы инженеров. И в большинстве своём на просторах интернета чаще всего сталкиваешься с деталями работы максимум протокола STP. Но время не стоит на месте и классический STP всё реже встречается в работе и в различных материалах вендоров. Возникла идея сделать небольшой обзор ключевых моментов RSTP в виде FAQ. Всем, кому интересен данный вопрос, прошу под кат.
Читать дальше →

Cовмещаем Haproxy, Vless, WebSocket, VPN и сайт на одном порту

Level of difficultyHard
Reading time13 min
Views23K

Cовмещаем Vless, WebSocket, VPN и сайт на одном порту средствами Haproxy, создаем альтернативу VPN на основе WebSocket.

Читать далее

90% разработчиков не понимают принцип инверсии зависимостей из SOLID. DIP — это не про абстракции

Reading time4 min
Views62K

Зачастую, когда речь заходит про принцип инверсии зависимостей, можно услышать, что инверсия зависимостей (далее DIP) — это что-то там про зависимость от абстракций, и приводятся примеры, где в качестве «плохого» случая, используются конкретные классы, а в исправленном случае, используются абстрактные классы или интерфейсы. Но такая трактовка принципа в корне неверна.

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

Читать далее

40 лучших ИИ-инструментов 2025 году (проверенные и протестированные)

Level of difficultyEasy
Reading time8 min
Views79K

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

Я потратил несколько недель, изучая десятки ИИ-инструментов в 20 категориях, от чат-ботов, которые кажутся до жути живыми, до музыкальных генераторов, сочиняющих меланхоличные фортепианные баллады. Моя цель? Дать вам честную, неискаженную правду о том, какие инструменты стоят вашего времени и денег.

Читать далее

Германская танковая проблема: торжество статистики и один из первых примеров военного OSINT'a

Level of difficultyEasy
Reading time14 min
Views31K

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

Решением этой проблемы стал нетрадиционный подход, основанный на применении статистического анализа к, казалось бы, незначительным деталям — маркировке на захваченном немецком оборудовании. Этот метод, известный как «Германская танковая проблема», позволил получить удивительно точные оценки производства немецких танков, превосходящие по точности данные, полученные традиционной разведкой. История германской танковой проблемы демонстрирует, как статистические методы способны превратить, казалось бы, хаотичную информацию в ценные разведывательные данные, играя решающую роль в стратегическом планировании и ведении боевых действий. Однако, статистическим анализом производства танков всё не ограничивалось.

Читать далее

Почему джуны путаются в асинхронном коде (и как научиться с ним работать)

Level of difficultyEasy
Reading time8 min
Views44K

Асинхронный код часто становится камнем преткновения для начинающих разработчиков. Почему функции выполняются не в том порядке, зачем нужны промисы, и что делает async/await? В статье я простыми словами объясняю:

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

Если асинхронность вызывает больше вопросов, чем ответов, загляните в статью - там всё по шагам. 🙂

Читать далее

Обвиваем YouTube змеем, или как смотреть и скачивать видео с YouTube без VPN на чистом Python-е. Часть 2

Level of difficultyEasy
Reading time8 min
Views47K

Приветствую! Эта статья является продолжением (2 частью) статьи Обвиваем YouTube змеем, или как смотреть и скачивать видео с YouTube без VPN на чистом Python-е. Часть 1 Если честно, я был приятно удивлен популярностью первой части: 115К просмотров за неделю и 137 голосов, которые принесли мне 21 место в рейтинге Хабра. Учитывая, что эта статья была из песочницы (отдельное спасибо @Ilha за приглашение), для меня это большой результат. Поэтому всем, кто поставил стрелочку вверх – авторское спасибо!)

В этой статье я покажу, как можно скачивать с YouTube каналы и плейлисты. Если кто-то не читал первую часть, настоятельно рекомендую это сделать. По крайней мере, если по мере чтения у вас возникнут какие-то вопросы, скорее всего там есть на них ответы. Напомню, что у нас уже есть средство, которое решает "проблему с устаревшим и изношенным оборудованием Google Global Cache" (к сожалению, оно не у всех работает, учтите), а также мы разобрались с тем, как скачивать с YouTube видео и аудио в любом качестве. Итак, начнём!

UPDATE: По решению Роскомнадзора в марте 2025 г. первая часть статьи была заблокирована на территории России. pdf-версию статьи вы можете скачать здесь

Читать далее

Python: неочевидное и вероятное

Level of difficultyMedium
Reading time5 min
Views16K

Python известен своей простотой и предсказуемостью, но за этой доступностью скрываются интересные и неочевидные особенности, способные удивить программистов с базовым опытом(а если повезет, то и опытных). В этой статье мы рассмотрим несколько таких «фокусов» и тонкостей, чтобы глубже понять внутреннюю логику и философию языка.

Читать далее

Я ушел с маркетплейсов, закрыл производство, продаю на 25 млн в год, и живу в 6-местном хостеле. А как прошел ваш год?

Level of difficultyEasy
Reading time12 min
Views150K

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

Я разбирался в экипировке для единоборств и ожидаемо начал бизнес в этой сфере. За 10 лет я попробовал маркетплейсы, свое производство, интернет-магазины, розничный магазин, поэтому расскажу где какие цифры и проблемы. 

Читать далее

React useCallback() — полное руководство

Level of difficultyEasy
Reading time15 min
Views7.6K

Всем привет! На связи Spectr и рубрика «Что читают наши разработчики». Сегодня разберем оптимизацию функциональных компонентов за счет мемоизации функций обратного вызова с помощью useCallback().

Независимо от того, начинающий вы разработчик React или хотите углубить свои знания, это руководство предоставит вам полезную информацию о useCallback(), включая его синтаксис, применение, распространенные случаи использования и лучшие практики. Мы также сравним его с другим хуком — useMemo()

Разобраться с useCallback() полностью

Их будут искать с особым пристрастием: 7 документов, которые должны быть на сайте каждой российской компании

Level of difficultyMedium
Reading time5 min
Views14K

Сайт – это лицо компании. Даже если в вашем случае сайт — не площадка для продаж, а дань «тренду», оформлять его в соответствии с требованиями законодательства вы обязаны. Если прогуляться по подвалам онлайн-площадок, можно увидеть настоящие жемчужины околоправовой мысли.

Читать далее

Мониторинг сетевого оборудования MikroTik с использованием MikroTik API, MKTXP, Prometheus и Grafana

Level of difficultyEasy
Reading time5 min
Views28K

Представьте: пятница, вечер, вы уже мысленно с бокалом чего-то крепкого и вкусного наслаждаетесь прокрастинацией. Ничего не предвещало беды, но жизни любого администратора наступает момент, когда нужно поиграть в игру "Угадай на каком этаже пропал интернет". И что бы победить непредсказуемость сетевых устройств, умные люди придумали Grafana для визуализации различных метрик, и различные экспортеры этих метрик. В данной статье рассмотрим экспортёр метрик MKTXP, который настраивается в 2 кнопки.

Читать далее

Решаем проблему устаревания кэширующих серверов. Смотрим на телевизоре. Не VPN

Reading time3 min
Views106K

Не так давно всех потрясла новость об устаревании оборудования популярного видеохостинга, в результате чего сервис перестал нормально работать и началось замедление. Сначала в замедлении сервиса пытались обвинить Роскомнадзор, но до сих пор нет внятных нормативно-правовых актов (поправьте меня в комментариях, если я ошибаюсь), которые бы позволяли данному органу применять методы блокировки в отношении сервиса. Я не верю, что государственный орган может нарушать закон, поэтому будем исправлять проблему самостоятельно и поднимем свой «кэширующий» сервер.

В качестве нашего «кэширующего» сервера будем использовать дешевый одноплатный компьютер MangoPi MQ-Quad (или другой аналогичный), стоимостью не более $29.

Читать далее

Как организовать библиотеку книг в Obsidian

Level of difficultyEasy
Reading time3 min
Views31K

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

Читать далее

Один год с GraphQL: как технология работает на длинной дистанции?

Reading time8 min
Views14K

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

В Сравни у нас много продуктов, включая сервисы подбора и покупки полиса ОСАГО, подбора кредита, образовательных курсов, онлайн-оформления ипотеки. Информация о пользователях хранится и обрабатывается в специальном центральном сервисе (Profile Service). На текущий момент сервис содержит миллионы объектов пользователей, а нагрузка в пиковые моменты там до 180 запросов в секунду.

Исходная реализация Profile Service была построена на микросервисах и, как казалось нам ранее, полностью покрывала наши потребности: в плане гибкости взаимодействия с продуктами и работы с существующей нагрузкой. Изменения назрели под конец прошлого года, когда продуктовые команды стали настойчиво обращаться в команду сервиса для решения срочных задач. Здесь им регулярно требовалась помощь разработчиков — и команда Profile Service около месяца занималась только обработкой продуктовых запросов.

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

Читать далее

dumbproxy — что нового?

Level of difficultyMedium
Reading time5 min
Views5.3K

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

Читать далее

Обвиваем YouTube змеем, или как смотреть и скачивать видео с YouTube без VPN на чистом Python-е. Часть 1

Level of difficultyEasy
Reading time13 min
Views171K

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

В этой статье я хочу рассказать, как можно скачивать видео, аудио (1 часть статьи), плейлисты и целые каналы с YouTube (2 часть статьи) без использования VPN и на чистом Python-е. Сразу оговорка: VPN нам не понадобится, но мы сделаем собственное средство, которое будет решать "проблему с устаревшим и изношенным оборудованием Google Global Cache" (вы поняли, о чём я). Я думаю это средство будет особенно актуально сегодня, когда у многих россиян YouTube почти или совсем не работает.

Читать далее

Information

Rating
3,585-th
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity