Pull to refresh
3
0.1
Олег Бубнов @bubn0ff

Frontend-developer

Send message

Рекомендуемые библиотеки для React

Level of difficultyEasy
Reading time14 min
Views9.8K



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


React позволяет разработчикам создавать пользовательские интерфейсы (user interfaces, UI) на основе функциональных компонентов. Хотя он предоставляет встроенные решения, такие как хуки (hooks), для управления локальным состоянием, обработки побочных эффектов и оптимизации производительности, в конечном итоге все сводится к работе с функциями — как компонентами, так и хуками — для построения UI.


В этой статье мы рассмотрим основные библиотеки React на 2025 год. Эти библиотеки являются строительными блоками для разработки приложений. Независимо от того, новичок вы или опытный разработчик, эта шпаргалка поможет вам сориентироваться в обширной экосистеме React.


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

Как Linux готовится ко сну

Level of difficultyHard
Reading time26 min
Views23K

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

Читать далее

Как развернуть свой GitLab с CI/CD, используя IaC

Reading time11 min
Views11K

Всем привет! Меня зовут Александр, я обучаюсь в магистратуре СПбПУ. А заодно являюсь младшим разработчиком на C++ и стараюсь использовать и внедрять практики DevOps в мою ежедневную разработку. Недавно я получил зачет за то, что развернул собственный GitLab (именно GitLab, а не аналог) на серверах Selectel с CI/CD и Container Registry. Собственно, об этом и расскажу и в статье.
Читать дальше →

Почему тебя больше не зовут на собесы? Спойлер: ты слишком много работал

Reading time3 min
Views21K

Ну что, друг, как тебе живётся в новом ИТ‑реалистичном мире? Раньше стоило тебе просто обновить резюме, и рекрутеры написывали в личку, словно сотрудники «Кирби». Полгода приходилось отбиваться от предложений, где «интересный проект, дружный коллектив, печеньки, опционально — зарплата».

А теперь? Теперь ты снова открываешь резюме, но мир изменился. LinkedIn молчит. На hh 2–3 просмотра в неделю, а на отклики вал отказов. Рекрутеры больше не бомбят тебя сообщениями.

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

Но есть нюанс. Ты учился не тому.

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

Ты не прошёл главный курс всего отечественного IT.

Ты не прошёл курс «Как очаровать рекрутера».

Читать далее

Чеклист для tsconfig.json

Level of difficultyMedium
Reading time15 min
Views8.3K



В этой статье я расскажу о настройках TypeScript, определяемых в файле tsconfig.json, которых я использую в своих проектах.


❯ 1. Возможности, не затрагиваемые в этой статье


В этой статье описывается в основном настройка проектов, в которых все локальные модули являются ESM. Мы почти не будем говорить об импорте CommonJS.


Также мы не будем говорить о следующем:


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

Лучшие бесплатные VPN для ПК и смартфона 2025 (которые работают)

Level of difficultyEasy
Reading time6 min
Views113K


Бесплатные VPN.

В последние несколько лет на территории РФ ужесточилась фильтрация интернет-трафика средствами ТСПУ. Сотни сайтов и интернет-сервисов внесены в чёрные списки и заблокированы. Получить доступ к ним можно только через VPN. Однако самые популярные VPN тоже подверглись блокировке.

Ограничения можно обойти через канал на собственном зарубежном сервере, купив там самый дешёвый хостинг за пару долларов или уже готовый VPS с установленным VPN (такие объявления есть на Авито). Если своего сервера нет, то остаётся только прибегнуть к услугам сторонних VPN-сервисов, которые ещё не заблокированы. Лучшие бесплатные VPN из выживших перечислены ниже.

Примечание. Эту статью Хабр наверняка заблокирует для пользователей из РФ, в исполнение запрета Роскомнадзора на информацию об обходе блокировок, так что лучше сразу после публикации сохранить её или подписаться на обновления в тг.
Читать дальше →

Декларативная фильтрация данных на фронте. JS/TS

Reading time7 min
Views9.3K


Часто ли вам приходилось писать обработчики фильтрации для ваших данных? Это могут быть массивы для отрисовки таблиц, карточек, списков — чего угодно.


Когда фильтрация статическая, то тут все просто. Стандартных функций map, filter и reduce вполне достаточно. Но что делать, если данные имеют сложную структуру или вложенность, да еще и правил для фильтра может быть достаточно много. Правила могут повторяться, данные изменяться, и чем больше контролов фильтра будет появляться, тем сложнее и неустойчивее будет код обработчика.


Как же решить проблему возрастающей сложности?

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

Firewall не спасёт

Level of difficultyHard
Reading time15 min
Views27K
Сгенерировано с помощью GIGA-CHAT

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

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

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей

Level of difficultyEasy
Reading time14 min
Views128K

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

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

Читать далее

Red Team против умного замка: взламываем биометрическую СКУД при помощи скрепки и магнита

Level of difficultyMedium
Reading time6 min
Views26K

Один из самых «вкусных» моментов в работе пентестера — red-team тестирование, позволяющее ненадолго ощутить себя эдаким Джейсоном Борном от мира кибербезопасности. Подобно героям боевиков, мы постоянно проникаем на объекты разной степени защищенности: ломаем замки, обходим системы видеонаблюдения. Разве что не спускаемся в серверную на тросе с вертолета.


Поработав на таких проектах, начинаешь смотреть на любую дверь с перспективы потенциального нарушителя и выискивать уязвимости в каждой встречной СКУД. Поэтому первое, что бросилось нам в глаза, когда Бастион переехал в новый офис, — это биометрические терминалы, установленные на дверях нескольких особо важных кабинетов. Словом, пока сисадмины распаковывали сервера и ломали голову над тем, как расставить офисную технику по правилам фэн-шуя, мы решили провести небольшой внутренний пентест…

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

Заметка о Mapped Types и других полезных возможностях современного TypeScript

Reading time9 min
Views21K


Привет, друзья!


Представляю вашему вниманию перевод 2 статей:


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

Оптимизация SQL запросов

Level of difficultyMedium
Reading time6 min
Views36K

Оптимизация SQL-запросов является одной из ключевых задач при работе с реляционными базами данных. Эффективные SQL-запросы позволяют значительно улучшить производительность приложений и обеспечить более быстрый доступ к данным. В данной статье мы рассмотрим как переписать запрос, чтобы выполнялся быстрее. В статье пойдет речь о PostgreSQL, хотя применять данные советы к любой базе данных SQL Ниже будут представлены термины и операторы, о которых пойдет в данной статье.

Читать про оптимизацию

Performance и оптимизация TypeScript-типов в больших проектах

Level of difficultyMedium
Reading time8 min
Views11K

Узнайте, почему большие TypeScript-проекты начинают "захлёбываться" от рекурсивных типов и обилия импортов, и как с помощью правильной структуры монорепы, настройки tsconfig и диагностики ускорить время компиляции и работу IDE. Рассматриваем инструменты, параллельную сборку, оптимизацию рекурсивных типов и прочие техники, которые помогут сохранить ваш проект быстрым и удобным.

Читать далее

Хакерские утилиты Дидье Стивенса

Level of difficultyMedium
Reading time6 min
Views31K


Дидье Стивенс — бельгийский разработчик и авторитетный специалист по информационной безопасности. Наиболее известен своими инструментами по взлому паролей Windows, анализу документов PDF и внедрению туда вредоносных файлов, а также как автор опенсорсных утилит Didier Stevens Suite: это 140 программ для системных операций с файлами, процессами, реестром и прочими штуками. Например, диспетчер задач Windows, реализованный в Excel/VBA (на КДПВ).
Читать дальше →

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 11

Level of difficultyMedium
Reading time7 min
Views3.2K


Хабр, я снова пришёл к вам с практическими советами про доступность вместе с Ильёй. Мы показываем, как HTML и CSS могут улучшить или ухудшить её. Напоминаю, что Илья мой незрячий знакомый, который помогает мне найти наши косяки в вёрстке.

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

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

Reading time8 min
Views86K

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

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

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

Читать далее

Как проводить сложные исследования в Google Таблицах и Excel? Работаем с формулой QUERY

Reading time10 min
Views15K

Привет, Хабр! Раньше ни один мой рабочий день не проходил без Google Таблиц. Теперь продолжаю использовать инструмент только в личных целях, но в его аналогах многое очень похоже.

Меня зовут Саша, я координатор отдела пользовательских исследований в Selectel. В этой статье я объясню, как и какие формулы использовать в таблицах, чтобы работать с большими объемами данных.
Читать дальше →

Управляем сетевыми подключениями в Linux с помощью консольной утилиты nmcli

Reading time7 min
Views136K
Используйте все возможности инструмента управления сетевыми подключениями NetworkManager в командной строке Linux c помощью утилиты nmcli.



Утилита nmcli напрямую обращается к API для доступа к функциям NetworkManager.

Она появилась в 2010 году и для многих стала альтернативным способом настройки сетевых интерфейсов и соединений. Хотя кто-то до сих пор использует ifconfig. Так как nmcli — это инструмент интерфейса командной строки (CLI), предназначенный для использования в окнах терминалов и скриптах, он идеально подходит для системных администраторов, работающих без GUI.
Читать дальше →

Памятка/шпаргалка по SQL

Reading time29 min
Views1.2M

Доброго времени суток, друзья!


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

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

Work Life Balance: Исповедь красноглазика

Level of difficultyEasy
Reading time5 min
Views17K

Сегодня я выхожу в эфир со статьей, которая является неким потоком сознания. Сегодня не будет практической пользы, только мои размышления о Work Life Balance. Те, кто ждёт руководство или призыв к действию, проходите мимо! А те, кто остались, добро пожаловать на борт моего корабля. Мы отправляемся в круиз по волнам Work Life Balance, через рифы ночного кодинга прямиком на остров усталости!

Читать далее

Information

Rating
4,272-nd
Location
Россия
Registered
Activity