Как стать автором
Обновить
-1
0

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

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

Распознавание лиц на RASPBERRY PI

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

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

С каждым годом расширяется область применения таких систем. Например, пользователи могут приобрести у Google систему Nest — Nest Cam IQ Indoor, стоимостью 349 долларов с интеграцией в умный дом и возможностью распознавания лиц по подписке (за 10 долларов в месяц). И отечественных аналогов для частного пользования немало. Различные СКУД (системы контроля и управления доступом) от Ростелекома, HikVision, VisionLabs и других фирм. Описание зачастую мутное, опыт работы в реальных условиях можно найти на YouTube по запросу «Умный домофон не пускает мужчину домой».

Читать далее
Всего голосов 6: ↑4 и ↓2+3
Комментарии11

Почему я начал использовать аннотации типов в Python – и вам тоже советую

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

С появлением подсказок типов (type hints) в Python 3.5+ добавилась опциональная статическая типизация – поэтому эти подсказки так мне нравятся. Теперь я аннотирую ими все мои проекты.

Читать далее
Всего голосов 29: ↑28 и ↓1+32
Комментарии25

Как незаметно стать антиваксером (возможно, это про вас) — ликбез для взрослых

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


Как показала недавняя практика, в вакцинах в России разбираются в среднем никак.

Во-первых, их надо обновлять. Если вы не обновляли «детские» прививки, поздравляю, вы пассивный антиваксер и потенциально представляете опасность для общества.

Во-вторых, просто знать, какие вакцины делать и когда, какие они бывают и что можно «добрать» для защиты организма, если этого не делали вам в детстве.

В-третьих, я что-то не вижу всплеска вакцинации от пневмококков, хотя они прямо ассоциированы с COVID (то есть могут настигнуть больного после вируса). В первый год, до появления вакцины от COVID-19, логично было ждать резкого скачка вакцинации от них, но нет.

Давайте проговорим ещё раз, от каких болезней можно и нужно привиться взрослым, когда и как.
Читать дальше →
Всего голосов 119: ↑96 и ↓23+96
Комментарии175

Статический анализ и уже выросший проект: внедрять нельзя откладывать

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

Зачем нужен статический анализ кода, кажется, никому объяснять сегодня уже не нужно. Но одно дело — поддерживать код «чистым» с первого коммита, и совсем другое — встраивать новый инструмент в проект, который за несколько лет успел разрастись и пережить несколько итераций глобального рефакторинга. Мы работаем с большим количеством плохо документированных источников данных, а статический анализ кода помогает учитывать самые разные граничные случаи.

И ещё один момент: Rusprofile почти целиком написан на PHP, языке со слабой динамической типизацией. Статический анализ кода на PHP уже несколько лет набирает популярность, сказывается здесь и движение самого языка в сторону более строгой типизации. Но мы опасались, что без предварительной подготовки кода пользы от него мало. Аннотировать типами весь код в реальных бизнес-условиях тоже нереально. Сильно медлить с внедрением в рабочий процесс тоже нельзя: чем дальше, тем сложнее что-то кардинально улучшать. Поэтому нужно было оперативно запускаться, чем-то пожертвовав.

Что нам пришлось преодолеть?
Всего голосов 32: ↑32 и ↓0+32
Комментарии9

Кибербезопасность для самых маленьких

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

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

Цель статьи - поделиться практиками, которые я применил для защиты данных при поднятии собственного VPS в публичной сети. Всегда, когда твой IP открыт всему Миру напоказ и доступен извне внутренних контуров сети - это означает, что любой прохожий может устроить тебе неприятности: похитить твои данные, завладеть твоим сервером и сломать твое замечательное приложение. Я буду приводить пример атаки, показывать, как ее можно заметить и после этого будем разбирать возможные способы защиты.

Защитить данные!
Всего голосов 22: ↑22 и ↓0+22
Комментарии32

G-Unity architecture

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

