All streams
Search
Write a publication
Pull to refresh
134
0.1
Стас Фомин @belonesox

Пользователь

Send message

Аргумент, доказывающий слишком многое

Level of difficultyEasy
Reading time8 min
Views9K

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

Проявить любопытство

Простенький лендинг/wiki для вас и вашего проекта или как покорить Diplodoc'а и опубликовать на GitHub Pages

Level of difficultyEasy
Reading time8 min
Views2.5K

Diplodoc - платформа для создания технической документации в концепции Docs as Сode с открытым исходным кодом.

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

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

Читать далее

ChameleonLab: Под капотом. Часть 3 — Визуализатор криптографии: От пароля до шифротекста

Level of difficultyMedium
Reading time7 min
Views1.4K

В предыдущих статьях мы рассмотрели ChameleonLab как инструмент для стеганографии и стеганоанализа. Но одна из ключевых идей проекта — не просто дать инструмент, а показать, как он работает изнутри. Многие программы используют шифрование, но почти ни одна не позволяет заглянуть в "чёрный ящик" и увидеть весь путь превращения вашего секретного сообщения в неуязвимый шифротекст.

Именно для этого и был создан Визуализатор криптографии — интерактивная образовательная площадка внутри ChameleonLab, которая пошагово демонстрирует весь конвейер современного симметричного шифрования. Давайте разберёмся, зачем это нужно и как это реализовано.

Читать далее

Хамелеон в цифровых джунглях: Пишем десктопное приложение для стеганографии на Python и PyQt6

Level of difficultyHard
Reading time9 min
Views21K

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

Сегодня я хочу поделиться историей создания одного из моих проектов — десктопного приложения для стеганографии, которое я назвал "ChameleonLab". Это не просто очередной скрипт для LSB-метода, а полноценный инструмент с графическим интерфейсом, поддержкой разных типов файлов, шифрованием и, что самое интересное, встроенными утилитами для стегоанализа.

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

Читать далее

Офлайн переводчик на скорости 1000000 символов в секунду

Level of difficultyEasy
Reading time5 min
Views1K

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

Сегодня хочу рассказать о нашем самом главном продукте - офлайн решении для машинного перевода — инструменте, который позволяет компаниям переводить тексты, документы и веб-контент без интернета на 100 языков и на скорости 1 000 000 символов в секунду (на сервере аналогичном 8 x RTX 5090). Переводчик можно бесплатно взять на тест, нужна система с Linux и GPU.

Читать далее

Библиотека визуализации графов: как мы решили дилемму Canvas vs HTML в Gravity UI

Reading time17 min
Views12K

Меня зовут Андрей, я разработчик интерфейсов в команде User Experience инфраструктурных сервисов Яндекса. Мы развиваем Gravity UI — опенсорсную дизайн‑систему и библиотеку React‑компонентов, которую используют десятки продуктов внутри компании и за её пределами. Сегодня расскажу, как мы столкнулись с задачей визуализации сложных графов, почему существующие решения нас не устроили, и как в итоге появилась @gravity‑ui/graph — библиотека, которую мы решили сделать открытой для сообщества.

Эта история началась с практической проблемы: нам нужно было рендерить графы на 10 000+ элементов с интерактивными компонентами. В Яндексе много проектов, где пользователи создают сложные пайплайны обработки данных — от простых ETL‑процессов до машинного обучения. Когда такие пайплайны создаются программно, количество блоков может достигать десятков тысяч.

Существующие решения нас не устраивали:

— HTML/SVG‑библиотеки красиво выглядят и удобны в разработке, но начинают тормозить уже на сотнях элементов.

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

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

Читать далее

Как создать нечитаемый слайдер для Вашего сайта, или свойство BlurText, которого нет

Level of difficultyMedium
Reading time4 min
Views1.8K

На просторах сети немало сайтов, и у значительной их части на главной странице находится ОН — Самый Главный Слайдер.

Как правило, у него есть некоторый набор отличительных черт: он большой, у него красивые картинки, он содержит очень важную информацию!

А самое главное — зачастую, часть его слайдов... нечитаема. И это очень коварная проблема, ведь поначалу ничто не предвещает беды. Дизайнер делает красивый дизайн, верстальщик - качественную вёрстку. Всё идёт отлично!

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

А ещё есть разные... кхм... разрешения... кхм... экрана... Простите, слеза в горле застряла.

Читать далее

Решение задачи коммивояжера (TSP) в реальных приложениях

Level of difficultyEasy
Reading time7 min
Views4.4K

Образовательные программы компьютерных наук и информатики обязательно включают курс алгоритмов, это элегантные решения сложных проблем. Например, одна из самых интересных проблем комбинаторной оптимизации — задача коммивояжёра (TSP, travelling salesman problem). Суть в поиске самого выгодного маршрута, проходящего через указанные точки ровно по одному разу. Сложность задачи при точном решении брутфорсом составляет O(n!). И для неё тоже придумано несколько элегантных алгоритмов. Хотя поиск самого эффективного продолжается до сих пор.

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

Читать далее

Как написать bzip2-архиватор на Python: разбираем преобразование Барроуза-Уилера

Level of difficultyHard
Reading time25 min
Views4.6K

Привет! Я Рома, бэкендер-питонист в KTS.

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

Читать далее

Nextcloud для дома: Snap, Docker или …? Пошаговый гайд для простых людей

Level of difficultyEasy
Reading time6 min
Views15K

Привет, Хабр! Меня зовут Даня Гербовец, я разработчик в международной компании Garage Eight. Сегодня хочу поделиться своим опытом, как можно поднять собственное домашнее облако — быстро, понятно и недорого.

Почему я вообще пришел к идее развернуть у себя Nextcloud? Всё просто: огромное количество файлов. Фото и видео в наше время занимают куда больше места, а надежности смартфонов я не доверяю. Я начал интересоваться облачными хранилищами, но довольно быстро понял: если хочется действительно много места за адекватный прайс, нужен свой сервер.

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

Читать далее

Нейросети простым языком

Level of difficultyMedium
Reading time43 min
Views6.8K

Привет!

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

Постарался написать свои объяснения, которые были бы не было слишком упрощены, но при этом по возможности понятны.

Статья на 10 процентов скомпилирована из других статей, на 30 процентов скомпилирована из множества диалогов с разными LLM и на 60 процентов «написана от руки» на основании статей и ответов.

Читать далее

Наивное введение в CRDT-типы

Level of difficultyMedium
Reading time15 min
Views2.5K

Привет, Хабр! Меня зовут Георгий Семёнов, в VK я занимаюсь разработкой в команде инфраструктуры рекомендательных систем, а в Университете ИТМО начинаю свой аспирантский путь в области децентрализованных коллаборативных сред.

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

Читать далее

Прорывное доказательство приближает математику к теории Великого объединения после более чем 50 лет работы

Level of difficultyMedium
Reading time9 min
Views14K

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

«Это огромный триумф. Но вместо того, чтобы закрыть дверь, это доказательство открывает дюжину других», — говорит Дэвид Бен-Цви из Техасского университета в Остине, который не принимал участия в работе.

Читать далее

Мы 30 лет делали сайты руками, а потом пришла нейросеть

Level of difficultyEasy
Reading time8 min
Views19K

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

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

У меня был сайт интернет‑магазина лабораторного оборудования, который постоянно ломался. Любое изменение — и что‑то отваливалось в другом месте. В итоге я решил: хватит мучиться, надо что‑то с этим делать. И попробовал создать новый сайт через нейросеть — через Claude.

Представьте себе машину, которую ремонтировали разные мастера в течение многих лет: заводишь двигатель — отваливается колесо, прикручиваешь колесо — открывается багажник. Именно так выглядел мой старый сайт. Сайт делали разные люди в разное время, в коде невозможно было разобраться, любое изменение ломало что‑то в другом месте. SEO практически не работало, трафик постоянно падал.

Нужно было создать новый каталог для 400+ позиций лабораторного оборудования. Но это не классический интернет‑магазин с корзиной и оплатой, а каталог с формой «запросить цену» — в сфере B2B так часто работают.

