Pull to refresh
3
0
Dimitri @dsapsan

Senior Software Developer

Send message

Домашний DPI, или как бороться с провайдером его же методами

Reading time16 min
Views308K

Долгое время я терпел ограничения РосКомНадзора и соответствующие действия провайдеров по различным ограничениям доступа к сайтам - но с определённого момента устал, и начал думать как бы сделать так, чтобы было и удобно, и быстро, и при этом с минимумом заморочек после настройки... Хочу оговориться, что цель анонимизации не ставилась.

Вообще, эта проблема имеет несколько решений... Но я решил бороться с провайдером их же методом.

...При помощи NGINX!

Исключения среди исключений в .NET

Reading time15 min
Views28K

В свое время я случайно узнал, что исключения в моём горячо любимом языке C# — и, как следствие, во всем .NET — не все ведут себя одинаково. Причём, что ещё гораздо интереснее, далеко не все и не всегда могут быть обработаны и перехвачены. Что, казалось бы, полностью противоречит интуитивному восприятию конструкции try-catch-finally

Изучая этот вопрос, я находил всё новые и новые исключения среди исключений, которые оказывались «сильнее», чем конструкция try-catch-finally. К тому моменту, когда мой список вырос до 7 пунктов, я внезапно осознал, что нигде не было такого места, где можно было бы найти их все сразу. Максимум — 2 или 3 случая, рассмотренных в одной статье. 

Это и подтолкнуло меня к написанию данной статьи. 

Читать далее

Работа на орбите, или VR-продуктивность в мире удалёнки

Reading time24 min
Views14K

Я парю в космосе, вокруг простирается грандиозный Млечный Путь. Передо мной висит экран размером как в кинотеатре, плавно изогнутый, на идеальном для просмотра расстоянии. Восемь разных панелей сверкают кодом — грани технологической жемчужины, через которые можно заглянуть в мозг системы, отвечающей за движение десятков миллионов долларов в день. На коммуникационной консоли, расположенной под углом (как чертёжная доска), прямо на кончиках пальцев находится пункт переписки с коллегами, календарь, документация API и видеопотоки с камер «реального» мира. Слева от меня, рядом с огромным массивом кода, на вертикальном экране высотой в два этажа отображаются детали текущей задачи вместе с плейлистом Spotify. Врубаю музыку и вхожу в поток.

Это не отрывок из романа Эрнеста Клайна — это моя повседневность. На этой неделе я проведу 40–50 часов в виртуальной реальности, как уже делал и на прошлой неделе, и каждую рабочую неделю в течение последних 2,5 лет. Виртуальная реальность — это не просто развлечения и игры (хотя их и предостаточно), а еще физические упражнения, медитация, творчество, общение и т. д.  Но в этой статье я сосредоточусь только на работе.

Читать далее

Регенерация нейронов. Генно-инженерный подход будущего

Reading time13 min
Views7.2K

Эта статья продолжает серию статей о глубокой модификации ДНК в недалёком будущем для решения серьёзных проблем человечества. Первая статья - тут.

TL;DR: Все программисты знают, что есть масса способов решить одну и ту же задачу. То же самое скоро будет и в биоинформатике: есть тысячи способов изменить геном так, чтобы получился новый "сложный признак". ДНК-код так же пластичен и универсален как и компьютерный код. Одним из первых применений “перепрограммирования на уровне ДНК” может стать способность нейронов восстанавливать свою функцию после повреждения (разрыва аксона), что позволит десяткам тысяч парализованных инвалидов-колясочников в буквальном смысле встать на ноги. При этом, как и в случае с привычным нам компьютерным кодом, добиться решения задачи можно несколькими способами - некоторые из которых - такие, как многоядерные нейроны, сращение синапсов на дендритных деревьях, активизация макрофагов для сращения - будут рассмотрены ниже, в данной статье.

Читать далее

100 сленговых выражений австралийского английского

Reading time3 min
Views12K

100 сленговых выражений австралийского английского

Отличается ли австралийский английский от "классического" английского? Весьма существенно, но если знать правильный код, ларчик успешной коммуникации просто открывается. 

