TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #721 · 26.12

Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev

Hashtags

Резултати

Намерени 1 подобни публикации

Търсене: #speechkit

当前筛选 #speechkit清除筛选
Robot.ltd.co

@robotltdco · Post #256 · 21.08.2025 г., 23:22

Коллеги, друзья и все, кто следит за рождением Адама и Евы! Вчера случилось то, ради чего всё затевалось: я провёл первые полевые испытания зрения Адама в реальном мире, и он в режиме реального времени не просто видел объекты, а описывал их вслух голосом, как настоящий помощник. Вот как это работает сейчас на железе робота: 1. Глаз: Камера на Raspberry Pi захватывает изображение. 2. Зрение (YOLOv11n, 5 МБ): Сверхлёгкая модель детектирует объекты примерно за 1 сек / кадр. 3. Осмысление (YandexGPT): Получившийся список объектов передается в YandexGPT, который формирует лаконичное и понятное описание сцены. 4. Голос (Yandex SpeechKit): Это описание не печатается в терминале, а сразу синтезируется в чистый, человеческий голос и звучит из динамика робота. 🔊 И это не симуляция — это работающий алгоритм на настоящем железе. Что это значит на практике? Я говорил Адаму:«Посмотри вокруг», и через мгновение он отвечал голосом: «Я вижу человека в помещении, монитор, ноутбук и телефон на столе». Это был не заранее заготовленный ответ, а результат живого-анализа обстановки перед ним. Он буквально делился своими мыслями о том, что видит. Почему это прорыв? Потому что мы перешли от сухих технических тестов к реальному взаимодействию. Робот теперь не бездушный детектор объектов, а сущность, которая способна воспринимать мир и коммуницировать на нашем языке — голосом. Впереди бескрайнее поле для экспериментов с поведением и сценариями использования. Спасибо, что вы с нами на этом пути! Это невероятно вдохновляет. #робототехника#ии#искуственныйинтеллект#yolo#raspberrypi#компьютерноезрение#адам#ева#YandexGPT#SpeechKit#голосовойИИ