Обновить

Разработка

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

Делимся горячими новостями нашей платформы Cloud.ru Evolution 🚀

🎁 Акции

  • Работайте бесплатно с 20+ мощными open sourse моделями из Evolution Foundation Models. Все уже готово: вам не придется тратить время на развертывание инференса или код, нужно только подключиться через API. Акция действует до 31 октября.

  • Получите 35 000 бонусов для работы в Evolution Data Platform. Используйте бонусные рубли, чтобы управлять Big Data, собирать данные для бизнеса и ML. Предложение только для юрлиц, действует до 31 декабря 2025 года.

🛡️ Новые сертификаты

Надежность наших сервисов подтверждена регуляторами. Платформа Cloud.ru Evolution теперь в реестре отечественного ПО (РОПО), а еще она получила сертификаты PCI DSS и ФСТЭК России.

🤖 Evolution ML Inference

🧑‍💻 Evolution Notebooks

Что мы добавили в сервис:

🌐 Evolution DNS

💻 Evolution Managed Kubernetes

Управляйте контейнерными приложениями в Kubernetes 1.33 — теперь Evolution Managed Kubernetes поддерживает и эту версию. Что в ней есть:

  • В бета-тесте — использование образов Open Container Initiative (OCI) в качестве томов в подах, а еще In-place resource resize для вертикального масштабирования подов.

  • Общедоступными стали поддержка Sidecar-контейнеров, Multiple Service CIDRs, нового бэкенда nftables для kube-proxy, subresource для kubectl. Полный обзор изменений есть в официальном блоге Kubernetes.

📚 Evolution Managed PostgreSQL

  • Для кластеров в режиме «Бизнес» теперь можно создать отдельный WAL-диск. Так вы сможете увеличить размер как основного, так и WAL-диска.

  • В документации сервиса новый раздел — справочник API. Узнайте, как управлять вашими ресурсами в облаке и получать о них информацию с помощью REST API.

📀 Evolution Object Storage

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

🔋 Evolution Compute

  • Удаляйте и создавайте несколько виртуалок одновременно.

  • Отключайте и подключайте загрузочные диски между ВМ.

  • Переустанавливайте ОС на ВМ, которая работает в данный момент.

Теги:
Всего голосов 2: ↑1 и ↓10
Комментарии0

SpaceWeb включен в реестр российского ПО

Платформа управления хостингом и облачными сервисами SpaceWeb внесена в Единый реестр российского программного обеспечения Минцифры России. Это означает, что инфраструктура SpaceWeb полностью основана на российских технологиях и соответствует требованиям законодательства.

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

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

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Альфа-Банк увеличил выплаты по программе поиска уязвимостей до 1 000 000 рублей

Программа вознаграждения Альфа-Банка за обнаружение уязвимостей в наших сервисах в июле стала доступна для всех багхантеров на платформе BI.ZONE. В октябре мы увеличиваем максимальные выплаты по программе: тестируйте сервисы Альфа-Банка на предмет уязвимостей и получайте вознаграждение до 1 000 000 рублей. Размер вознаграждения зависит от критичности найденной уязвимости.

Новые диапазоны вознаграждений будут следующими:

  • Critical: 400 000 – 1 000 000 ₽.

  • High: 80 000 – 400 000 ₽.

  • Medium: 15 000 – 80 000 ₽.

  • Low: 0 – 15 000 ₽.

Программа bug bounty Альфа-Банка действует на платформе BI.ZONE Bug Bounty и охватывает широкий спектр продуктов и сервисов — мобильные и веб-приложения, публичные API, а также инфраструктуру. Исследователи могут проверить безопасность систем и получить вознаграждение за найденные уязвимости, которые могут повлиять на защиту клиентских данных, платёжной информации или стабильность сервисов.

Для исследования доступны веб- и мобильные приложения сервисов Альфа-Онлайн, Альфа-Инвестиции, Альфа-Бизнес и другие ресурсы.

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

Теги:
Всего голосов 2: ↑1 и ↓10
Комментарии0

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

Делимся анонсом нашего следующего вебинара по печатным платам!
Приглашаем принять участие всех желающих!

