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

Резултати

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

Търсене: #raga

当前筛选 #raga清除筛选
Tibicen

@world_music_geek · Post #97 · 01.11.2020 г., 21:38

Ravi Shankar — The Sounds of India (Columbia Records, 1968) #hindustani#raga#sitar#India Культовый альбом Рави Шанкара, который представляет классическую музыку Северной Индии западному слушателю. В начале альбома Рави Шанкар дает определение раге на английском языке, а затем исполняет ряд композиций, сопровождая их пояснениями о том, как они устроены. Вопреки этому, музыка исполнена очень аутентично. Альбом был вдохновлен работами Али Акбара Кхана, известного исполнителя на сароде и преподавателя классической музыки Северной Индии, и спродюсирован Джорджем Авакяном, одним из продюссеров Майлза Дейвиса. Spotify | AppleMusic

Tibicen

@world_music_geek · Post #318 · 27.10.2022 г., 11:07

Baligh Hamdi — Instrumental Modal Pop of 1970's Egypt (Sublime Frequencies, 2021) #psychedelic#jazz#funk#raga#Egypt Модальные инструментальные треки Балига Хамди, одного из самых важных арабских композиторов XX века. Он писал музыку для Умм Кульсум, Абделя Халима Хафеза, Сабах, Варды Аль-Джазаирии и многих других арабских певцов. Эта компиляция посвящена одному десятилетию творчества Хамди, в течении которого он заниался в основном западной поп-музыкой с элементами арабской традиции. Помимо этого на сборнике можно услышать гитарные соло знаменитого египетского гитариста Омара Хоршида и подборку индо-арабских композиций на ситаре, представляющих собой встречу ближневосточной и индийской музыки. Bandcamp | VK

Tibicen

@world_music_geek · Post #247 · 03.02.2022 г., 17:02

Banaras Baba & Kolkata Kid — From North to South (Epidemic Sound, 2021) #hindustani#raga#sitar#India#Sweden После многих лет изучения музыки Индостана, два шведских музыканта, мульти-инструменталист К.Г. Уэстман, он же Banaras Baba, и перкуссионист Хьюго Виден, он же Kolkata Kid, выпустили серию мини-альбомов, посвященных индийской классической музыке. Перед нами второй альбом из этой серии. Несмотря на то, что у музыкантов не было задачи смешивать разные музыкальные традиции, в их работах присутствуют западные инструменты и очень слышно влияние западной музыки. Spotify | AppleMusic

Tibicen

@world_music_geek · Post #210 · 03.08.2021 г., 13:00

Charanjit Singh — Synthesizing: Ten Ragas to a Disco Beat (Saregama, 1982) #raga#acid#house#disco#electronic#India Чаранджит Сингх — индийский музыкант из Мумбаи, много лет проработавший в Болливуде. В 21 веке он получил известность благодаря релизу 82 года, задуманному как сплав диско с индийскими рагами. На этом альбоме Сингх использовал легендарные синтезаторы TR-808 и TB-303 с функцией «глиссандо», напоминавшей ему индийскую мелодику. Сингх купил TB-303 в Сингапуре вскоре после его появления в конце 81 года. Он потратил много времени на изучение мало кому известного в то время устройства и в конце концов обнаружил возможность синхронизации TR-808 и TB-303 с Jupiter-8. В композицию «Raga Bhairavi» Сингх добавил синтезированный голос, произносящий «Om Namah Shivaya». В результате некоторые современные музыкальные журналисты назвали его самым ранним представителем эйсид-хауса, на пять лет опередившим «каноническую» запись «Acid Tracks» чикагского музыканта Phuture. SoundCloud

Tibicen

@world_music_geek · Post #798 · 06.11.2024 г., 15:01

Charanjit Singh — Synthesizing: Ten Ragas to a Disco Beat (Saregama, 1982) #hindustani#raga#acid#house#disco#electronic#India Чаранджит Сингх — индийский музыкант из Мумбаи, много лет проработавший в Болливуде. В XXI веке он получил известность благодаря релизу 1982 года, задуманному как сплав диско с индийскими рагами. На этом альбоме Сингх использовал легендарные синтезаторы TR-808 и TB-303 с функцией «глиссандо», напоминавшей ему индийскую мелодику. Сингх купил TB-303 в Сингапуре вскоре после его появления на рынке в конце 1981 года. Он потратил много времени на изучение мало кому известного в то время устройства и в конце концов обнаружил возможность синхронизации TR-808 и TB-303 с Jupiter-8. В композицию Raga Bhairavi Сингх добавил синтезированный голос, произносящий Om Namah Shivaya. В результате некоторые современные музыкальные журналисты назвали его самым ранним представителем эйсид-хауса, на пять лет опередившим «каноническую» запись Acid Tracks чикагского музыканта Phuture. 🔗Spotify | AppleMusic | SoundCloud | VK | Telegram

