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

Резултати

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

Търсене: #apps

当前筛选 #apps清除筛选
Newlearnerの自留地

@NewLearnerChannel · Post #14513 · 15.07.2025 г., 10:04

#Apps 🧠Braintrust: LLM 开发运维多合一,测试,评估,开发,日志 Braintrust 是一个专为构建 LLM 应用设计的开发运维平台,它通过集成评估、监控与实验管理,加速 Prompt 从原型到生产环境的开发。 ✨特点 - 评估引擎:自定义标准,量化 LLM 输出质量。 - Prompt:版本化 Prompt,跟踪其性能变化,并与生产代码库同步。 - 评分器:通过代码函数或自然语言指令编写自定义评分标准,从简单的启发式规则到利用 LLM 评估。 - 数据集:将来自生产环境的用户交互数据或测试样例整合成可版本化、可扩展的测试数据集,作为评估基准。 - 日志:和主流框架结合,记录模型,Token,成本 - 追踪:生成 LLM 交互的详细执行记录,可视化展示嵌套的工具调用、检索操作和模型调用。 👨🏻‍💻使用场景 - 迭代和优化 LLM 应用:系统性地回答“修改 Prompt 后哪些案例效果变差了?”或“换用新模型后表现如何?”等问题,用工程化方法取代凭感觉的调优。 - 连接生产反馈与测试:将生产环境中的真实用户交互数据(例如用户点赞/点踩的记录)自动沉淀为评估数据集,形成持续改进的闭环。 Notion 的 AI 问答:Notion 使用 Braintrust 为其 Q&A 功能创建了数百个专项功能测试集。通过建立连接生产日志和测试数据集的持续评估流程,其问题修复能力从每天 3 个提升至 30 个。 💬 社区评价 “Braintrust 填补了评估非确定性 AI 系统这个关键且缺失的环节。” — Mike Knoop, Cofounder/Head of AI @ Notion “我从未见过像这样将‘评估’融入‘Prompt 工程’流程的工作流变革。这太惊人了。” — Malte Ubl, CTO @ Vercel “我们把所有东西都记录到 Braintrust。他们让发现和修复问题变得非常容易。” — Simon Last, Cofounder @ Codium 💰定价 - 免费:免费套餐,每月包含 100 万次追踪 和 1 万次评分,适合个人开发者和初期原型验证。 - Pro:$249/月,每月包含 5GB 处理数据和 5 万次评分,无追踪次数限制。 频道:@NewlearnerChannel

Hashtags

TONlines – News

@tonlines · Post #7117 · 08.05.2025 г., 18:42

⚡️Trending Apps: New Voting System in Telegram Apps Center #Telegram#Apps Trending Apps announces that users can now influence the ranking of Mini Apps through a new voting system in the Telegram Apps Center. Active participants will be rewarded with exclusive SBTs and Telegram Gifts. Source: link @tonlines

TONlines – News

@tonlines · Post #7012 · 01.05.2025 г., 14:51

⚡️Trending Apps: Upcoming Feature in Apps Center #Telegram#Apps Trending Apps announced a new feature in the Apps Center, aiming to enhance user engagement by allowing users to influence developments directly. This innovative approach is set to launch within the next 30 days, with more details to be revealed gradually. Source: link @tonlines

AppPie

@AppPie · Post #2062 · 08.07.2024 г., 04:03

#Apps 海棠诗社 —— 古诗词的数字桃源 🔗GitHub 特点 • 按诗集、朝代、诗人、诗词等方式检索,内容丰富,信息齐全 • 按选集、主题、节日、节气、词牌、时令、地理等方式精选分类 • 响应式布局,支持深色模式 许可证 项目采用 MIT License。 #GitHub 📮 频道 @AppPie

Hashtags

123•••89
ПредишнаСтр. 1 от 9Следваща