В этой статье я бы хотел поговорить об архитектурном решении для Unity - GUA и объяснить логику работы. Если мы перейдём по ссылке нас встречает великолепное readme, где описаны правила работы с данным решением, но я бы хотел разобрать их подробнее с примерами. Пусть это будет бесплатной рекламой для автора.

Читать далее
Всего голосов 6: ↑3 и ↓3+2
Комментарии4

Как за день потерять 30% онлайна и за два месяца сделать батлрояль

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

Однажды в своем PvP-шутере мы за один день потеряли 30% от 60 тысяч одновременного онлайна. Это был 2018-й, в тот день на iOS вышел Fortnite. И хотя хайп был уже около года, а PUBG регулярно бил рекорды, без королевской битвы нам жилось вполне спокойно. Но тут стало очевидно, что батлрояль нельзя игнорировать, игрокам он нравится и нужно разрабатывать свой.

За два месяца мы проделали много интересной и сложной работы. Например, сделали свой редактор террейна, чтобы отрисовывать ландшафт не в 500 тысяч треугольников, как это делал Unity Terrain, а всего в 30 тысяч. Или написали мешбейкер, сократив количество запросов на отрисовку с 800 до 100, а освещение научились запекать за 5 минут вместо 30 часов. 

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

Читать далее
Всего голосов 66: ↑66 и ↓0+66
Комментарии20

Лучший способ начать изучать современную генетику, молекулярную биологию, генную инженерию и геномику

Время на прочтение5 мин
Количество просмотров43K
Если вы когда-либо хотели разобраться в фундаментальных основах современных биотехнологий, генной инженерии, биоинформатики и молекулярной биологии, детально понимать, что творится на передних рубежах этой удивительной и революционной в настоящий момент науки, быть сознательным свидетелем тех потрясающих научных открытий, современниками которых мы являемся, но не знали с чего начать — этот пост должен быть вам интересен.

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

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


Читать дальше →
Всего голосов 51: ↑50 и ↓1+49
Комментарии48

Если вы не чистите зубы, то я их вам почищу: FAQ про гигиену

Время на прочтение12 мин
Количество просмотров122K
image

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

Про чистку зубов есть очень много вопросов, поэтому пробежимся по основным:

  • Что будет, если не чистить зубы?
  • Можно ли чистить зубы редко, но ходить к стоматологу время от времени, чтобы он их вам «мощно почистил»?
  • Как проходит чистка зубов в стоматологии?
  • Почему швейцарцы чистят зубы вообще без пасты?
  • Работает ли жвачка?
  • Какие щётки выбирать и как? Что насчёт электрических?
  • Правда ли, что щётку надо выкидывать, когда хотя бы одна ворсинка отклоняется от вертикали?
  • Зачем нужны скребки для языка, межзубные ёршики, зубная нить и всё остальное?
  • Ирригатор заменяет чистку зубов щёткой?
  • Ополаскиватель для рта — хорошая тема?
  • Когда важнее чистить зубы — утром или вечером?
  • Чем ИТ-специалист отличается от среднего пациента по анамнезу относительно гигиены ротовой полости?
Читать дальше →
Всего голосов 124: ↑118 и ↓6+153
Комментарии209

Ультимативный список инструментов для разработчиков и опытных пользователей для Windows

Время на прочтение6 мин
Количество просмотров73K
Можете ли вы поверить, что с момента моего последнего списка инструментов прошло 6 лет? Инструменты изменились, многие из них доступны онлайн, но, честно говоря, для составления нового списка инструментов требуется ОЧЕНЬ МНОГО РАБОТЫ. Но я смог, вот список на 2020-2021 годы. Это инструменты в моей папке Utils. Я создал папку d:\dropbox\utils и добавил ее в свой PATH. Таким образом, он будет на всех моих компьютерах, и я могу мгновенно добраться до любого из них.

Это обновленный до версии 2020-21 мой список 2003, 2005, 2006, 2007, 2009, 2011 и 2014 годов, который в настоящее время включает все остальные мои списки. Я занимаюсь этим более 17 лет. Вау. Думаю, стоит тратить на это больше времени.

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

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

Эту статью написал наш коллега Скотт. Вот версия на английском. Ну а сам список под катом.

Читать дальше →
Всего голосов 50: ↑43 и ↓7+49
Комментарии164

Как разработчикам проходить валютный контроль: пошаговая инструкция

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

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

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

Читать далее
Всего голосов 31: ↑31 и ↓0+31
Комментарии27

Писатели про… Писатели про… Писатели прод, или Как в России вымерли и возродились фантасты

Время на прочтение8 мин
Количество просмотров34K
В Хеллоуин положено говорить о страшном, поэтому сегодняшний наш блог – о современной российской фантастике.

Профессиональные писатели-фантасты, как известно, вымерли в России где-то во второй половине 2011 года, когда в издательствах все начало сыпаться к чертям собачьим. Продажи «художки» тогда резко просели, причем практически по всем позициям, за исключением детской литературы. Издатели схватились сначала за голову, потом за карман, и, неоптимистично позвенев мелочью, обратились к народу.

Большинству издаваемых ими авторов они сказали примерно то же самое, что заявил один вредный дед своему популярному впоследствии внучку: «Ну, Лексей, ты — не медаль, на шее у меня — не место тебе, а иди-ка ты в люди…».

И те пошли. В люди, или еще куда – история умалчивает. Но именно 2012 год выкосил весь подлесок профессиональных писателей от второго эшелона и ниже. Гонорары упали настолько, что «жить с пера» могли себе позволить только звезды первой величины.

Русская фантастика, безусловно, не умерла – ее и дустом вывести непросто, — но писательство перестало быть профессией, став чистой воды хобби.

image

Однако не прошло и пяти лет, как вымершая было популяция была восстановлена: фантасты-профессионалы воскресли в лучших традициях фениксов и ренессансов. Воскресило их магическое слово «прода».
Читать дальше →
Всего голосов 100: ↑83 и ↓17+66
Комментарии500

Во время пандемии стали популярны вечеринки в SpatialChat — и они вряд ли закончатся после ковида

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

Я абсолютный домосед, социофоб и ненавистник компанейских вечеринок. Тот же я сейчас бы бросил все и ворвался в самую огромную шумную толпу, какую бы смог найти. Ценить вещи по-настоящему начинаешь, только когда их лишаешься. Странный год, очень странный.

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

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

Алмас Абулхаиров, один из создателей сервиса, рассказал мне, как он появился, почему стал популярен, и куда будет двигаться, когда пандемия пройдет.

Читать дальше →
Всего голосов 13: ↑10 и ↓3+18
Комментарии7

CSS Grid: Верстаем адаптивный журнальный макет в 20 строк

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

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

Самая простая часть задачи — получение списка постов и их эксцерптов (эксцерпт — вступительный текст до ката) с наших любимых RSS–фидов. Для этого мы воспользовались WordPress-плагином Feedzy lite, который умеет агрегировать несколько фидов в один список, отсортированный по времени — идеальное решение в нашем случае. Трудная же часть в том, чтобы сделать всё красиво.
Читать дальше →
Всего голосов 29: ↑28 и ↓1+47
Комментарии10

Дизайн низкополигональных персонажей

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

Персонаж — это личность. Без истории нет индивидуальности. Каждый хороший персонаж начинается с истории, а дизайн персонажа должен рассказать эту историю.

В своей предыдущей статье How To Make Low Poly Look Good я говорил, что главная цель низкополигонального (low poly) дизайна — донести сообщение через наименьшее количество форм.

Это особенно справедливо, когда вы создаёте низкополигонального персонажа. Нужно рассказать историю, использовав как можно меньше форм.

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



Я буду работать в Blender. В Maya, Max и других 3D-редакторах есть похожие инструменты, так что не беспокойтесь об этом.
Читать дальше →
Всего голосов 56: ↑56 и ↓0+56
Комментарии14

Создание персонажей в Blender и Unity

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

Визуально персонажи 3D-игр имитируются с помощью использования моделей, текстур и анимаций.

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

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

Возможность многократного применения анимаций позволяет использовать анимации из Asset store и с таких вебсайтов, как mixamo.com, для ваших собственных персонажей. Это экономит кучу времени!

В этом туториале вы узнаете, как подготовить гуманоидную модель в Blender и как перенести её в Unity. В частности, вы научитесь следующему:

  • Создавать арматуру (скелет) персонажа и выполнять её риггинг (привязку скелета к мешу)
  • Модифицировать персонаж добавлением аксессуаров и объектов
  • Экспортировать модель в FBX
  • Импортировать модели Blender
  • Создавать и настраивать гуманоидный аватар
  • Прикреплять к персонажу объекты
  • Анимировать гуманоида в Unity
Читать дальше →
Всего голосов 42: ↑41 и ↓1+40
Комментарии8

Пиксельные отступы в текстурной развертке

Время на прочтение7 мин
Количество просмотров9.4K
Представляем четвертую статью нашего цикла о работе с 3D-моделями в Unity. Предшествующие статьи: «Особенности работы с Mesh в Unity», «Unity: процедурное редактирование Mesh», «Импорт 3D-моделей в Unity и подводные камни».

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

Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии0

Импорт 3D-моделей в Unity и подводные камни

Время на прочтение7 мин
Количество просмотров34K
Представляем третью статью нашего цикла о работе с 3D-моделями в Unity. Предшествующие статьи: «Особенности работы с Mesh в Unity» и «Unity: процедурное редактирование Mesh».

В мире компьютерной графики существует множество форматов представления 3D-моделей. Некоторые из них позиционируются как универсальные, другие — как оптимизированные под конкретные задачи или платформы. В любой сфере мечтают работать с универсальным форматом, но реальность говорит нам «нет». Более того, из-за такого зоопарка получается порочный круг: разработчики «универсальных» инструментов придумывают свои внутренние форматы для обобщения предыдущих, увеличивая популяцию и плодя средства преобразования форматов. Так появляется проблема потери или искажения данных при конвертации. Проблема стара как мир (мир IT, конечно), и она не обошла стороной импорт моделей в Unity.

В этой статье мы расскажем о некоторых трудностях, с которыми приходится сталкиваться при работе с моделями в Unity (особенности функционирования ModelImporter, разница представлений 3D-объектов и др.), а также о том, какие инструменты мы создали, чтобы эти трудности преодолеть.

Читать дальше →
Всего голосов 8: ↑7 и ↓1+6
Комментарии3

Unity: процедурное редактирование Mesh

Время на прочтение16 мин
Количество просмотров14K
Преобразование моделей «на лету» — нередкая практика в симуляции физики деформаций, а также в играх с динамически генерируемым и изменяемым контентом. В таких случаях удобно применять методы процедурного редактирования и создания геометрии. Последние часто позволяют сэкономить заветные байты при передаче подгружаемых из сети данных. Кроме того — это весело!

Статья направлена на прокачку навыков процедурной обработки мешей в Unity. Мы расскажем об операциях преобразования и генерации частей меша.

Читать дальше →
Всего голосов 24: ↑21 и ↓3+18
Комментарии9

Как использовать прерывания в Unity Animator на полную

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


Вау-эффекта в играх можно достигнуть не только неожиданными механиками или плоттвистом, но и анимацией — в мобильных проектах на последнем часто делается особый акцент. Поэтому решил поделиться интересным переводом материала по Unity Animator. Внутри — про приоритетность переходов анимации и грамотное переключение между состояниями.
Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии6

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность