Как стать автором
Обновить
20
0
Дмитрий Шестеркин @NightWind

Пользователь

Отправить сообщение

Так какой же процессор использовался в играх Brick Game?

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 29K

На это небольшое исследование меня натолкнула опубликованная недавно на Хабре статья, в которой автор предположил, что в знаменитых "Тетрисах" из 90-х мог использоваться 4-битный микроконтроллер Holtek HT1130. Меня сильно удивило (и мотивировало), что, по всей видимости, до сих пор не снят образ ПЗУ и, соответственно, не написан эмулятор для этой линейки игр.

Заглянем под черную каплю компаунда
Всего голосов 314: ↑314 и ↓0 +314
Комментарии 133

Что же не так с любыми электронными голосованиями?

Время на прочтение 7 мин
Количество просмотров 44K

Данная публикация написана по мотивам поста «Что же не так с ДЭГ в Москве?». Его автор описывает, как можно выгрузить и расшифровать данные по электронному голосованию, а также приводит целый список замечаний к его текущей системе.

Статья хорошая, её выводы и замечания я полностью поддерживаю, но мне захотелось дополнить её в обеих частях. Первая — с анализом того, как в процессе голосования менялись отданные за различных кандидатов голоса (и обнаруженные в этом аномалии); вторая — моя позиция о фундаментальных недостатках любого электронного голосования, которые неустранимы на практике (особенно в современной России).

UPD: Добавил также графики по партийным спискам + отметил некоторые странности в соотношении выданных/полученных транзакций в самом начале (возможно, это объяснимо техническими проблемами).

Читать далее
Всего голосов 197: ↑190 и ↓7 +183
Комментарии 422

Коронавирус: как мы себя обманываем

Время на прочтение 11 мин
Количество просмотров 692K
Я прекрасно понимаю, что степень истерии на фоне коронавируса привела общество к конфликту между последователями и отрицателями всеобщей паники. Достаточно острая групповая поляризации не вызывала особого желания излагать свою точку зрения на широкую публику. Но когда меня всюду начали преследовать конспирологические теории и бездумные толкования данных, то я понял, что утешающих аргументов очень мало и решил восполнить их дефицит.

Искажение смертности


Уверен для многих станет откровением факт того, что количество смертей при наличии коронавируса, зафиксированных в ВОЗ, не является числом смертей от коронавируса.

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

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

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

Именно поэтому ВОЗ чёрным по белому пишет
Определение истинной смертности от COVID-19 требует дополнительного времени. Сегодняшние данные свидетельствуют о том, что общий коэффициент смертности составляет 3–4%, при этом уровень смертности от инфекции будет ниже.
Читать дальше →
Всего голосов 526: ↑336 и ↓190 +146
Комментарии 1049

Ищем и скачиваем непопулярные и старые файлы в интернете

Время на прочтение 14 мин
Количество просмотров 202K
Преимущественно медиафайлы. На полном серьезе, без шуток.

Введение

Бывает, случается так, что вы хотите скачать альбом 2007 года исполнителя, который кроме вас известен 3.5 людям, какой-нибудь испанский ска-панк или малопопулярный спидкор европейского происхождения. Находите BitTorrent-раздачу, ставите на закачку, быстро скачиваете 14.7%, и… все. Проходит день, неделя, месяц, а процент скачанного не увеличивается. Вы ищете этот альбом в поисковике, натыкаетесь на форумы, показывающие ссылки только после регистрации и 5 написанных сообщений, регистрируетесь, флудите в мертвых темах, вам открываются ссылки на файлообменники вроде rapidshare и megaupload, которые уже сто лет как умерли.

Попытка скачать хотя бы один файл
Увы, частая ситуация в попытке хоть что-то скачать