🗓 Ждём вас 11 ноября в 11:00!

Регистрация на вебинар


Обсудим 2 темы:

⁃ Новые вызовы в логистике в области печатных плат.

Новости логистики и обзор наших возможностей: высокий сезон, сроки доставки, "таможенные препятствия" и многое другое.

⁃  СВЧ-материалы, примеры их использования.

Почему СВЧ материалы так называются? Для каких приложений и для каких частот имеет смысл применять такие материалы? Почему не надо заказывать контроль импеданса для СВЧ плат?


Семинары и вебинары ГРАН всегда бесплатные.

Теги:
Рейтинг0
Комментарии0

Как AI меняет разработку прямо сейчас — приглашаем на прямой эфир 31 октября в 11:30

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

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

Евгений Сатуров, CTO мобильной разработки Surf, расскажет, какие «умные» инструменты уже используют в серьёзной разработке сегодня, что они умеют и как изменят рынок труда и роль разработчика в ближайшие годы.

Бонусы для участников:

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

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

Когда эфир: 31 октября, 11:30 (МСК).
Где: VK Video.

Теги:
Всего голосов 1: ↑0 и ↓1-1
Комментарии0

Почему моё Web API никогда не будет RESTful?

TL;DR потому мне не нужен динамический контракт.

Создатель архитектурного стиля REST Рой Филдинг — считает, что REST-архитектура должна соответствовать пяти обязательным ограничениям. У него довольно жёсткая позиция, что если API не выполняет хотя бы одного ограничения, то это не RESTful API. И тут ничего не поделаешь, как автор идеи считает, так и правильно. Далее я буду говорить, что api REST или не REST именно по Филдингу.

Но шутка в том, что хотя каждый уважающий себя бекендер знает про REST, почти никто не делает RESTful API. Но не потому что это недостижимый идеал, а потому что REST для апи, почти никому не нужен.

В смысле не нужен? А вот так, давайте взглянем на модель зрелости REST сервисов Леонарда Ричардсона. На первом и втором уровне находятся ресурсы и http-глаголы, вещь полезная, я понимаю их пользу и ничего против них не имею. А вот на третьем уровне мы видим hypermedia controls, о котором я бы хотел поговорить подробнее.

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

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

— Рой Филдинг, Архитектурные стили и проектирование сетевых архитектур программного обеспечения.

Для меня это звучит так: вот у нас сайт, соответствующий принципам REST архитектуры, тогда он может отдавать свои ресурсы в разных представлениях — например, в виде html или json. HTML — это обычная веб страница, а json содержит только данные, без визуала. Нетрудно понять, что REST клиент для json представления выглядит не очень привлекательно.

Филдинг предполагал, что сервер может менять контракт как захочет, а клиент сможет его понять на основании гипермедиа. Вы встречали таких клиентов? На самом деле они есть, но про них мало кто знает. На практике в API HATEOAS не нужен ни программисту, ни программному клиенту. Программисту нужно описание контракта, с чем прекрасно справляются OpenAPI/Swagger, желательно автогенерённые из кода. А клиенту нужен четкий контракт, как создать товар или показать ленту. И меньше всего клиент хочет, чтобы контракт менялся, и тем более не хочет поддерживать средства обнаружения и подстройки под изменённый контракт.

В итоге перед программистом встаёт дилемма:

  • Не делать HATEOAS. Но тогда его апи нельзя называть RESTful.

  • ДелатьHATEOAS. Но тогда ему нужно будет "напихать ссылок" в ответы своего апи и поддерживать их просто чтобы называться RESTful. При этом, эти ссылки никто не будет использовать.

В итоге мы живём в мире, где бэкенд часто разрабатывают с использованием принципов REST, но при этом почти не существует RESTful апи. А те, что существуют, имеют пародийное название REST-like API или pragmatic REST. А 2-й уровень зрелости REST звучит так, как будто мы остановились на полпути к идеалу. Но ведь это не идеал: 3-й уровень зрелости часто бессмысленен или даже вреден.

На практике, все насколько смирились с ситуацией, что ослабили значение термина и называют api RESTful, даже если оно только частично следует принципам REST.

