Search
Write a publication
Pull to refresh
3
0.5

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

Send message

Матрица soft skills: как вырасти от стажера до синьора

Level of difficultyEasy
Reading time16 min
Views18K

Привет! Меня зовут Виталий, я фронтенд-тимлид в KTS.

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

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

Читать далее

Как я создал Telegram-бота для хранения файлов и чуть не стал библиотекарем

Reading time14 min
Views24K

Узнайте, как я превратил свой Telegram в персональную файловую систему с помощью бота на Python. В статье делюсь опытом разработки, полным кодом и лайфхаками. Если вы когда-нибудь хотели использовать Telegram для хранения и обмена файлами, эта статья для вас!

Читать далее

Мне 34, я был в 65 странах, и у меня есть для вас лайфхак

Level of difficultyEasy
Reading time4 min
Views101K

Вы же попались на этот кликбейт?

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

За первый же месяц с ботом я купил перелёт в США и обратно в два раза дешевле стандартной цены. А сколько времени сберёг на мониторинг — не сосчитать. Поделюсь ссылками на мой проект в GitHub и названием бота. Вы сможете собрать похожее решение под свой запрос и летать в отпуск, испытывая меньше фрустрации от ценника на билеты и туры.

Читать далее

Как я создал Vanilla Calendar Pro — легкий и гибкий календарь на JavaScript с использованием TypeScript

Level of difficultyEasy
Reading time3 min
Views19K

Привет, Habr!

Честно говоря, долго сомневался, стоит ли писать эту статью. Я понимаю, что среди комментариев наверняка будут такие, кто скажет: «Очередной никому не нужный датапикер». Но сегодня, когда Vanilla Calendar Pro собрал больше 480 звезд на GitHub и получает 17 тысяч скачиваний в месяц, я решил поделиться своей историей.

Хочу сразу отметить: я не претендую на лавры лучшего разработчика календарей и датапикеров. Эта статья о моем первом опыте в open source, о том, как я создавал проект с нуля и как он стал полезен другим разработчикам.

Читать далее

Химик рассказал про разницу между стиральным порошком и жидкостью для стирки – кроме очевидной

Level of difficultyEasy
Reading time5 min
Views194K

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

Хотите ли вы получить белое бельё? Нужны ли вам энзимы? И в чём разница между порошком и жидким моющим средством?

Как это часто бывает, ответить на эти вопросы поможет знание химии.

Что такое стиральный порошок?

Активными ингредиентами как порошков, так и жидкостей для стирки являются «поверхностно-активные вещества», также известные как детергенты (поэтому по-английски продукт называется «laundry detergent»). Как правило, это заряженные молекулы, ионы, которые имеют две различные части в своей структуре. Одна часть хорошо взаимодействует с водой, а другая — с маслами.

Читать далее

SoftSIM, или Будущее сотовой идентификации в России

Level of difficultyEasy
Reading time9 min
Views3.6K

Добрый день, меня зовут Максим Бритвин, я много лет занимаюсь разработкой и производством электроники, закрывая весь цикл от идеи до вывода на рынок. Свой карьерный путь прошёл от рядового специалиста до директора по продуктам, а в данный момент времени совмещаю роль руководителя направления GSM-решений в Лаборатории Интернета вещей ПАО Сбербанк.

И сегодня мне хотелось бы рассказать вам про SIM-карты, их эволюцию и в целом будущее сотовой идентификации в России.

Читать далее

SOLID. Проблема новичка

Level of difficultyEasy
Reading time5 min
Views21K

Здравствуйте, друзья! Меня зовут Константин, я python backend developer из компании «Окенит». Сегодня я хочу рассказать свое видение проблемы новичка при ознакомлении с принципами SOLID, описанными в книге «Стерильная Архитектура» Робина Мартерта.

За свой десятилетний опыт я часто был свидетелем ситуации, когда молодые разработчики, желая сделать свой проект как можно более открытым для расширения и редактирования, превращали его в груду нечитаемого и неподдерживаемого кода при попытке использовать у себя все рекомендации Матушки Роба. Отсюда вопрос: «Почему, при следовании советам более опытного разработчика, код стал только хуже?».

Ответ на этот вопрос пришел ко мне очень быстро. Из‑за описания и без того абстрактных вещей чересчур абстрактными словами и примерами, Робин Мартерта вместо упорядочивания знаний, наводит хаос в умы читателей. Во избежание этой ситуации я решил написать данную статью, где коротко расскажу о наборе принципов SOLID, для чего они нужны и, главное, как применять эти принципы в жизни. Начнем по порядку, с буквы «S». И так, что же она значит?

Читать далее

Что происходит, когда вы вводите адрес сайта и нажимаете Enter?

Level of difficultyMedium
Reading time8 min
Views30K

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

На собеседованиях я иногда задаю один, казалось бы, простой вопрос: «Что происходит после того, как вы вводите URL сайта в адресную строку браузера и нажимаете Enter?» Этот вопрос подходит как для Junior, так и для Middle-разработчиков, а иногда и для Senior, потому что, несмотря на его фундаментальность, в нем многие ошибаются или не могут дать точного ответа.

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

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

Читать далее

Простая настройка CI/CD для Фронтенда и Бэкенда в Github без сторонних инструментов бесплатно в 2024 году

Level of difficultyEasy
Reading time17 min
Views13K

Всем привет! Недавно решил попробовать, что из себя представляет Flutter Web, подумал, может попробовать сделать бота для Telegram, и заодно настроить простейший CI/CD для отдельного фронтенд- и бэкенд-проектов. Однако в интернете я не нашёл простой и исчерпывающей инструкции или процесса.

Поэтому задача этой статьи — решить эту проблему! Сделать автоматическую сборку, тестирование и деплой на сервер, и всё это — без необходимости городить SSH-ключи, Github-токены и подключать сторонние решения. Всё на минималках, без лишней бюрократии.

Читать далее

Протоколы внутренней маршрутизации

Level of difficultyMedium
Reading time7 min
Views11K

Материал продолжает серию статей, посвящённую семинарам внутреннего обучения, которые проводятся в IT‑компании NAUKA. Надеемся, что сведения, представленные в ней, будут полезными для школьников старших классов, студентов младших курсов ВУЗов, сотрудников IT‑компаний, не связанных в своей работе с IT‑инфраструктурой.

В данном разделе будут кратко рассмотрены протоколы внутренней динамической маршрутизации (RIP, EIGPR, OSPF) наиболее часто используемые в настоящее время для сетей IPv4.

Читать далее

Разведка по Telegram ботам — OSINT в телеграм

Level of difficultyEasy
Reading time4 min
Views47K

Приветствуем дорогих читателей! Продолжая рубрику статей ШХ, в этой статье мы решили более подробно сфокусироваться на ботах в Telegram, т.к они во множестве случаев бывают ни чуть не хуже и эффективней распространённых инструментов в OSINT. Рассмотренные в этой статье боты в основном будут касаться разведки по пользователям в Telegram.

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

Читать далее

7 продвинутых приемов pandas для науки о данных

Reading time4 min
Views15K

Pandas — это основная библиотека для работы с данными. Вот несколько приёмов, которые я использую, чтобы быстрее и проще выполнять повторяющиеся задачи по работе с данными.

Читать далее

Готовьтесь к росту цен

Reading time8 min
Views151K
Это был тяжёлый год, был он тяжелей, чем тот.

В этом году Центробанк выставил высокие ставки и фактически перекрыл возможность строить ЦОДы за кредитные деньги. А если что, то дата-центры строятся за колоссальные деньги. То есть исключительно на кредиты — с тем, чтобы потом продавать их мощности и постепенно отбивать кредитные деньги. То же самое происходит в других областях бизнеса, и почти везде практическая невозможность взять кредит означает стагнацию многих направлений бизнеса. За ипотеку же вообще можно слетать в космос!

Почему нельзя взять кредит? Потому что почти нет такого бизнеса, который даст денег больше, чем если просто положить их на счёт в банк. Правда, банкам я бы тоже не стал доверять на 100 % даже в случае депозитов, но это уже другая история.

А дефицит стойко-мест растёт. Уже в прошлые годы всё, что строилось, на 80 % раскупалось ещё на стадии строительства. То есть речь идёт даже не про текущие свободные стойки, а про предзаказы на то, что будет готово только в следующем году.

Цена размещения стойки уже выросла на 9–21 % в зависимости от колокации в России.

Кстати, познакомьтесь со звездой рынка — киргизскими серверами:

imageЭто экспорт из Германии в Кыргызстан. Примерно такие же графики — по Польше, Австрии, Италии и т. п.
Читать дальше →

Переезд с Elasticsearch на OpenSearch: рассказываем про нюансы и архитектуру нашей системы логирования

Level of difficultyMedium
Reading time8 min
Views13K

Привет, коллеги! Я Дарья Санькова, эксперт направления инфраструктурного мониторинга в Cloud.ru. Сегодня хочу поделиться нашим опытом перехода с Elasticsearch на OpenSearch для работы с логами. Расскажу, почему мы решили это сделать, какие ключевые отличия между системами мы нашли, несмотря на их принципиальное сходство, и подробно опишу нашу архитектуру обработки логов.

Читать дальше

Обзор способов защиты контейнеров Docker: от простого к сложному

Level of difficultyMedium
Reading time11 min
Views14K

Безопасность Docker — один из главных вопросов, занимающих умы DevOps‑инженеров и аналитиков безопасности. Согласно последним отчетам Snyk и Red Hat более 44% всех контейнеров, которые находятся в коммерческой эксплуатации, содержат уязвимости, даже несмотря на доступность обновления базовых образов. Угроза не ограничивается выявленными недостатками — хакеры беспрерывно ищут новые векторы атак на системы, построенные с использованием Docker и Kubernetes.
Читать дальше →

Триггеры в PostgreSQL: основы

Level of difficultyEasy
Reading time6 min
Views14K

Приветствую! В этой статье поговорим про триггеры в PostgreSQL.

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

Читать далее

Расширенное обнаружение проблем в Zabbix: продвинутая работа с триггерами, тегами и вычисляемыми элементам

Level of difficultyMedium
Reading time7 min
Views10K

Около недели назад мы провели вебинар по соответствующей теме, нас просили поделиться презентацией и мы решили не просто ей поделиться, а написать полноценную статью со слайдами. Запись вебинара уже выложили в нашем канале на Youtube — подписки и лайки как обычно приветствуются. А еще приглашаем вам подписаться на наше телеграм канал zabbix_ru, где мы публикуем много полезной информации по этой популярной системе мониторинга.

Под катом рассказываем во всех подробностях.

Читать далее

GET запросы на практике: правила, принципы и примеры

Reading time14 min
Views95K

Я думаю, что вы не раз уже гуглили, заглядывали в статьи, манифесты IT-гигантов о лучших практиках проектирования API. Я тоже.

Но в большинстве из них всё ограничивается описанием URL ресурса, мотивацией использовать пагинацию, сложными словами про кэширование и SSL. Это, безусловно, необходимо для общего понимания технологий, но практически не помогает, когда ты сидишь перед пустой страницей и надо начать “проектировать контракт”.

Я работаю тимлидом направления системного анализа в X5Tech и за все время развития карьеры сталкивалась с большим количеством кейсов проектирования Web систем. IT продукты в большинстве очень динамичны: постоянно изменяются требования, появляются новые, итеративно улучшается пользовательский опыт (по принципу 20% усилий на 80% результата, а остальное доделаем потом).

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

В этой статье предлагаю спроектировать контракт по шагам, и на каждом из них я расскажу про общие рекомендации из копилочки “Полезное”, а также про личные правила и практики, полученные долгим опытом работы над постоянно меняющимися ИТ-продуктами, которые помогут для “дальновидного” проектирования GET REST API.

Читать далее

Руководство по веб-скрейпингу на Python

Level of difficultyMedium
Reading time17 min
Views48K

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

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

Основы тайм-менеджмента: ежедневное планирование в календаре. Как планироваться, чтобы не испытывать боль. +Регламент

Level of difficultyEasy
Reading time6 min
Views22K

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

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

Читать далее

Information

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