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

Резултати

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

Търсене: #ukpolicy

当前筛选 #ukpolicy清除筛选
AI & Law

@ai_and_law · Post #472 · 25.12.2024 г., 08:04

UK's AI Copyright Debate: Balancing Innovation and Creative Rights The UK government has launched a consultation exploring legal frameworks for AI training on copyrighted material, proposing four policy options with significant implications for AI and creative industries. 1️⃣Controversial Proposal: One option would allow AI firms to use copyrighted works without rights holders’ permission, even for commercial purposes, with minimal restrictions. This has sparked concerns among creatives about irreversible harm to their industries. 2️⃣Alternative Frameworks: Other proposals include opt-out systems for copyright holders or stricter licensing requirements, but creatives argue these approaches lack enforcement and transparency, leaving copyright holders vulnerable. With feedback open until February 25, 2025, this consultation is a critical moment for shaping the intersection of AI innovation and intellectual property rights in the UK. #AIRegulation#Copyright#AIEthics#UKPolicy

AI & Law

@ai_and_law · Post #794 · 27.03.2026 г., 08:04

🇬🇧UK Reconsiders AI Copyright Exception After Industry Backlash The UK government has stepped back from plans to allow AI companies to freely use copyrighted material for training by default. The proposal would have permitted data scraping unless rights holders explicitly opted out. The reversal follows objections from prominent figures in the creative industries, including Paul McCartney, Elton John, Coldplay, Richard Curtis, Antony Gormley, and Ian McKellen. Science minister Liz Kendall stated that consultations with stakeholders — including creatives, AI firms, unions, and academics — led the government to abandon a preferred policy option. #AIRegulation#Copyright#AIethics#UKpolicy#IntellectualProperty

AI & Law

@ai_and_law · Post #812 · 23.04.2026 г., 07:04

🇬🇧UK DSIT Warns Businesses on AI Cybersecurity Risks The UK Department for Science, Innovation and Technology (DSIT) issued an open letter warning businesses about the growing availability of AI models with cybersecurity vulnerability detection capabilities. The department stated that such systems create new risk exposures for organizations as these tools become more accessible. DSIT referenced releases by Anthropic and OpenAI, as well as subsequent reviews by the AI Security Institute. The department noted that the UK “is not standing still in response to this threat,” but emphasized that government action alone will be insufficient. Business leaders were urged to adopt preventive measures to stay ahead of emerging model capabilities. #AIRegulation#Cybersecurity#AISafety#UKpolicy#RiskManagement