А было бы круто, если бы кто-то придумал новый, хороший термин для архитектурных практик, которые бы взяли всё лучшее и полезное из REST применительно к современным Web-api. Тогда бы начинающие бэкендеры сразу осваивали актуальные подходы, а не книги Филдинга из 2000-х, как я когда-то.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

В игровом чате EA теперь нельзя писать сокращение «GG» (Good game) и за это пользователь получает наказание в виде бана аккаунта на 72 часа. Это сообщение подразумевает «хорошую игру», однако у проигравшей команды могла быть плохая игра, и сообщение для них могло быть обидным.

Теги:
Всего голосов 5: ↑4 и ↓1+5
Комментарии4

Новые лекции Python + AI выпустили в Microsoft. В них эксперты собрали самую актуальную информацию про кодинг и создание продвинутых нейропомощников на основе последних разработок с подробными презентациями и примерами кода, в том числе RAG, эмбеддинги, агенты и MCP-протокол.

Теги:
Всего голосов 3: ↑2 и ↓1+1
Комментарии0

Инструмент Depixelization PoC вытаскивает текст из скриншотов и фото, убирает пиксельный хаос и делает буквы читаемыми. Починит даже самые безнадёжные блоки текста. Использует метод De Bruijn sequence для точного восстановления букв. Подходит для документов, конспектов, рефератов и всего учебного.

Теги:
Всего голосов 6: ↑6 и ↓0+9
Комментарии0

Представлен ресурс Uchinoko, который восстанавливает справедливость между пушистыми питомцами и людьми. Можно детально воссоздать своего кота/собакена в цифровом формате. Результат выгружается в SNS-иконку.

Теги:
Рейтинг0
Комментарии0

Пользователи жалуются, что новые иконки Microsoft плохо различимы в «стеклянном» интерфейсе iOS 26. Со временем подключается память, но в первое время не всегда получается быстро найти нужное приложение. Больше всего похожи друг на друга иконки Excel, Word и OneNote. Самое яркая их отличительная черта — цвет, которого в «стеклянном» интерфейсе нет.

Теги:
Всего голосов 4: ↑4 и ↓0+6
Комментарии2

Привет, Хабр! Наверное, я занимаюсь какой-то ерундой, но любопытство взяло верх. Однажды я нашёл интересную статью и очень захотел повторить эксперимент самостоятельно, ну и, конечно, написать статью по результатам. В качестве подопытного была выбрана отечественная оперативная память К565РУ5Г.

TL;DR
Автор успешно использует старую микросхему памяти в качестве фотодатчика получает несколько Ч/Б изображений.

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

Паттерн
Паттерн

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

Заранее с благодарностью призываю коллективный разум на помощь. С меня интересный материал.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Открытый проект AI Video Transcriber помогает транскрибировать видеоролики в сжатый и отлично написанный текст. Работает просто, вытаскивает текст из любых видео за секунды, а потом корректирует и делает подробное саммари. Решение поддерживает более 30 самых популярных площадок, в том числе YouTube, TikTok, Bilibili и прочие. Проект не просто вытаскивает текст из видео, но делает настоящее эссе: дополняет фразы и реплики, корректирует факты и мысли, редактирует текст и доводит до идеала. Основа — Fast Whisper (лучшая нейронка для транскрибации видео). Может смотреть видео и сразу же выдавать текстовые материалы и уточнения. Сегментирует видео на 20-минутные отрывки и делит их на разделы, чтобы проще было изучать материал.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии1

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

OpenAI + Google Studio и немного Python = создаем бесплатную аудиокнигу без лишних заморочек

Ведущая Coral c Openai.fm
Ведущая Coral c Openai.fm

 В своё время моё отношение к аудиокнигам изменилось благодаря легендарному проекту «Модель для сборки» с Владом Коппом. Именно благодаря МДС я понял, что книги можно не только читать, но и прекрасно воспринимать в формате аудио. Аудиоформат даёт возможность знакомиться с произведениями в дороге или во время прогулок. Прекрасно помню времена, как загружал в свой MP3-плеер на 512 МБ выпуски МДС и, вместо того чтобы ехать с работы в тесной маршрутке, устраивал себе полуторачасовые прогулки в компании очередного фантастического рассказа.

Эпоха аудиоизобилия

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

Например, один из моих любимых циклов — «Зоны мысли» Вернора Винджа. «Пламя над бездной»«Глубина в небе» и «Болтушка» легко найти в сети. А вот заключительную часть — «Дети неба» — увы, никто не озвучил.

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

  1. Качество должно быть приемлемым;

  2. Платить не хочется, поэтому все должно быть полностью бесплатным.

Голос

Вспомнил я про сайт OpenAI FM — демо-площадку голосовой модели gpt-4o-mini-tts . Она звучит естественно и хорошо справляется с русским языком. Выбор из 11 разных дикторов. А так же есть классная фитча - промт инструкции для стиля речи, благодаря чему можно управлять «подачей» — делать её более спокойной, вдохновлённой или нейтральной . Поигравшись с промтами и выбрав голос, переходим к следующему этапу. На сайте можно бесплатно генерировать небольшие аудиофрагменты длиной до 999 символов. Ограничение не стало проблемой. Берем Python + Selenium WebDriver, и получаем программу, которая:

  • делит текст книги на чанки нужной длины,

  • отправляет их на сайт,

  • сохраняет аудиофайлы,

  • затем объединяет всё в одно произведение с помощью FFmpeg.

Результат получился неожиданно достойным. Да, между фрагментами иногда чувствуется разница в тембре, особенно в первые секунды. А ударения не всегда точны и изредка проскакивает лёгкий акцент. Но в целом — получилась полноценная озвученная аудиокнига.

Музыкальная подложка

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

Платные сервисы вроде Suno или Udio я сразу отбросил. Зато вспомнил про Google AI Studio, где в разделе Build есть приложение PromptDJ MIDI. Оно позволяет создавать музыку прямо в браузере — достаточно задать стиль и параметры.

Скопировал прямо в Studio приложение, в промпте указал стиль space ambient и добавил возможность скачивания получившегося трека. Поигравшись с настройками в полученном приложении, получил именно то, что меня устроило.

Оставалось объединить музыкальную дорожку с голосом — снова помог FFmpeg.

Инструменты:

  • OpenAI FM — генерация речи;

  • Google AI Studio (PromptDJ MIDI) — генерация фоновой музыки;

  • Python + Selenium + FFmpeg — автоматизация и сборка.

Затраты: 0 долларов и несколько часов времени.

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

Теги:
Всего голосов 8: ↑7 и ↓1+7
Комментарии22

По информации СМИ, OpenAI хочет показывать в ChatGPT таргетированную рекламу прямо в чат-боте на основе переписок с ИИ. Например, если пользователи говорят о спорте, им предложат спортивную форму или добавки. Контекст ИИ будут юзать, чтобы показывать больше рекламы. Если пользователи отключат рекламу, то лишатся всей памяти чат-бота. Контекста больше не будет, всю работу придётся организовать снова.

Теги:
Рейтинг0
Комментарии0

17 открытых репозитариев, чтобы выучить Python с нуля:

  • 30-Days-Of-Python — пошаговый курс на 30 дней: синтаксис, типы, функции, ООП, файлы, модули, мини-проекты и задания с решениями;

  • Python Basics — вся база и примеры по основам для новичков;

  • Learn Python — конспект тем с наглядными примерами и ссылками; удобно как быстрый справочник и повторение;

  • Python Guide — лучшие практики: окружение, управление пакетами, стиль, тестирование, деплой, инструменты;

  • Learn Python 3 — понятные ноутбуки и упражнения по Python 3. Лучший репо для самостоятельной практики;

  • Python Programming Exercises — 100+ задачек по базовым темам с решениями; Coding Problems — алгоритмические задачи, разбитые по темам и сложности. Идеально для подготовки к собеседованиям;

  • Project-Based-Learning — большая подборка учебных проектов с пометками по уровню сложности;

  • Projects — идеи проектов по категориям (CLI, веб, игры и другое) для портфолио и прокачки;

  • 100-Days-Of-ML-Code — краткий дневник-план по машинному обучению: темы на каждый день, базовые алгоритмы и ссылки для реализации на Python.

  • TheAlgorithms/Python — огромный справочник алгоритмов/структур данных с реализациями и тестами;

  • Amazing-Python-Scripts — набор готовых скриптов: автоматизация, парсинг, утилиты, GUI; каждый с инструкцией по запуску.

  • Geekcomputers/Python — склад идей с практичными скриптами;

  • Real Python Materials — исходники и материалы к статьям/курсам Real Python;

  • Awesome Python — топ-подборка библиотек и фреймворков, разбитая по категориям;

  • 30-Seconds-of-Python — короткие функциональные фрагменты кода с пояснениями;

  • Python Reference — шпаргалки, лайфхаки и туториалы.