Такое случается. В последнее время, к сожалению, случается чаще: правообладатели и правоохранительные органы всерьез взялись за файлообмен; в прошлом году закрылись или были закрыты KickassTorrents, BlackCat Games, what.cd, btdigg, torrentz.eu, EX.ua, fs.to, torrents.net.ua, и еще куча других сайтов. И если поиск свежих рипов фильмов, сериалов, музыки, мультиков все еще не представляет большой проблемы, несмотря на многократно участившееся удаления со стороны правообладателей контента из поисковых систем, торрент-трекеров и файлообменников, то поиск и скачивание оригинала (DVD или Blu-Ray) фильмов и сериалов или просто ТВ-рипов 7-летней давности на не-английском и не-русском языке — не такая уж простая задача.
Читать дальше →
Всего голосов 215: ↑213 и ↓2 +211
Комментарии 74

Мультиплеер в быстрых играх (части I, II)

Время на прочтение 7 мин
Количество просмотров 140K


  1. Части I, II (синглплеер с авторитарным сервером)
  2. Часть III (Появление врага)
  3. Часть IV (Хэдшот!)


Предлагаю вашему вниманию перевод статьи Fast-Paced Multiplayer (Part I): Introduction.

Разработка игры — само по себе непростое занятие. Но мультиплеерные игры создают совершенно новые проблемы, требующие разрешения. Забавно, что у наших проблем всего две причины: человеческая натура и законы физики. Законы физики привнесут проблемы из области теории относительности, а человеческая натура не даст нам доверять сообщениям с клиента.
Читать дальше →
Всего голосов 136: ↑132 и ↓4 +128
Комментарии 109

Должны ли все научные работы быть в открытом доступе?

Время на прочтение 5 мин
Количество просмотров 22K
Как и Эдвард Сноуден, аспирантка из Казахстана по имени Александра Элбакян сейчас скрывается, вероятно, где-то на территории России после того как незаконно выложила в интернет миллионы документов. Она не раскрыла государственных тайн, но заняла позицию по защите права общества на получение информации, предоставив свободный доступ почти ко всем когда-либо опубликованным научным статьям, от акустики до зимологии.

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

«В реальности, только учёные из самых больших, хорошо финансируемых университетов в развитых странах имеют полный доступ к опубликованным исследованиям, — говорит Майкл Айзен (Michael Eisen), профессор генетики и геномики Калифорнийского университета в Беркли, сооснователь PLOS, давно продвигающий идею открытого доступа. — Нынешняя система тормозит науку, затрудняя рабочие коммуникации, ограничивая количество людей, имеющих доступ к информации, и подавляя возможности для анализа данных». Такой анализ возможен, когда статьи не «сидят в разрозненных базах».
Читать дальше →
Всего голосов 47: ↑43 и ↓4 +39
Комментарии 156

Колумбия и Южная Америка глазами инженера

Время на прочтение 24 мин
Количество просмотров 41K
Много народу в последнее время ищет работу за границей, наивно полагая, что там им дадут больше. Многие ищут счастье в Южной Америке. По крайней мере мне часто пишут в личку такие вопросы. В итоге родился этот сумбурный пост, призванный приоткрыть завесу тайны над родиной Инков и не угасающих социалистических революций в ключе трудовой эмиграции для людей инженерных специальностей.


Площадь Че в национальном университете UNAL, первое мая.
Читать дальше →
Всего голосов 73: ↑71 и ↓2 +69
Комментарии 36

Интернет-омбудсмен Дмитрий Мариничев: «Если вы хотите навредить стране, то вы должны вкладываться в создание IT-специалистов»

Время на прочтение 1 мин
Количество просмотров 50K
Дмитрий Мариничев«Я в принципе неоднократно спорил и в Министерстве Связи относительно их идеи о подготовке IT-специалистов. Я честно открыто там, и честно открыто здесь говорю: если вы хотите навредить стране, то вы должны вкладываться в создание IT-специалистов на территории Российской Федерации. Потому что большего вреда произвести невозможно» — заявил Мариничев, выступая на слушаниях «Технологическое развитие России и доступ к внешнему рынку технологий», которые проходили вчера в Общественной палате РФ.
Читать дальше →
Всего голосов 80: ↑73 и ↓7 +66
Комментарии 328

Пишем настоящий шум Перлина

Время на прочтение 7 мин
Количество просмотров 68K
По поисковому запросу шум перлина сразу попадается этот перевод на Хабре. Как справедливо заметили в комментариях к публикации, речь идёт вовсе не о шуме Перлина. Возможно, автор перевода и сам был не в курсе.

Чем выгодно отличается шум Перлина, легко можно заметить, если сравнить картинки.

Обычный шум (из той самой статьи):
image

Шум Перлина:
image

И увеличением количества октав первую картинку ко второй никак не приблизишь. Я не буду описывать достоинства шума Перлина и область его применения (потому что статья о программировании, а не о применении), а постараюсь объяснить как он реализован. Думаю, это будет полезно многим программистам, ведь хакерские исходники Кена Перлина мало объясняют даже при наличии комментариев.
Читать дальше →
Всего голосов 33: ↑33 и ↓0 +33
Комментарии 18

Внезапный диван леопардовой расцветки

Время на прочтение 8 мин
Количество просмотров 83K
Если вы интересуетесь искусственным интеллектом и прочим распознаванием, то наверняка уже видели эту картинку:


А если не видели, то это результаты Хинтона и Крижевского по классификации ImageNet-2010 глубокой сверточной сетью

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

Это вообще довольно любопытный результат, если задуматься. Потому что… скажем, вы знаете, как отличить одного большого пятнистого котика от другого большого пятнистого котика? Я, например, нет. Наверняка есть какие-то зоологические, достаточно тонкие различия, типа общей стройности/массивности и пропорций тела, но мы же все-таки говорим о компьютерном алгоритме, которые до сих пор допускают какие-то вот такие достаточно глупые с человеческой точки зрения ошибки. Как он это делает, черт возьми? Может, тут что-то связанное с контекстом и фоном (леопарда вероятнее обнаружить на дереве или в кустах, а гепарда в саванне)? В общем, когда я впервые задумался над конкретно этим результатом, мне показалось, что это очень круто и мощно, разумные машины где-то за углом и поджидают нас, да здравствует deep learning и все такое.

Так вот, на самом деле все совершенно не так.
под катом пятна
Всего голосов 148: ↑145 и ↓3 +142
Комментарии 141

Signed Distance Field или как сделать из растра вектор

Время на прочтение 12 мин
Количество просмотров 59K
Речь сегодня пойдёт о генерации изображений с картой расстояний (Signed Distance Field). Данный вид изображений примечателен тем, что фактически позволяет получить «векторную» графику на видеоускорителе, причём даром. Одной из первых данный метод растеризации предложила компания Valve в игре Team Fortress 2 для масштабируемых декалей в 2007 году, но до сих пор он не пользуется особой популярностью, хотя позволяет рендерить прекрасного качества шрифты, используя текстуру всего 256х256 точек. Данный метод прекрасно подходит для современных экранов высокой чёткости и позволяет серьёзно сэкономить на текстурах в играх, он не требователен к железу и прекрасно работает на смартфонах.



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

Как же создавать такие изображения? Очень просто, ImageMagick позволяет сделать это одной командой:

convert in.png -filter Jinc -resize 400% -threshold 30% \( +clone -negate -morphology Distance Euclidean -level 50%,-50% \) -morphology Distance Euclidean -compose Plus -composite -level 45%,55% -resize 25% out.png

На этом можно было бы поставить точку, но так полноценного топика не получится. Что ж, под катом — описание быстрого алгоритма расчёта SDF, пример на C++ и немного шейдеров для OpenGL.
Читать дальше →
Всего голосов 115: ↑113 и ↓2 +111
Комментарии 61

Победы в конкурсах программирования негативно коррелируют с успехами в работе

Время на прочтение 1 мин
Количество просмотров 28K
Если вы хотите построить успешную карьеру в сфере разработки ПО, ни в коем случае не увлекайтесь спортивным программированием и участием в конкурсах.

Такой вывод следует из беспристрастной статистики и дата-майнинга рабочих показателей сотрудников Google, рассказал Питер Норвиг в лекции, прочитанной 26 марта 2015 года в Венском техническом университете.


Читать дальше →
Всего голосов 93: ↑87 и ↓6 +81
Комментарии 85

Вы неправильно пишете животных

