Search
Write a publication
Pull to refresh
32
0
Зеленый Андрей Сергеевич @Green21

User

Send message

Линейная алгебра в C++ с Eigen

Reading time9 min
Views6.6K

Привет, Хабр!

Кто хоть раз пытался работать с матрицами в C++, знает, что это удовольствие сродни написанию своего STL — возможно, но зачем? Eigen — это библиотека, которая избавит вас от ручного управления памятью, оптимизирует вычисления и позволит писать код, похожий на чистую математику. Поэтому в этой статье мы разберем эту прекрасную библиотеку.

Читать далее

Полезные ресурсы по Python, которые я собрал

Level of difficultyEasy
Reading time7 min
Views36K

Примерно два года назад я начал изучать Python и Django. В течение этого времени сохранял ссылки, которые считал полезными. Недавно решил структурировать их. Также стало интересно, а какие ресурсы считают полезными другие разработчики. В данной статье я собрал разнообразные ссылки по Python, которые сохранял, либо которые меня заинтересовали (внимание больше на web). Буду благодарен, если в комментариях поделитесь своими полезными ссылками.

Мои изыскания показали, что меня и большинство других людей (чьи статьи я нашел) во-первых интересует обучение. Таких ссылок получилось больше всего. На втором месте - сообщества и мероприятия. На третьем -  поиск работы. Еще меня интересовала тема наставничества и менторства, нашел несколько ссылок и на эту тему.

Читать далее

Обзор лучших API для транскрибации речи 2025

Level of difficultyEasy
Reading time8 min
Views15K

На прошлой неделе мы сравнивали селфхарм селфхост решения для speech-to-text на Apple Silicon процессорах. Но что делать, если вы - бизнес, и вам нужно API для транскрибации? Или что делать, если вы - разработчик, и вам просто хочется сделать пет-проект с транскрибацией? Сейчас посмотрим, какие варианты есть на рынке, и какой из них самый лучший (спойлер - однозначного победителя нет).

Читать далее

Deep Learning в иллюстрациях: Рекуррентные нейронные сети

Level of difficultyEasy
Reading time14 min
Views9.4K

Рад приветствовать вас в очередной части нашего иллюстрированного погружения в Deep Learning! Сегодня мы будем разбираться в рекуррентных нейронных сетях. Мы будем обсуждать уже хорошо знакомые нам понятия, такие как входы, выходы и функции активации, но с неожиданным сюжетным поворотом.

Читать далее

OAuth 2.0

Level of difficultyEasy
Reading time39 min
Views17K

Вы когда‑нибудь логинились на сайте, используя аккаунт Google или Facebook? Или подключали приложение, требующее доступа к GitHub? Если да, то вы уже сталкивались с OAuth2, зная того или нет.

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

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

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

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

Читать далее

Сложно о простом. Как работает интернет. Часть 3. Что такое маршрутизация, Proxy ARP и Super VLAN

Level of difficultyEasy
Reading time18 min
Views35K

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

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

В этом цикле статей я не стану учить вас настраивать оборудование и проектировать сети. Я расскажу об основных (и не только) принципах построения сети, а также о функционировании сети и сетевых протоколов в стеке TCP/IP.

Читать далее

Вероятностный метод майнинга Bitcoin

Reading time19 min
Views22K


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

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

  1. язык C++ и его темплейты
  2. немного цифровой схемотехники
  3. немного теории вероятности и вероятностной арифметики
  4. детально алгоритм хэширования bitcoin
Читать дальше →

Msgspec vs DataClasses: битва инструментов в мире Python-сериализации

Reading time6 min
Views2.8K

Хабрчане, привет! Это Леша Жиряков из МТС Диджитал. Недавно я писал про FastAPI vs Litestar и Polars vs Pandas, а сегодня разберем два популярных инструмента — Msgspec и DataClasses. Оба помогают структурировать данные, добавить энтерпрайзности в проект, но подходы у них разные. Какой из них быстрее и удобнее, где их лучше применять? Давайте разбираться.

Читать далее

Нативный non-blocking I/O через Linux Epoll: создание C-расширений для Python

Level of difficultyMedium
Reading time4 min
Views1.4K

Привет, Хабр!

Если вам приходилось писать высоконагруженные сетевые приложения на Python, то вы, скорее всего, сталкивались с тем, что стандартные механизмы работы с вводом‑выводом — select(), poll() и даже asyncio — не справляются с большой нагрузкой. select() быстро превращается в бутылочное горлышко из‑за линейной сложности O(N), poll() всё ещё требует перебора всех файловых дескрипторов, а asyncio, хоть и удобен, но не всегда даёт ту производительность, которую можно получить, если работать напрямую с системными вызовами.

Здесь, на мой взгляд хорошо подойдет epoll — механизм в Linux, который позволяет асинхронно отслеживать события на файловых дескрипторах без постоянного опроса.

Читать далее

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски

Level of difficultyEasy
Reading time12 min
Views71K

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

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

В этом цикле статей я не стану учить вас настраивать оборудование и проектировать сети. Я расскажу об основных (и не только) принципах построения сети, а также о функционировании сети и сетевых протоколов в стеке TCP/IP.

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

Читать далее

Spring Security: разберём по полочкам токены, фильтры и авторизацию (с диаграммами!)

Level of difficultyEasy
Reading time14 min
Views21K

Команда Spring АйО перевела статью, в которой подробно рассматривается процесс регистрации и аутентификации пользователей с использованием Spring Security.

Читать далее

Ваши навыки больше ничего не значат

Level of difficultyEasy
Reading time5 min
Views115K

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

Читать далее

25-й год будет весёлым для ИТ в России

Reading time5 min
Views102K
image

Внезапный Трамп, внезапные китайцы и связанные со всем этим процессы сейчас довольно сильно перекроят ИТ-ландшафт.

Кажется, нас ждёт новая космическая гонка, но на этот раз — за AGI.

Новый взлёт крипты, потому что доллару что-то поплохело, и нужен новый цифровой «доллар».

Интернету — вилы. Штука, которая задумывалась как глобальная Сеть, кажется, окончательно перестаёт быть таковой. Сначала отделилась Северная Корея с Кванмёном, Китай, потом — мы с суверенным Чебурнетом, а сейчас такой же тренд наблюдается в Европе. Потому что Трамп вроде бы конкретно намерен разрывать с ней, и там сейчас будут расти требования к хранению данных у себя. Вероятно, их ждут свой пакет Яровой и ещё пакет с пакетами.
Читать дальше →

FastAPI vs Litestar: выбираем лучший фреймворк для микросервисов

Reading time9 min
Views12K

Привет, жители Хабра! Это Леша Жиряков из МТС Диджитал. В прошлый раз я опубликовал пост Polars vs Pandas, а сегодня поговорим о FastAPI и Litestar — фреймворках для микросервисов. У каждого из них свои сильные стороны, так какой выбрать для своего проекта? Давайте разбираться. Ниже — о плюсах и минусах каждого, сравнение производительности и примеры валидации.

Читать далее

Как тестировать бизнес-процессы в Camunda: пошаговый гайд

Level of difficultyMedium
Reading time6 min
Views3.7K

На один из процессов я разработала почти 150 тестов. В статье показываю и рассказываю, как тестировать в Camunda.

Читать далее

Лучшие IT-работодатели России 2024: ежегодный рейтинг Хабр Карьеры

Level of difficultyEasy
Reading time9 min
Views173K

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

Мы рады поделиться рейтингом лучших IT-работодателей России 2024. Под катом — про компании и качества, за которые их особенно ценят.

Смотреть победителей

Стоит ли использовать Python venv в контейнере, таком как Docker? Определённо

Level of difficultyMedium
Reading time6 min
Views8K

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

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

Читать далее

Как понять, что твой мидл готов стать сеньором? Гайд для тимлида (и не только)

Level of difficultyEasy
Reading time8 min
Views26K
Новый грейд — это не просто лычка IT-спеца. По сути, это кульминация работы над задачами и решений различных кейсов, которыми он занимался на своей позиции. Но на этот новый уровень айтишник переходит не один.



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

В «Лаборатории Касперского» существует устоявшийся и прозрачный пайплайн повышения мидлов — промоушен-комитет. В этой статье я подробно расскажу об этом процессе с точки зрения руководителя: от подготовки и сбора кейсов до получения кандидатом заветного грейда.

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

Маппинг даты и времени в Hibernate и JPA

Level of difficultyEasy
Reading time10 min
Views5.6K

Сегодня любой Java разработчик сходу сможет правильно ответить на вопрос "Как смапить дату и время из колонки таблицы БД на поле в Java классе?". Или нет? 

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

В новом переводе от команды Spring АйО рассказывается про подробности работы с современным API java.time, правильный маппинг данных с учётом часовых поясов, устаревших типов java.util.Date, Calendar и многое другое.

Читать далее

Information

Rating
Does not participate
Location
Краснодар, Краснодарский край, Россия
Works in
Date of birth
Registered
Activity

Specialization

Fullstack Developer, Technical Support Engineer
Senior
Web
Restful WebServices
RESTful API
FullStack
NestJS
Vue.js
TypeScript
TypeORM
C#
Python