Теги:
Всего голосов 12: ↑11 и ↓1+10
Комментарии3

Блогер показа самый иммерсивный рабочий стол по Minecraft. Ярлыки программ и игр красивенько размещены в слотах персонажа — можно даже открывать «инвентарь» персонажа. Для такого модного сетапа понадобятся три вещи — Windows 11, Rainmeter Skins и Wallpaper Engine. Последние две программы позволяют создать обои на любую тематику.

Теги:
Всего голосов 2: ↑0 и ↓2-2
Комментарии2

Как я сделал blur и линзу в Jetpack Compose

Всем привет! Меня зовут Владимир, я мобильный разработчик в «Финам». В одном из недавних проектов нужно было добавить в интерфейс Jetpack Compose визуальные эффекты поверх контента, например размытый хедер или движущуюся «лупу». 

Обычно такие приемы встречаются в играх, где весь экран — это фактически полотно для рисования OpenGL. В классической XML-разметке UI я с таким не сталкивался, поэтому пришлось довольно глубоко погрузиться во внутреннюю кухню Compose. Этот разбор может быть полезен тем, кто решает похожие задачи.

Сначала на Stack Overflow я нашел неплохой пример создания эффекта размытия на определенном участке экрана — к сожалению, это решение не было универсальным и зависело от верстки. Однако мое внимание привлекли два класса из фреймворка: RenderNode и GraphicsLayer

Если коротко, можно захватить часть экрана через GraphicsLayer, а в RenderNode записать контент. Но перед этим его можно обработать. После обработки метод drawWithContent() выводит результат в canvas. 

Сначала я попытался модифицировать эффект размытия из ответа на Stack Overflow, затем сделал размытие в форме круга, который движется вслед за пальцем, и постепенно пришел к окончательному варианту с движущейся прозрачной линзой. Код для отрисовки эффекта я показал в статье.

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

Какие выводу я могу сделать:

  • в Compose можно делать крутые визуальные эффекты, если покопаться в RenderNode;

  • это неочевидный, но мощный инструмент, он дает простор для кастомизации.

Мой пример не самый изобретательный, но способ, который я показал, открывает почти безграничные возможности для реализации визуальных эффектов в Android-разработке, чем мы в «Финам» и пользуемся очень активно в наших финтех-проектах. Итоговый результат оформил в GitHub-репозитории — берите и пробуйте в своих проектах.

Теги:
Рейтинг0
Комментарии0

Терминал, командная строка, консоль, shell — как правильно?

Чем эти все термины отличаются друг для друга. Очень нужно понять, чтобы правильно написать мою следующую книгу.

Всем ответившим заранее спасибо.

Теги:
Всего голосов 6: ↑1 и ↓5-3
Комментарии12

На Hugging Face вышел новый инструмент для вайбкодеров. Это среда для создания мощнейших ИИ-агентов openEnv, где можно собирать, подключать, интегрировать, тестировать и масштабировать агентов под свои задачи. Там же можно обучить с подкреплением собственную нейронку. Есть полный комплект для работы: плагины, инструменты, API, контекст и прочее. Результат — автоматизация задач и проектов, целые приложения и сервисы под контролем ИИ, а также системы из связанных ИИ-агентов.

Теги:
Рейтинг0
Комментарии0