Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Изучаем ООП Python: наследования для начинающих с домашним заданием

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров4.5K

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

Проще говоря, вместо того чтобы говорить: «Гоблин — это что-то, у чего есть здоровье и атака. Дракон — это что-то, у чего есть здоровье и атака», мы говорим: «Сначала создадим общий шаблон "Враг" с базовыми характеристиками. А гоблин и дракон — это разновидности этого врага, которые наследуют всё от него и добавляют что-то своё».

Читать далее

Один Swagger вместо сотни страниц Confluence: как в Рунити навели порядок в API-документации

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров4.1K

Привет, Хабр! На связи Маргарита Сорочинская, технический писатель отдела архитектуры в Рунити. Хочу рассказать, как мы в компании подошли к описанию API в Swagger — и почему решили перенести туда всё, что раньше жило в Confluence. А еще поделюсь с вами стартерпаком для описания API в Swagger, пошаговой инструкцией и всеми ссылками, чтобы для вас этот путь был уже более простым.

Читать далее

Выбираем векторную БД для AI-агентов и RAG: большой обзор баз данных и поиск смысла

Время на прочтение18 мин
Количество просмотров11K

В этой статье я сделал обзор основных векторных баз данных: Milvus, Qdrant, Weaviate, ChromaDB, pgvector, Redis, pgvectorscale, LanceDB, ClickHouse, Vespa, Marqo, ElasticSearch.

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

Читать далее

Я решал LeetCode 600 дней подряд и что из этого вышло

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров61K

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

Эта статья — впечатления о моём 600-дневном марафоне на этой платформе, динамике моих скилов и ответе на главный вопрос «надо ли решать там задачи?».

Все было спокойно, пока мы с другом не заключили спор — сможем ли мы решить 100 задач до конца 2023 года? А это было 50 задач всего за 1 месяц — декабрь.

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

Челлендж в 100 задач оказался достаточно легким — Новый год мы встречали уже с круглым числом выполненных задач в профиле. Так быстро мы решили не останавливаться — Покоренная вершина стимулировала покорить новую — 200 задач к началу лета (за 5 месяцев).

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

24 февраля 2024 в течении недели Leetocde предлагал неплохие и не очень сложные задачи на дейли челлендже, и у меня случайно получился стрик в районе 10 дней подряд.

Сбивать стрик было как‑то жалко — это же целых 10 дней. Так и началась долгая история в 600 дней...

Читать далее

70 лет Биллу Гейтсу и 50 лет Microsoft: уроки лидерства, изменившего IT-индустрию

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.8K

Во вторник, 28 октября, основатель Microsoft, Билл Гейтс, отметил 70-летие. В этом году его детищу, корпорации Microsoft, исполнилось 50 лет. Масштаб влияния компании беспрецедентен: её операционная система Windows сегодня используется примерно на 70% настольных компьютеров и ноутбуков по всему миру, а число пользователей превысило миллиард.

Читать далее

Самый недооценённый 0-Click Account Takeover с использованием Punycode IDN

Время на прочтение5 мин
Количество просмотров380

С этим секретным трюком хакеры зарабатывают 💸 $XX,000+ — теперь твоя очередь.

Введение

При Internationalized Domain Name (IDN) homograph атаках используются символы разных языков, которые выглядят практически одинаково, например, латинская «a» и кириллическая «а». На первый взгляд результат выглядит как обычный домен или адрес электронной почты, но на самом деле происходит подмена на похожие, но технически разные Unicode символы.

Например:

Электронная почта в Unicode кодировке: аdmin@example.com

В формате Punycode: xn — dmin-7cd@example.com

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

Читать далее

Извечный вопрос: происхождение жизни на Земле

Время на прочтение25 мин
Количество просмотров13K

Мир вокруг нас сложен и удивителен. Все, от величественных гор до мельчайших частиц, подчиняется нерушимым законам природы, в оркестре которой важен каждый участник, но лишь математика, физика и химия могут претендовать на роль первой скрипки. Полагаясь на основы этих наук, можно объяснить практически все объекты, явления и эффекты, наблюдаемые где-либо. Но важным словом в этом вполне утвердительном выражении является «практически». Одной из самых сложных и важных загадок остается происхождение жизни на нашей планете. Самая распространенная теория заключается в спонтанном возникновении. Самой же нестандартной — инопланетяне, но е лучше оставить для Малдера и Скалли. Гипотеза, которая до сих пор претендует на звание верной, гласит, что жизнь в своем первородном виде попала на Землю извне в виде микроорганизмов, а затем начался процесс ее развитии и эволюции уже на планете. Ученые из Имперского колледжа Лондона (Великобритания) разработали математическую модель, которая заставляет усомниться в теории спонтанного возникновения жизни и поверить в панспермию. Как работает данная модель, и каковы ее результаты? Ответы на эти вопросы мы найдем в докладе ученых.

Читать далее

Мир после трансформеров: закат и новый рассвет больших языковых моделей

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров4K

Даже если вы избегали ChatGPT и его многочисленных аналогов, то наверняка сталкивались с обработкой текстов ИИ хотя бы в поисковой выдаче. Большие языковые модели (LLM) сейчас применяют повсюду. Проблема в том, что все они построены на одной и той же архитектуре трансформеров, поэтому страдают от общих недостатков. В этой статье эксперты из лаборатории искусственного интеллекта компании «Криптонит» расскажут о существующих ограничениях LLM, наметившихся путях их преодоления и о том, какими будут следующие большие языковые модели.

Эпоха трансформеров началась стремительно, и Marvel здесь ни при чём. Исследование OpenAI «Scaling Laws for Neural Language Models» показало, что эта архитектура с механизмом самовнимания легко масштабируется. Производительность LLM предсказуемо растёт с увеличением размера модели, объёма датасетов и доступных вычислительных ресурсов, а это — залог коммерческого успеха. Поэтому в 2020-2021 начался бум развития LLM. Каждая крупная ИТ-компания хотела представить свою модель с миллиардами параметров (и получить миллиарды долларов от инвесторов).

Однако в последующей работе «Training Compute-Optimal Large Language Models» от DeepMind появилось важное уточнение: существующие модели слабо оптимизированы по отношению данных к параметрам. Поэтому при дальнейшей разработке моделей стали фокусироваться в том числе и на качестве данных, а не только на размере. 

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

Читать далее

Atlas для Яндекса: как аналитики смотрят на карту, проверяют гипотезы и не тонут в данных

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров2.8K

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

Привет! Меня зовут Аня, я руковожу службой аналитических платформ в Яндексе. Сегодня я расскажу про один из наших инструментов — SaaS‑платформу Atlas. Ей пользуются аналитики из Яндекс Такси, Доставки, Лавки и других сервисов Яндекса. Atlas помогает визуализировать данные, быстро находить и проверять гипотезы, а ещё — оперативно делиться инсайтами. Под катом — подробности о том, как работает платформа и с какими кейсами она помогает справляться, а также как вы можете попробовать её в деле. 

Читать далее

Уровни изоляции транзакций: практическая механика и сравнение PostgreSQL, MySQL, Oracle, SQL Server и DB2

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров6.5K

Транзакции — не про «магическое ACID», а про конкретную механику согласованного доступа к данным под нагрузкой.

Эта статья объясняет как реально работают уровни изоляции и чем отличаются популярные СУБД на практике.

Мы разберём:

Читать далее

Как музыканты издеваются над программистами

Время на прочтение7 мин
Количество просмотров20K

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

Вот, казалось бы, что может быть проще: создать базу треков и исполнителей. Пишем имя артиста/группы, название альбома, список треков и даем возможность по ним искать. Но потом натыкаемся на исполнителя Prince, который изменил своё имя на знак, который не существует и начинаем печалиться, потому что непонятно, как его искать после переименования. Фанаты вроде как нашли выход и предложили использовать 4 спец.символа юникода Ƭ̵̬̊, что тоже похоже на костыль, а задавать старое имя как псевдоним, вроде как концептуально неправильно. Ну или попадаются металлюги Brouillard, у которых каждый альбом называется так же - Brouillard. А каждый трек внутри альбома имеет такое же название.