А универсальный код - это живой, местный, настоящий язык, а значит не обойтись без сленга. Slang… Как много в этом слове непоняток, недосказанностей и предубеждения. Однако не стоит сходу его клеймить, думая, что сленг = обсценная лексика. Да, бывает и такое, но здесь мы рассмотрим вполне приличные экземпляры, такие типично австралийские словосочетания, которые вполне уместно использовать safely.

Читать далее

Сенсибилизация к пыли (аллергии) — медицинская причина уборки; разбираемся, как лечить

Reading time11 min
Views24K

Пылевой клещ. Размер колеблется от 0,1 до 0,5 мм

Обычная клиническая картина сенсибилизации к пыли у ребёнка и у взрослого выглядит так: человек заходит домой с улицы, и начинается веселье — чихание, так называемый «аллергический салют» (это когда постоянно теребят кончик носа по причине мучительного зуда). Чихание мучает вплоть до обструкции (сужение бронхов в силу аллергического воспаления, что вызывает свистящее дыхание).

Второе по частоте выглядит так: после ОРВИ прошло уже больше 10 дней, а заложенность носа сохраняется на месяц.

Бытовая пыль — это одна из причин, по которым мы вынуждены регулярно делать уборку. Для кого-то она может стать причиной аллергии. В каждом конкретном доме её состав будет различаться, но основные компоненты этого «салата» одинаковы: пылевые клещи и отходы их жизнедеятельности, шерсть животных, частички эпидермиса, грибки плесени, частички еды. Как правило, аллергию вызывают клещи, шерсть и грибок.

Так что если дома вы начинаете чихать, кашлять и постоянно чешется нос, а на улице все симптомы пропадают — это тревожные звоночки.

Давайте разберёмся, как медицина умеет диагностировать аллергию на пыль сегодня и что мы делаем для того, чтобы облегчить страдания аллергиков.
Читать дальше →

[Пятничное] Теория Жоп

Reading time5 min
Views242K

Эту полу-шуточную теорию о проектном управлении я излагал коллегам по ИТ цеху лет 15 назад, и тогда же неоднократно слышал советы загрузить этот текст на Хабр, но руки не дошли. На днях, разгребая старые файлы наткнулся на свои записи и решил все таки поделиться ими с Вами. Частое употребление ключевого слова к сожалению, неизбежно и не отделимо для целостности этого текста, прошу принимать или нет 'as is'. Итак...

Каждая карьера развивается от Жопы к Жопе, и никак иначе. Хочешь повышения - ищи Жопу и принимай, как говорят в Америке, "challenge". Если Вам предлагают возглавить новый проект, либо занять какую то должность, да что угодно - знайте, там Вас ждет Жопа. Иначе не предложили бы, а сами бы справились. Равно как и если Вы ожидаете избавиться от надоевшей Вам сейчас деятельности, надеясь вырваться из "этого ада" и заняться "чем то новеньким" - будьте готовы встретиться с Большой Жопой.

Читать далее

А нормальны ли нормы?

Reading time8 min
Views8.1K

Для контроля состояния здоровья я и Вы, уважаемый читатель, используем так называемые «нормы» или референсные (референтные) значения параметров крови, мочи и т.п.

Например: референсные значения числа лейкоцитов в крови 3,8--9,9 * 10**9 штук/л.

Но так ли нормальны эти «нормы», эти референсные значения?

Узнать важные для здоровья детали

Производительность Unity C#: советы и приемы

Reading time9 min
Views13K

С чем бы вы ни работали – ПК, мобильным устройством или консолью, наступит такой момент, когда вы захотите оптимизировать вашу игру. В этой статье приведено несколько советов о том, что нужно и чего не нужно делать, чтобы ваш код на Unity стал бегать немного быстрее.

Читать далее

Интеллектуальная производительность без выгорания: 7 техник использования мозга. Часть 2

Reading time12 min
Views31K

Итак, мы с вами личности, и у нас есть некие представления, желания, требования к себе, образ себя, стратегии жизни и так далее. При этом окружающий мир изменчив: коронавирус, остальные болезни, финансовые истории, искусственный интеллект, занимающий все больше рабочих мест… Продолжите список сами. 

Если мы не научим мозг строить красивую и нужную нам жизнь, то окажемся в ситуации, когда мы на протяжении долгого времени прикладываем усилия, тратим силу воли и энергию на построение чего-то во внешнем мире, что может быть разрушено. Сегодня я расскажу про еще четыре техники для тренировки мозга, которые помогут  вам быть эффективными в изменчивом мире. Здесь можно посмотреть теорию, а здесь — первую часть техник.

Читать далее

Как правильно делать уборку в доме, если кого-то стошнило

Reading time13 min
Views45K

Ультрафиолет с длиной волны 365 нм показывает следы органики в вашей квартире

Убираться надо, чтобы не было пыли. Но всю пыль дома всё равно не убрать. Во-первых, она останется за холодильником, на шкафах и за шкафами, в радиаторе отопления и в других местах. Во-вторых, даже если вы каким-то чудом полностью уберёте пыль, через час в квартире уже начнёт скапливаться новая. То есть в среднем у нас в домах всегда пыльно.

Смысл уборки не в том, чтобы сделать всё визуально чистым, а чтобы в воздухе летало поменьше частиц и чтобы не устраивать кормовые площадки для разной мелкой живности, которая ест отшелушивающиеся частицы эпидермиса вашей кожи. А этих частиц в домашней пыли — до четверти.

Самые опасные твари среди них — пылевые клещи. Они доказано вызывают проблемы с иммунитетом, в особенности часто — аллергии. Причём, помимо респираторных проблем, они могут провоцировать атопический дерматит и даже аллергию на креветок.

Поэтому сегодня будем говорить про домашнюю микроживность, правильную уборку и места, куда вы наверняка забываете заглянуть. Заодно посмотрим, как правильно корректировать уборку, если кто-то заболел и по квартире внезапно оказались разлиты биологические жидкости больного человека.
Читать дальше →

Прогулка по заводу желаний

Reading time36 min
Views33K
Откуда приходят и куда исчезают желания?

Иногда трудно заставить себя делать что-то нужное: мыть посуду, делать зарядку, работу работать… В интернете есть много статей с рецептами преодоления нежелания, и каждый день добавляются новые. Я вижу во многих статьях одну и ту же проблему.

Взять, например, дерево — почему оно не цветет? Или дождей давно не было, или тень от других деревьев закрыла свет, или соль в почву попала, или вредные насекомые завелись, или дерево слишком молодое, или зима наступила, или это нарисованное дерево — можно придумать много очень разных причин. От причины зависит выбор действия, которое поможет увидеть цветущее дерево.

Взять, например, не дерево, а танк — почему он не заводится? Или водитель плохо обучен, или механик пошутил, или диверсант слил горючее, или денег не хватает на ремонт, или генерал приказал ждать команды, или танк утонул, или еще не сошел со сборочного конвейера — причины могут быть очень разные. От причины зависит выбор действия, которое поможет завести танк.

Ближе к теме — почему иногда трудно заставить себя работать? Заглядываем в интернет, и сразу получаем решения — надо закрыть соцсети, разбить задачу на мелкие шаги и хвалить себя.

Или еще проще — проблемы нет, у вас воля слабая, отговорки ищете, возьми и сделай (just do it).

Позвольте усложнить.
Читать дальше →

Игровая агрессия, или как кооператив превращается в кровавую баню и что делать, чтобы он этого не делал

Reading time53 min
Views29K


В прошлый раз мы остановились на том феномене, что игра, которая изначально задумывалась как кооператив (например, D&D или многопользовательская песочница типа Space Station 13), почему-то может использоваться игроками совершенно по другому назначению, становясь пространством насилия и травли. Сегодня, соответственно, будем разбираться в том, как устроена детская (и не только детская) агрессия, как работает формат песочницы, что делает агрессия в песочнице (и вообще в игре) и как можно ей управлять.

Физика эмоции


В дальнейшем изложении мы будем использовать гидродинамическую модель эмоции. Представим себе, что, например, гнев – это жидкость. Чем больше накапливается гнева, тем сильнее становится напор жидкости в трубе – отдельно взятом индивидууме. На выходе есть два вентиля. Один соответствует внутреннему тормозу – представлению, например, о том, что обижать других людей дурно, некрасиво, недостойно… Второй соответствует внешнему тормозу – страху перед наказанием или какими-то другими негативными последствиями. Что будет, если давление жидкости нарастает, а вентили (хотя бы какой-то один из них) намертво закручены?
Читать дальше →

Создание архитектуры программы или как проектировать табуретку

Reading time25 min
Views709K
Взявшись за написание небольшого, но реального и растущего проекта, мы «на собственной шкуре» убедились, насколько важно то, чтобы программа не только хорошо работала, но и была хорошо организована. Не верьте, что продуманная архитектура нужна только большим проектам (просто для больших проектов «смертельность» отсутствия архитектуры очевидна). Сложность, как правило, растет гораздо быстрее размеров программы. И если не позаботиться об этом заранее, то довольно быстро наступает момент, когда ты перестаешь ее контролировать. Правильная архитектура экономит очень много сил, времени и денег. А нередко вообще определяет то, выживет ваш проект или нет. И даже если речь идет всего лишь о «построении табуретки» все равно вначале очень полезно ее спроектировать.

К моему удивлению оказалось, что на вроде бы актуальный вопрос: «Как построить хорошую/красивую архитектуру ПО?» — не так легко найти ответ. Не смотря на то, что есть много книг и статей, посвященных и шаблонам проектирования и принципам проектирования, например, принципам SOLID (кратко описаны тут, подробно и с примерами можно посмотреть тут, тут и тут) и тому, как правильно оформлять код, все равно оставалось чувство, что чего-то важного не хватает. Это было похоже на то, как если бы вам дали множество замечательных и полезных инструментов, но забыли главное — объяснить, а как же «проектировать табуретку».

Хотелось разобраться, что вообще в себя включает процесс создания архитектуры программы, какие задачи при этом решаются, какие критерии используются (чтобы правила и принципы перестали быть всего лишь догмами, а стали бы понятны их логика и назначение). Тогда будет понятнее и какие инструменты лучше использовать в том или ином случае.

Данная статья является попыткой ответить на эти вопросы хотя бы в первом приближении.
Читать дальше →

Маджонг с детьми: для чего, когда и как

Reading time18 min
Views29K


Когда мы готовим ребенка к поступлению в школу и помогаем ему адаптироваться к школе, поддерживая его интеллектуальное развитие, то одно из классических игровых средств – это обыкновенные игральные карты. Обучая ребенка карточным играм, мы можем давать нагрузку на все когнитивные функции. Зрительное восприятие понадобится, чтобы различать символы мастей (не путать пики и червы, в частности). Память – чтобы следить за тем, какие карты уже сыграны. Мышление – чтобы составлять комбинации и просчитывать выгодные ходы. Внимание – чтобы не проморгать в своей руке те карты, которые позволят эти выигрышные ходы сделать. Играя по разным правилам одной и той же колодой, мы совершенствуем произвольную регуляцию деятельности и учим гибкому, нелинейному поведению. В общем, игральные карты – это замечательная вещь. Но у них есть существенный недостаток: в нашей культуре они плотно ассоциированы с азартной игрой на деньги и воспринимаются поэтому как нечто порицаемое. Это означает, что специалист, играя в карты с ребенком, будет провоцировать реакции вида «чему вы тут его учите?» со стороны семьи, а ребенок не сможет принести игральные карты в школу, чтобы поиграть на перемене, не провоцируя аналогичных реакций со стороны педагогов. Причем понятно, что этот культурный стереотип к жизни давно уже имеет весьма опосредованное отношение, и какая-нибудь браузерная многопользовательская игра с куда большим успехом приобщит ребенка к игре на деньги, чем колода карт на перемене. Но перед нами все же встает проблема того, что ребенок может начать ощущать, будто делает что-то аморальное и неприличное. Это его либо отвратит от игры (и потеряется смысл игры как самоподдерживающейся развивающей деятельности), либо негативно скажется на самовосприятии – а у нас нет цели заставить ребенка ощущать себя хулиганом и правонарушителем.