Читать далее

PACS и ИИ: от внедрения до интеграции машинного обучения в российском здравоохранении

Level of difficultyMedium
Reading time13 min
Views776

PACS (Picture Archiving and Communication System) — это не просто софт. Это нервная система медицинской визуализации, которая собирает, архивирует и распределяет DICOM-данные между всеми участниками медицинского процесса. А внедрение PACS в реальном здравоохранении — это смесь инженерии, логистики, дипломатии и кризис-менеджмента.

Представьте, что вы врач-радиолог. Каждый день вы просматриваете сотни медицинских изображений, ища признаки заболеваний, травм или аномалий. Но как эти изображения попадают к вам? Как они сохраняются и передаются между больницами? Ответ кроется в стандарте DICOM и системе PACS.

DICOM (Digital Imaging and Communications in Medicine) — это не просто формат файлов, это целая экосистема для медицинской визуализации. Представьте его как универсальный язык, на котором говорят все медицинские устройства: от рентгеновских аппаратов до МРТ-сканеров. Каждый DICOM файл — это не просто картинка, а целая история пациента, закодированная в цифровом виде.

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

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

Читать далее

Как я написал покер‑бот за 4 недели, используя Cursor + GPT

Level of difficultyMedium
Reading time22 min
Views22K

Мой первый опыт публикации и рассказ о том, как я за четыре недели сделал рабочую альфа-версию покер-бота. В проекте использованы методы Монте-Карло, компьютерное зрение (YOLO), Python и инструменты вроде Cursor и Roboflow.

Текст будет полезен новичкам в машинном обучении и компьютерном зрении, тем, кто хочет понять, как связать ИИ, детекцию объектов и покерную математику в одном проекте, а также всем, кто интересуется практическим применением ИИ для создания собственных инструментов.

Читать далее

Вайбкодинг для маркетплейсов

Level of difficultyEasy
Reading time7 min
Views4.6K

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

Вайбкодить далее

Свой ChatGPT на документах: делаем RAG с нуля

Level of difficultyMedium
Reading time6 min
Views19K

Всем привет! Наверняка у вас были ситуации, когда нужно быстро найти что-то в длинном документе-договоре, инструкции или отчёте. Сегодня я покажу, как сделать своего помощника, который будет отвечать на такие вопросы автоматически. Соберем RAG с нуля: загрузим документы, "нарежем" их на куски, проиндексируем в векторной базе данных Qdrant и подключим LLaMA.

Если вы увидели незнакомые слова — не пугайтесь, далее я расскажу об этом подробно.

Читать далее

Просветление через Код: Суть Django Revolution

Level of difficultyMedium
Reading time4 min
Views3.3K

Django Revolution — это не просто инструмент, это философия. Философия, где рутина уступает место творчеству, а баги растворяются в чистоте кода. Это путь к просветлению в разработке API. Примите его, и ваш код будет сиять, а дух разработчика — парить.

Наш мир, сотканный из битов и фантомных сущностей, породил нового Джинна, способного исполнять самые заветные желания Разработчика. Встречайте: Django Revolution – не просто библиотека, а откровение, мантра, ключ к вратам истинного дзен в мире Django API.

Читать далее

Software 3.0: теория Карпатого vs реальность

Level of difficultyEasy
Reading time7 min
Views3.6K

«Самый горячий язык программирования сегодня — английский», — заявил Андрей Карпатый в своей лекции о Software 3.0. Звучит как мем, но за этой фразой стоит серьезная концепция эволюции разработки ПО.


Карпатый предложил простую, но мощную модель: как мы дошли от написания кода на C++ до промптов на естественном языке. При этом сама концепция остается спорной — одни называют её «новой операционной системой», другие видят дорогой эксперимент с непредсказуемым поведением.


Разобрал лекцию, убрал пафос и оставил практические выводы для разработчиков, продакт-менеджеров и CTO, которые решают, когда и как внедрять LLM в свой продукт. Ниже — основные тезисы Карпатого и контраргументы из реальной практики.

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

Information

Rating
3,089-th
Location
Россия
Date of birth
Registered
Activity