Но это еще цветочки, потому дальше тесты целостности библиотеки начинают падать, так как в ней попадаются треки длиной либо одну секунду, либо 639 часов. Ну или встречаются треки с нулевым номером, потому что это так называе "секретные" композиции, которые можно было найти включением первого трека и переключением плеера назад. Как вы понимаете, сегодня мы поговорим о музыкальных edge-случаях. Заходите, будет интересно.

Читать далее

С каждым разом ты все опытнее: как я проходил собеседования в Data Science (и около)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров777

Привет, Хабр! Меня зовут Станислав, я аналитик данных с трехлетним опытом и выпускник курса «Специалист по Data Science» в Яндекс Практикуме. Я расскажу, как проходил собеседования, с какими сложностями столкнулся и почему ходить на интервью стоит всегда — даже если у вас есть работа.

Читать далее

Тренды DevOps 2025: Новые версии K8s и OpenSearch. Гид по главным изменениям

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров3.1K

Привет, коллеги! Год продолжает радовать нас мощными апдейтами!) Делимся подборкой самого интересного, что случилось в мире DevOps-инструментов недавно.

Динамическое обновление ресурсов Pod и Kubernetes

Одна из самых крутых фич, которая стала стабильной в Kubernetes 1.33, - это возможность изменять запросы и лимиты CPU/памяти у работающих подов без их перезапуска.

Читать далее

Ближайшие события

Стартуют тренинги предпринимательских компетенций

Время на прочтение2 мин
Количество просмотров118

С 11 по 22 ноября 2025 года в Российском новом университете пройдут тренинги предпринимательских компетенций. Мероприятие организовано Московским физико-техническим институтом совместно с Российским новым университетом в рамках федерального проекта «Платформа университетского технологического предпринимательства».

Читать далее

Разработка стека многослойных печатных плат

Время на прочтение7 мин
Количество просмотров2.4K

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

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

Наиболее популярными типами медной фольги, используемой в производстве печатных плат, являются электроосаждённая медь (ED Copper) и Рулонно отожженная медь (RA copper).

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

RA (англ. от Rolled-annealed) Copper - Рулонно отожженная медь - производится путем многократной прокатки и отжига толстых медных слитков. Сырье загружается в плавильную печь для отливки в слиток квадратной колоннообразной формы. Затем слиток нагревают и многократно прокатывают для уменьшения его толщины и увеличения длины. На рисунке ниже мы можем видеть увеличенную структуру поперечного разреза этих двух видов фольги.

Читать далее

Отличительные особенности RED OS Mode

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров6.7K

Вопрос запуска полноценного рабочего места на мобильном устройстве в последнее время становится все более актуальным – конечно не для всех пользователей, а для тех, кто работает в дороге, должен заполнять документы или обращаться к корпоративным системам, как говорится «в полевых условиях». В этой статье мы расскажем о том, чем RED OS Mode отличается от других подходов к решению этой задачи.

Читать далее

Когда база устала искать: архитектура OpenSearch для больших данных

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров2.3K

БигДата всегда звучит красиво — пока не нужно по ним искать и за нее платить.

Когда данные перестают влезать в индекс, а поиск тормозит — дело не в БД, а в архитектуре.Рассказываю, как мы перестроили систему на связке PostGIS + OpenSearch и добились отклика в десятки миллисекунд.

Читать далее

Экситоны в полупроводниках удивили ученых своими свойствами

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров858

Ученые из МФТИ, Института теоретической физики им. Л.Д. Ландау и Физико-технического института им. А. Ф.  Иоффе провели теоретическое исследование диффузии экситонов. Они рассмотрели это физическое явление в муаровых сверхрешетках переходных металлов.

Читать далее

Как работает пароль?

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.4K

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

Читать далее

Как я нашел криптографический бэкдор в крупнейшем даркнет-рынке: разбираем кражу $12 миллионов через уязвимость ECDSA

Уровень сложностиСложный
Время на прочтение6 мин
Количество просмотров11K

Криптографическая уязвимость Evolution Marketplace: Анализ кражи Исследование безопасности ECDSA подписей крупнейшего даркнет-рынка

Читать далее