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

Резултати

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

Търсене: #tombak

当前筛选 #tombak清除筛选
Tibicen

@world_music_geek · Post #261 · 18.05.2022 г., 17:00

Simin Tander, Hesam Inanlou & Navid Afghah — Still (Hermes Records, 2022) #persian_classical#kemenche#tombak#Iran Хесам Инанлоу продалжает радовать нас своими работами для кеманчи. На этот раз, чтобы записать очередную медетативную музыкальную притчу, он объединился c немецкой джазовой певицей Симин Тандер, афганкой по отцу, и иранским исполнителем на томбаке, Навидом Афга. Spotify | AppleMusic | SoundCloud | VK

Tibicen

@world_music_geek · Post #249 · 09.03.2022 г., 18:02

Oliver Doerell & Jawad Salkhordeh — سایه [sāje] (Sonic Pieces, 2021) #ambient#electronic#tombak#setar#Iran#Belgium Транскультурный проект бельгийца Оливера Дорелла и иранца Джавада Салкхорде (جواد سالخورده), в котором абстрактные электронные фактуры пересекаются со звуками персидской перкуссии и струнных. Оливер Дорелл — один из основателей музыкальных проектов Dictaphone, SWOD и Cummi Flu. Он также сочинял музыку для фильмов и театральных постановок. Музыкальная палитра Оливера простирается от работ с аналоговыми синтезаторами до электроакустического джаза. Джавад Сальхорде родился в 1980 году на севере Ирана, где обучался игре на тонбаке и cетаре. Он живет в Берлине с 2010 года и участвует в проектах Sistanagila и Duo Safar. Spotify | AppleMusic | Bandcamp

Tibicen

@world_music_geek · Post #570 · 11.03.2024 г., 18:13

Parviz Meshkatian & Mohammad Reza Shajarian — Bidad (Delawaz Records, 1985) #persian_classical#santur#tar#setar#tombak#Iran После иранской революции 1979 года молодое поколение традиционных музыкантов посвящало свои работы преимущественно прославлению перемен. Это дало новую жизнь традиционной музыке, имевшей на тот момент репутацию устаревшей, но также придало ей идеологическую окраску. Bidad — одно из первых произведений того периода, показавших иранской музыке новый способ стать актуальной вне политического контекста. Bidad (بیداد), что значит «безудержный», — совместная работа сантуриста Парвиза Мешкатяна и певца Мохаммеда Резы Шаджаряна. Музыка на альбоме написана на стихи средневековых ширазских поэтов Саади и Хафиза. Также на нём отметился выдающийся тарист Мохаммад Реза Лотфи. Альбом разбит на две части, в каждой из которых используются разные «дастгяхи». Дастгях (دستگاه) — набор правил построения композиции в иранской классической музыке, схожий с индийской рагой или арабским макамом. Дастгях можно понимать и как лад, или набор нот, используемый в начальной части многосоставного произведения. С дастгяхом связанны несколько гуше (گوشه) — небольших музыкальных идей. Исполнять произведение в определенном дастгяхе — значит переходить от гуше к гуше, демонстрируя слушателю многогранность дастгяха. Гуше «бидад», вокруг которого построено звучание альбома, как раз и дал ему название. В первой части альбома, начинающейся с композиции Moghadameh (مقدمه), используется дастгях хумаюн (همایون), в европейской музыке соответствующий мажорному ладу с пониженной на четверть тона 2 ступенью и с пониженными на полтона 6 и 7 ступенями (C Dk E F G A♭ B♭). Во второй части альбома, начинающейся с композиции Pishdaramade Homayoun (پیش‌درآمد همایون), помимо хумаюна используется дастгях шур (شور), который соответствует мажорному ладу с пониженной на четверть тона 2 ступенью и с пониженными на полтона 3, 6 и 7 ступенями (C Dk E♭ F G A♭ B♭). Spotify | AppleMusic | VK | Telegram

Tibicen

@world_music_geek · Post #259 · 26.04.2022 г., 17:02

Hesam Inanlou — A Lament for Existence (Hermes Records, 2021) #persian_classical#jazz#kemenche#tombak#duduk#nyckelharpa#bandoneon#erhu#Iran A Lament for Existence — альбом камерной традиционной музыки с задумчивым и печальным настроением. На нем мы можем услышать ряд дуэтов, записанных иранским исполнителем на киманче, Хесам Инанлоу, с западными и восточными музыкантами. Здесь звучат как фортепиано и кларнет, так и куда более необычные инструменты, такие как бандонеон и эрху. Музыка была написана в дистанционном формате во время пандемии короновируса в 2020 году и опубликована 2021 году. Spotify | AppleMusic | VK