Tibicen

@world_music_geek · Post #118 · 22.11.2020 г., 17:59

Tenderlonious & Jaubi — Tender In Lahore (22a, 2020) #hindustani#electronic#raga#tabla#flute#synth#Pakistan В апреле 2019 года Tenderlonious, флейтист, джазовый саксофонист, электронный продюссер и глава лейбла 22a, отправился в Пакистан, чтобы поработать с инструментальным квартетом Jaubi из Лахора, столицы провинции Пенджаб, расположенной всего в нескольких киллометрах от Индии. Эти три импровизированные раги – первые плоды сотрудничества музыкантов. Spotify | AppleMusic | Bandcamp

Tibicen

@world_music_geek · Post #123 · 02.12.2020 г., 18:00

Don Cherry — Om Shanti Om (Black Sweat Records, 2020) #jazz#raga#latin#berimbau#tambura#kora#United_States Om Shanti Om был записан итальянской компанией RAI в 1976 году, но впервые издан только в этом году лейблом Black Sweat Records. В импровизированных композициях с этого альбома объеденины все знания пионера world-fusion, Дона Черри, полученные им во время многочисленных путешествий по миру. Помимо самого Черри, играющего на флейте, трубе и коре, на записи отметились бразильская перкуссионистка Нана Васконселос, итальянский гитарист Джан Пьеро Прамаджоре и жена Дона, Моника, исполняющая дрон на танпуре. Индийские мантры соседствуют с африканским пением и латниской ритмикой. Запись вышла очень эклектичной, но это тот случай, когда ей это только на руку. 🔗Bandcamp

Tibicen

@world_music_geek · Post #160 · 23.02.2021 г., 19:15

Tenderlonious — Ragas From Lahore: Improvisations with Jaubi (22a, 2020) #hindustani#electronic#raga#tabla#sarangi#flute#synth#Pakistan В апреле 2020 года Tenderlonious, флейтист, джазовый саксофонист, электронный продюссер и глава лейбла 22a, отправился в Пакистан, чтобы поработать с инструментальным квартетом Jaubi из Лахора. Вслед за получившим признание «Tender in Lahore», вышедшим в апреле 2020 года, в результате этой поездки в ноябре 22a выпустил альбом импровизированных раг, записанных в течение одного дня. На этом альбоме структура индийской классической музыки обрамляет импровизационные сессии, в которых приняли участие Tenderlonious на флейте и сопрано-саксофоне, Кашиф Али Дхани на табла, Зохайб Хасан Кхан на саранги, Али Риаз Бакар на гитаре и Марек Пендзивиатр на синтезаторе. Spotify | AppleMusic | Bandcamp

Tibicen

@world_music_geek · Post #801 · 08.11.2024 г., 15:02

📺Glass Beams — One Raga to a Disco Beat (A cover of 'Raga Bhairav' by Charanjit Singh) #psychedelic#funk#hindustani#raga#acid#house#disco#electronic#India#Australia Австралийцы Glass Beams, выпустившие весной 2024 года нашумевший EP Mahal, записали кавер на композицию Raga Bhairav Чаранжита Сингха с альбома 1982 года Ten Ragas to a Disco Beat. Оригинальная песня была создана в Мумбаи в 1982 году и является одной из первых записей, в которой звучит басовый синтезатор Roland TB 303, ставший основой для стиля acid house. Чаранжит Сингх в качестве эксперимента хотел записать индийские раги со звуками современных синтезаторлв, но в XXI веке музыкальные критики поняли, что работа композитора опередила время и звучит почти как acid house из Чикаго. 🔗YouTube

Tibicen

@world_music_geek · Post #203 · 20.06.2021 г., 18:04

Jaubi — Nafs at Peace (Astigmatic Records, 2021) #hindustani#raga#spiritual#modal_jazz#jazz#hip_hop#boom_bap#United_Kingdom#Poland#Pakistan В 2016 году лахорский квартет Jaubi отметил десятую годовщину смерти J Dilla кавером его песни Time: The Donut of the Heart. Музыканты рассмотрели ритм песни как талам — перкуссионный каркас раги, вокруг которого выстраивается импровизация. Этот кавер — прекрасное введение в музыкальную философию группы, сочитающую в себе импровизацию классичской музыки Северной Индии и джаз с сэмплированием. Свой подход музыканты раскрывают в дебютном альбоме Nafs at Peace. «Нафс» — арабское слово, означающее «я», «эго» или «душа». Альбом был записан при участии Tenderlonious, лондонского джазиста и главы лейбла 22a, и Latarnik, польского пианиста и участник групп EABS и Błoto. Ранее, в 2020 году, музыканты в том же составе записали альбом импровизированных раг Ragas from Lahore. 🔗Spotify | AppleMusic | Bandcamp

Tibicen

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

Стили #afro_caribbean#afro_colombian#afro_house#afro_jazz#afro_soul#afro_swing#afrobeat#amapiano#ambient#anatolian#andalusian#aor#appalachian#ashik#assouf#avantfolk#balkan#ballad#bambuco#baroque#baroque_pop#bluegrass#blues#bolero#bollywood#bon#boogie#boom_bap#bossa_nova#breakbeat#broken_beat#bwiti#calypso#candomble#canterbury_scene#canzone_napoletana#caribbean#carnatic#celtic#chaabi#champeta#chanson#chanting#cheb#chicha#chimurenga#christian#city_pop#classicism#coladeira#concrete_music#cool_jazz#country#cumbia#dancehall#dark_folk#deep_house#dhikr#dhrupad#disco#doom#dream_pop#drone#drumnbass#dub#dubke#early_music#electronic#ethio_jazz#europop#field_recording#field_recordings#flamenco#free_jazz#french_pop#funana#funk#fusion#gamelan#garage#ghazal#gnawa#gospel#gqom#grime#griot#guaracha#gypsy_jazz#hard_bop#highlife#hindustani#hip_hop#house#hussars_funk#idm#indie#indofuturism#indorock#industrial#ishumar#italo_disco#jarocho#jazz#jit#joik#jongo#khaliji#khoomei#khyal#klasik#klezmer#kraut#kwaito#kwela#laika#latin#lullaby#malhun#maloya#manouche#maqam#medieval#milonga#minimal#minyo#modal_jazz#mor_lam#mugham#musica_caipira#musica_popular_brasileira#muwashahah#nasheed#neo_rebetiko#new_age#new_wave#noise#nu_disco#operetta#oriental_noise_rock#persian_classical#pop#pop_rock#post_industrial#post_punk#post_punk#postdubstep#postdubstep#progressive#proto_zouk#psychedelic#qawwali#raga#rai#rebetiko#reggae#renaissance#rnb#rock#rocksteady#romance#romanticism#roots_reggae#ryukoka#salsa#salsa_dura#samba#shaabi#shashmaqom#shoegaze#ska#soca#soft_rock#son#son_cubano#son_montuno#soukous#soul#space_rock#spiritual#sufi#surf#surti#swing#synth#synth_pop#synthpop#taarab#takamba#taksim#tango#tarana#techno#throat_singing#thumri#tishoumaren#traditional#tribal#vallenato#voodoo#wahrani#wassoulou#yacht_rock#zeuhl#zolo#zouk

Hashtags

#afro_caribbean#afro_colombian#afro_house#afro_jazz#afro_soul#afro_swing#afrobeat#amapiano#ambient#anatolian#andalusian#aor#appalachian#ashik#assouf#avantfolk#balkan#ballad#bambuco#baroque#baroque_pop#bluegrass#blues#bolero#bollywood#bon#boogie#boom_bap#bossa_nova#breakbeat#broken_beat#bwiti#calypso#candomble#canterbury_scene#canzone_napoletana#caribbean#carnatic#celtic#chaabi#champeta#chanson#chanting#cheb#chicha#chimurenga#christian#city_pop#classicism#coladeira#concrete_music#cool_jazz#country#cumbia#dancehall#dark_folk#deep_house#dhikr#dhrupad#disco#doom#dream_pop#drone#drumnbass#dub#dubke#early_music#electronic#ethio_jazz#europop#field_recording#field_recordings#flamenco#free_jazz#french_pop#funana#funk#fusion#gamelan#garage#ghazal#gnawa#gospel#gqom#grime#griot#guaracha#gypsy_jazz#hard_bop#highlife#hindustani#hip_hop#house#hussars_funk#idm#indie#indofuturism#indorock#industrial#ishumar#italo_disco#jarocho#jazz#jit#joik#jongo#khaliji#khoomei#khyal#klasik#klezmer#kraut#kwaito#kwela#laika#latin#lullaby#malhun#maloya#manouche#maqam#medieval#milonga#minimal#minyo#modal_jazz#mor_lam#mugham#musica_caipira#musica_popular_brasileira#muwashahah#nasheed#neo_rebetiko#new_age#new_wave#noise#nu_disco#operetta#oriental_noise_rock#persian_classical#pop#pop_rock#post_industrial#post_punk#postdubstep#progressive#proto_zouk#psychedelic#qawwali#raga#rai#rebetiko#reggae#renaissance#rnb#rock#rocksteady#romance#romanticism#roots_reggae#ryukoka#salsa#salsa_dura#samba#shaabi#shashmaqom#shoegaze#ska#soca#soft_rock#son#son_cubano#son_montuno#soukous#soul#space_rock#spiritual#sufi#surf#surti#swing#synth#synth_pop#synthpop#taarab#takamba#taksim#tango#tarana#techno#throat_singing#thumri#tishoumaren#traditional#tribal#vallenato#voodoo#wahrani#wassoulou#yacht_rock#zeuhl#zolo#zouk