Время на прочтение 5 мин
Количество просмотров 357K
Животные – это платформы с очень ограниченной памятью, вычислительными способностями и возможностями модификаций. Разработчикам энимал-сцены приходится выдавать практически гениальные низкоуровневые алгоритмы. Правда, большое количество хардкода вызывает характерные проблемы с отсутствием проверки в экзотических условиях. Та же фильтрация входных данных делается очень и очень криво.


Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти

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

Но пойдём далее. Я не знаю, кто разрабатывал архитектуру ящериц, но они бегают в одном процессе, а дышат в другом. При этом платформа не поддерживает многозадачность, поэтому костыль с максимальной длиной бега в 4-6 секунд просто эпичен.
Читать дальше →
Всего голосов 442: ↑438 и ↓4 +434
Комментарии 350

Как происходит рендеринг кадра видеоигры

Время на прочтение 5 мин
Количество просмотров 65K
Deus Ex Human Revolution — это компьютерная игра 2011 года, которая является более успешным продолжением оригинальной Deus Ex, чем Invisible War. Но этот пост не о качестве игры, а о демонстрации её технических принципов. Адриан Курреж провёл несколько часов за реверс-инжинирингом, пытаясь понять с помощью инструмента Renderdoc, как происходит обработка каждого из кадров Human Revolution. Затем Адриан изложил результаты в своём блоге.
Осторожно, трафик
Всего голосов 101: ↑98 и ↓3 +95
Комментарии 8

Ушел из жизни еще один талантливый российский ученый

Время на прочтение 3 мин
Количество просмотров 47K
image27 февраля 2015 в 23:31 в Москве на Васильевском спуске трагически ушел из жизни Борис Ефимович Немцов — один из известных российских ученых-физиков.

Краткая биография


Учился в Горьком, школу окончил с золотой медалью, университет с отличием. В 1976 году поступил на радиофизический факультет Горьковского государственного университета им. Н. И. Лобачевского. Двоюродный брат Немцова, сын Вилена Эйдмана — Игорь Эйдман — также учился в Горьковском университете. В 1997 году переехал в Москву.
Затем работал в научно-исследовательских институтах. Занимался проблемами физики плазмы, акустики и гидродинамики. В 1985 году, работая в НИРФИ вместе со своим дядей по матери, доктором физико-математических наук Виленом Яковлевичем Эйдманом, был соавтором В. В. Курина в статье «Предвестник и боковые волны при отражении импульсов от границы раздела двух сред». В 1985 году защитил диссертацию и получил степень кандидата физико-математических наук (тема: «Когерентные эффекты взаимодействия движущихся источников с излучением»). Автор более 60 научных работ по квантовой физике, термодинамике, акустике… Среди изобретений Немцова — акустический лазер (перегретый пар сильно охлаждается, возникает мощный инфразвук) и некоторые параметры антенны для космического корабля (при вхождении корабля в земную атмосферу из-за её нагревания связь с кораблём теряется — изобретение Немцова снимало помехи связи). Подрабатывал репетитором по физике, математике и английскому языку.

Академик В. Л. Гинзбург говорил о нём в 1997 году :
Он учился на кафедре распространения радиоволн, организованной мной на радиофаке, был аспирантом двух моих аспирантов: Эйдмана, своего дяди, и Денисова. Он по-настоящему талантливый физик, у него много хороших работ.


Внимание, это топик об ученом, лазерах и когерентности, но не о политике.
Читать дальше →
Всего голосов 273: ↑191 и ↓82 +109
Комментарии 100

Поиск взаимосвязей на примере Нефть-Рубль

Время на прочтение 2 мин
Количество просмотров 136K
Одна из базовых задач анализа данных — поиск взаимосвязи двух величин. Здесь я хочу показать пример поиска связи между ценой нефти и курсом рубля.

image

Во-первых надо определить, имеет ли вообще задача смысл. Почему нефть и рубль должны/могут быть взаимосвязаны? Вкратце, модель такая: экспортёры продают нефть за доллары, а затем продают доллары, чтобы получить рубли для расчётов внутри страны. Механизм крайне упрощён, надо учитывать объёмы добычи-продажи, что эскортируют не только нефть, не всегда экспортёры продают доллары, на курс валют влияет ЦБ интервенциями и т.д. И тем не менее, будем считать, что модель более-менее рабочая, то есть, что существуют фундаментальные причины для взаимосвязи цены нефти и курса рубля.
Читать дальше →
Всего голосов 90: ↑80 и ↓10 +70
Комментарии 87

Именованные параметры C++. Не пригодились

Время на прочтение 5 мин
Количество просмотров 30K
Время от времени вдруг начинает хотеться именованных параметров в C++. Не так давно была статья, да и сам какое-то время назад писал на эту тему. И вот что удивительно — со времен той своей статьи я участвую в новом проекте без необходимости тащить за собой старый код, и как-то удивительным образом всего этого описанного собой же не использую. Т.е. в вопросе разобрался, восхитился перспективами… и продолжил работать по-старинке! Как же так? Лень? Инерция? Ответ постараюсь дать под катом.
Читать дальше →
Всего голосов 76: ↑64 и ↓12 +52
Комментарии 86

Математика аукционов. Лекция в Яндексе

Время на прочтение 7 мин
Количество просмотров 43K
Аукционы используются для торгов практически любых товаров — рыбы и цветов, лицензий на 3G-cвязь, государственных ценных бумаг, акций частных компаний, рекламных объявлений на Яндексе. Базовые правила некоторых аукционов остаются неизменными на протяжении столетий. При этом аукционы — динамично развивающаяся область современной экономической теории. Это в первую очередь вызвано их практической важностью, а также наличием данных и возможностью формально проанализировать аукционы как игры, чьи правила совпадают с практикой. За исследование аукционов и в целом экономических механизмов было присуждено несколько Нобелевских премий.



В рамках Малой Школы анализа данных лекцию, посвященную аукционам, прочитал Сергей Измалков — профессор экономики Российской экономической школы, председатель ученого совета РЭШ. Именно аукционы стали темой его докторской диссертации. В лекции Сергей Борисович рассказывает о том, чем похожи торговля жёнами в Вавилоне и размещение рекламных объявлений в интернете. Под катом вы найдете текстовую версию лекции, но мы бы рекомендовали вам все же посмотреть видеозапись — лектор рассказывает обо всем достаточно доступно и очень увлекательно.
Читать дальше →
Всего голосов 43: ↑37 и ↓6 +31
Комментарии 6

Сводная таблица по поддержке C++ 11/14/17

Время на прочтение 5 мин
Количество просмотров 65K
Как любому C++ разработчику, следящему за новинками в отрасли и стандартами в частности, мне стало интересно, насколько полно вообще поддерживается стандарт C++ 11 (а также 1y и 1z) разными компиляторами? Да, существуют разные сводные таблицы, но чаще всего это сравнение двух компиляторов или двух версий одного компилятора, либо сводная таблица, но уже устаревшая, либо вообще неполный список. В общем, сел я да и сделал полную таблицу (на основе списка Clang-a и GCC) по четырем компиляторам: Clang, GNU C++, MSVC и Intel C++.
Таблица под катом
Всего голосов 73: ↑71 и ↓2 +69
Комментарии 46

Изначально ущербная система подготовки к переговорам

Время на прочтение 6 мин
Количество просмотров 117K


Проблема в том, что в любом традиционном обучении переговорам предполагается, что стороны должны в итоге договориться.

Когда я учился в Кейптауне, этот баг в сознании моих коллег вскрылся почти сразу. Даже ушлые арабы, подготовленные торговаться, резко сдавали назад, когда понимали, что результата может и не быть вообще. Европейцев же это выносило просто наповал.

Давайте ещё раз. Бывают хорошие условия, бывают нормальные, бывают плохие. Одни можно превратить в другие. Но если вы понимаете, что из плохих условий не сделать нормальные, то единственный логичный выход – остановить переговоры как можно быстрее. Вам не нужны компромиссы, странные пути решения и долгие разговоры. Вам нужно встать и уйти.
Читать дальше →
Всего голосов 187: ↑179 и ↓8 +171
Комментарии 146

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность