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 подобни публикации

Търсене: #talkingdrum

当前筛选 #talkingdrum清除筛选
TASTE OF AFRICA🌞

@taste_of_africa · Post #64 · 09.02.2026 г., 04:11

🗣️🎶 Taste of Africa: Язык и музыка 🌟🔔 «Ритмическое путешествие продолжается!» 🥁🌟 Когда речь становится ритмом, а мелодия — смыслом 🥁 В Африке язык и музыка часто звучат как единое целое, и это ощущается даже при первом знакомстве. В ряде языков региона (например, Yorùbá, Igbo и многих других) значение передают и слоги, и высота произнесения. 📌 Тональные языки используют тон (высоту голоса) для различения значений. Одна и та же последовательность звуков, произнесённая выше или ниже (или с другим контуром), передаёт другое слово. Ключевая мысль рубрики: 🎼 в песне мелодия работает как часть смысла и помогает ему звучать точно. 🎤 1) Как язык задаёт форму вокалу Тональная речь направляет вокальную линию к смысловой точности, поэтому в музыке часто встречаются такие решения: 🗣️ Вокал как речь: мелодия держится в узком диапазоне, звучит как разговор, уложенный в ритмический узор. 🔁 Хуки‑формулы: важная фраза повторяется, смысл закрепляется и становится общим. 👥 Call-and-response (вопрос–ответ): лидер произносит строку → хор отвечает и поддерживает. Формат создаёт ощущение общинного согласия: “мы услышали, мы повторили, мы поняли”. 🥁 2) Барабаны как продолжение языка Связь языка и музыки проявляется и через ритм речи. У каждой этнической традиции формируется свой набор привычек: ⏱️ акценты ✂️ паузы 📌 группировки слогов ⚡ ускорения и “перебросы” 🥁 Барабанные рисунки часто отражают эти принципы: ритм становится моделью речи. Поэтому в ансамблях барабаны звучат как участники диалога: отвечают голосу “репликой”, поддерживают ключевую фразу, закрепляют смысл повтором, в ряде традиций передают сообщения и статус через говорящие барабаны и кодированные сигналы. 🎧 Как услышать это в треке: представьте вокальную строку как фразу, произнесённую вслух. Когда перкуссия попадает в те же акценты, возникает ощущение разговора внутри музыки. 🌍 3) Кого послушать сегодня (по странам) 🎶 Под тему отлично подходят артисты, у которых композиция строится на риторике, повторе, коллективном ответе и “говорящем” груве. 🇳🇬 Нигерия • Fela Kuti — длинная музыкальная “речь” поверх гипнотического грува 🔥 fela-kuti.bandcamp.com • Seun Kuti & Egypt 80 — лозунг‑фраза ↔ ответ, энергия сообщества 👥 seunkuti.bandcamp.com 🇬🇭 Гана • Ebo Taylor — highlife/afro-funk, где риффы звучат как реплики 🎸 ebotaylor.bandcamp.com • Gyedu-Blay Ambolley — речевой фанк/highlife 🗣️ gyedublayambolley.bandcamp.com 🇸🇳 Сенегал • Orchestra Baobab — ансамбль как разговор: слои ответов и мягкий грув 🧵 orchestrabaobab.bandcamp.com 🇲🇱 Мали • Ali Farka Touré — фразировка как интонация речи, музыка “рассказывает” 🌀 alifarkatoure.bandcamp.com • Tinariwen — сила повтора и коллективного звучания 🌙 tinariwen.bandcamp.com 🇬🇳 Гвинея • Bembeya Jazz National — городская оркестровая традиция, где ритм держит “сюжет” 🎺 bembeyajazznational.bandcamp.com 🇪🇹 Эфиопия • Mulatu Astatke — этно‑джаз: интонации и паузы как пунктуация 🎷 mulatuastatke.bandcamp.com 🇿🇦 ЮАР • Hugh Masekela — инструмент “говорит”: вопрос–ответ, паузы, реплики 🗣️🎺 hughmasakela.bandcamp.com 🇹🇿 Танзания • Siti Muharam — суахили‑песня: текст и интонация ведут аранжировку ✨ sitimuharam.bandcamp.com 🎧 4) Мини‑упражнение (2 минуты) Выберите любой трек из списка и отметьте: 🎤 где вокал поёт, а где говорит/скандирует 🔁 какие фразы повторяются как “формулы” 🥁 где ритм‑секция отвечает голосу — как подтверждение смысла 🔄 Сохраняйте пост и приглашайте друзей в наше увлекательное путешествие вокруг света африканских ритмов!🎶🌍 #TasteOfAfrica#ЯзыкиАфрики#ЯзыкИМузыка#АфриканскаяМузыка#ТональныеЯзыки#Этномузыка#WorldMusic#AfricanRhythms#Drums#TalkingDrum#Djembe#CallAndResponse#Afrobeat#Highlife#AfroJazz#WestAfrica#EastAfrica#SouthAfrica#Nigeria#Ghana#Senegal#Mali#Guinea#Ethiopia#Tanzania#FelaKuti#SeunKuti#EboTaylor#OrchestraBaobab#AliFarkaToure#Tinariwen#MulatuAstatke#HughMasekela#SitiMuharam