Вариант решения этой проблемы – играть с ребенком не в карты, а в маджонг.
Читать дальше →

Игровая механика. Бродилки, представление о нуле и незанудная логопедия

Reading time11 min
Views8.8K


У каждой игры есть некоторый возрастной диапазон, в котором она интересна и обладает развивающим потенциалом. Если ребенок для какой-то игры еще слишком маленький, то он старается уклониться от нее, потому что она для него так сложна, что из приятной деятельности превращается в утомительное и обременительное учебное занятие (где он вдобавок постоянно чувствует себя неуспешным). Наоборот, если человек из игры уже вырос, то ему становится неинтересно в нее играть, потому что она слишком легкая. Как вариант, он продолжает играть, но уже в формате отдыха, потому что интеллектуального вызова игра больше не представляет.

У некоторых игр диапазон, в котором они интересны и развивают, очень большой. Например, мастерство игры в шахматы можно совершенствовать всю жизнь. У других игр он совсем маленький. Например, игры жанра «бродилка с кубиком» являются интересными и развивающими примерно с пяти до шести лет. Речь сейчас идет о тех играх, которые почти полностью сводятся к механике «бросить кубик и сделать столько шагов, какое число выпало». Это, в частности, всевозможные «змеи и лестницы».

Чтобы ребенок вообще смог поиграть в такую игру, он уже должен уметь считать от одного до шести, пусть и не очень уверенно, и опознавать эти числа на кубике. В четыре года многим детям это еще недоступно, а в пять они в основном уже могут с этим справиться.

Интересно, что одна из главных развивающих задач, которые решают бродилки, это начало формирования представления о нуле как точке отсчета.
Читать дальше →

Психология настольной игры: игра и темперамент

Reading time6 min
Views17K
В общем-то, очевидно, что разным людям нравится разное, и на игры это тоже распространяется. Одна и та же игра у некоторых детей (и взрослых) заходит, у других — нет. По крайней мере отчасти предпочтения в играх определяются темпераментом.

1. Про темперамент


Когда мы говорим о том, что человек тугодум и с трудом переключается от одной задачи к другой, или о том, что человек схватывает на лету (но зато так же быстро забывает), то мы говорим о темпераменте: в частности, о векторе «быстрый-медленный». Когда мы говорим о том, что одни люди стремятся к новым впечатлениям, а другие предпочитают привычное (и стараются дозировать общение с другими людьми), то это тоже о темпераменте — о векторе «интроверсия-экстраверсия». Одни люди все принимают близко к сердцу, другие не заморачиваются. Одни люди очень работоспособны и могут часами заниматься решением какой-то задачи, другие быстро истощаются, и им нужно на что-то переключиться. Это все о темпераменте.

В структуре психики темперамент находится на очень низком, базовом уровне. Он зависит от психофизиологических особенностей, которые, в свою очередь, определяются генетически. Это значит, что в области темперамента человек крайне непластичен. Некоторые особенности темперамента более социально одобряемы, чем другие, поэтому довольно часто, например, к детскому психологу родители приходят с запросами вида:

— У него всего один друг! Как бы сделать так, чтобы друзей было много?
— Он так долго думает и так медленно говорит, а нельзя ли как-то ускорить?
— А почему она все время беспокоится? Как сделать так, чтобы не беспокоилась?
Читать дальше →

«Группа смерти» изнутри: люди, которые играют в опасные игры

Reading time40 min
Views143K


Помните, сколько было разговоров о подростковых суицидальных группах типа «синий кит»? Широкая огласка и моральная паника способствовали тому, что на ВКонтакте и ряде других площадок такие группы научились оперативно находить и блокировать. Но чем активнее родители и педагоги вели «профилактическую работу», предупреждая об игре и выясняя, не участвуют ли в ней дети, тем больше детей узнавало, что есть такая запретная, таинственная, опасная игра. Последствия этого были вполне естественны — дальнейшее распространение игры уже не требовало участия взрослых. «Синий кит» занял особое место в подростковой культуре, где-то рядом с зацепингом и играми с перебеганием перед движущимся транспортом. Как в Мафии, здесь есть разные роли. Кто-то выбирает для себя роль игрока, кто-то — куратора, кто-то — спасателя, волонтера.

Сегодня мы попробуем увидеть происходящее глазами рядовых участников — не тех, для кого в конечном итоге все кончилось плохо, а того подавляющего большинства, которое играло, а потом продолжило жить.
Читать дальше →

Ортодонтия во взрослом возрасте: зачем вам это надо и что лучше знать до начала лечения

Reading time13 min
Views27K
image
Примерно так в конце XIX века выпрямляли зубы

В современном мире не принято умирать от кривых зубов. Максимум, что с вами случится, — станет не очень приятно широко открывать рот, вылетит челюстной сустав, вырастут амортизационные издержки на периодонт зубов, да и со стоматологом вы начнёте видеться чаще.

В принципе 99% проблем с расположением зубов сегодня можно исправить без проблем. Для этого есть опоры, создающие давление на зубы и кости, двигающие их. Брекеты несъёмные фиксируются с внешней или внутренней стороны зубов, ими можно решить много проблем, но они требуют постоянного ухода и посещения клиники раз в месяц. Альтернатива — элайнеры, прозрачные капы. Их можно снимать, чистить зубы как обычно и есть всё подряд.

В большинстве случаев ортодонтическое лечение требует от 8 месяцев до 2 лет в зависимости от сложности случая. На масштабные изменения вроде перемещения соседнего седьмого зуба на место отсутствующего шестого может уйти и 3 года. Плюс есть вероятность неуспеха, потому что нужно много считать.

Смоделировать возможную ситуацию можно на основе данных КТ, телерентгенограммы и 3D-моделирования (это после съёмки полости рта сканером). Это более-менее страхует от скрытых кист, сверхкомплектных зубов и прочих радостей, которые могут вылезти в процессе лечения.

Итак, сегодня:

  • Что умеет современная ортодонтия и сколько она стоит.
  • Как мы корректируем прикус с помощью брекетов и элайнеров.
  • Зачем используем в дополнение минивинты (импланты) и нёбные расширители.
  • Когда будет результат. И что мы делаем, чтобы его закрепить.
  • Что может пойти не так при установке брекетов или элайнеров.
Читать дальше →

Киберспорт для детей как новая улица — и как средство социализации

Reading time13 min
Views30K


Хочу рассказать про детский киберспорт, потому что это настолько крышесносная тема в плане предрассудков, что можно изучать человеческую природу. Направление киберспорта мы стартовали дважды: один раз нормально, и один раз во время карантина, раз уж освободилось время и люди вокруг вдруг начали понимать, что из игр можно и нужно тащить пользу.

И если футбол или шахматы родители считают однозначно полезными, то с играми ситуация неоднозначная. Руководитель направления Настя начала с интервью. Вообще, Настя умеет общаться с родителями, потому что некогда запустила подписку на наборы развивающих штук «Аистбокс» (каждый месяц приезжает коробка для ребёнка).

Дальше пошёл мягкий психодел. Родители же рассказывали как дети загружены, какое у них сумасшедшее расписание.

Как мне кажется, родитель хочет воспитать нового себя, только лучше. И каждый час простоя ребёнка воспринимает как недополученные знания и навыки. Ну, знаете, пока вы спите, враг качается. Так вот, в среднем у детей опрошенных есть около часа (суммарно) свободного времени в день. Этот час ребёнок проводит в телефоне, то есть отдыхает. Родители — как это ни странно — хотят, чтобы он этот час потратил на английский, бил других детей на секции бокса или ещё как-то утилизировал.

В этот момент уже стало понятно, что если мы превратим компьютерные игры в нечто полезное, то за это будут платить. Забегая вперёд, могу ещё добавить, что это сейчас один из самых эффективных способов социализации, что ускорило прогресс.

А пока давайте чуточку похоливарим!
Читать дальше →

Information

Rating
Does not participate
Date of birth
Registered
Activity

Specialization

Software Developer
Senior
Unity3d
C#