Tibicen

@world_music_geek · Post #985 · 19.06.2025 г., 21:35

Various Artists — Classical Music of Iran: The Dastgah Systems (Folkways Records, 1991) #traditional#dastgah#avaz#kamanche#nei#santur#setar#tar#violin#tombak#Iran Альбом Classical Music of Iran: The Dastgah Systems, впервые изданный лейблом Folkways Records в 1966 году, представляет слушателям один из краеугольных камней иранской музыкальной традиции — систему дастгяхов (دستگاه). Термин дастгях (دستگاه) по значению близок к музыкальному ладу, но, помимо характерного набора звуков, обладает рядом мелодических формул и стремится передать определенное эмоциональное состояние. У каждого дастгяха (دستگاه) существуют свои «диалекты» — авазы (آواز). Например, дастгях Шур (شور) может включать в себя авазы Афшари (افشاری), Дашти (دشتی) или Баяте Тюрк (بیات ترک), каждый из которых меньший по объёму, но обладает более конкретной мелодической направленностью. В этой подборке собраны работы выдающихся исполнителей классической иранской музыки, ещё совсем юных на момент записи. Композиции демонстрируют как основные дастгяхи, так и их производные авазы.Ахмад Эбади исполняет дастгях Махур (ماهور) на сетаре, а также аваз Дашти (دشتی) на таре. Хусанг Зариф, мастер тара, исполняет дастгях Чахаргях (چهارگاه) и авазы Баят Тюрк (بیات ترک) и Абу Ата (ابوعطا). Сантур Мохаммада Хейдари звучит в авазе Баят Эсфахан (بیات اصفهان), а кеманче Асгара Бахараи — в авазе Афшари. Вокал Хатере Парване в дастгяхе Шур (شور) и авазе Абу Ата (ابوعطا) — почти акапельный, лишь немного обрамлённый инструментальным фоном — звучит особенно пронзительно и заметно выделяется на фоне остальной подборки. Дастгях Хомаюн (همايون) представлен найем Хасана Кассайи. В интерпретации дастгяха Сега (سه‌گاه) звучат скрипка Али Таджвиди, вокал Хоссейна Фахтеи и томбак Нассера Эффетаха. 🔗Spotify | AppleMusic | Telegram

Tibicen

@world_music_geek · Post #740 · 03.09.2024 г., 09:05

Инструменты #accordion#afoxe#agaita#apapshyn#apapshyn#baglama#baglamas#bagpipes#bajo_sexto#bandoneon#banjo#bansuri#barbat#berimbau#bouzouki#brass#bulbul_tarang#cabrette#calabash#chabrette#chanzy#cimbalom#clarinet#conga#daf#dam#damaru#dambura#dhol#dholak#dilruba#djembe#dombra#doshpuluur#draailier#duduk#dulcimer#dunggur#dut#dutar#epinette#epinette_des_vosges#erhu#flute#gabusi#gayageum#geomungo#ghatam#ghaychak#goje#gong#granular_synthesis#gubguba#guembri#guitar#guzheng#gwo_ka#gyil#harmonium#harp#hurdy_gurdy#igil#irawk#kamanche#kamyl#kangling#kanjira#kanyeri#kayamb#kemenche#kendhang#khomus#kobyz#kologo#komuz#kora#lag_na#lamellophone#lute#lyre#malimba#mandola#mandolin#mandoloncelle#marimba#marranzano#mbira#musical_bow#nay#ney#ngombi#ngoni#nyckelharpa#ocarina#organetto#oud#piano#pifres#premtal#pungi#qraqebs#rebab#rolmo#rubab#sanfonha#sanfonha#santur#sarangi#sarod#setar#shakuhachi#shang#shychepshyn#sildyen#silnyen#sintir#sitar#soku#sring#synth#tabla#talking_drum#tambours#tambura#tanbur#tanpura#tar#tende#thavil#theremin#tindi#tingsha#tombak#tombi#toubeleki#trombone#trumpet#tuba#tumbi#tzouras#vibraphone#viola#violin#water_drum#xylophone#zerbaghali#zither#zurna#сhabreta