Архив за 26 декабря 2016 - 4

Использование Service Worker для создания ботнета - 1

Если кратко: в этом посте мы рассмотрим один из множества способов запуска бесконечного выполнения кода Javascript в браузере с помощью Service Worker, а еще немного покритикуем саму технологию.
Читать полностью »

Однажды мне пришлось вычислять сумму векторов целых чисел.

Звучит необычно. Кому понадобится делать это в реальной жизни? Обычно такие вычисления встречаются только в задачках из начальной школы или бенчмарках компилятора. Но сейчас это случилось на самом деле.

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

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

Читать полностью »

Разбор: как и зачем применять PureComponent в React - 1
29 Июля вышел React 15.3, и первым пунктом в release-notes значилось добавление поддержки React.PureComponent, который заменяет своего предшественника pure-render-mixin. В этой статье обсудим, почему же этот компонент так важен и где его использовать.
Читать полностью »

image

Я много играл в Tom Clancy's The Division. Друзья не поспевали за моим ритмом, поэтому долгие часы я провёл, бродя в одиночку по Тёмной Зоне. Опыт был довольно болезненным: группы игроков не колеблясь убьют вас, а одиночных игроков поощряют к этому, как только вы отвернётесь. Чем дольше я играл, тем сильнее развивалась привычка оставаться как можно более невидимым для других игроков. Я осознал, что эта привычка появилась благодаря курсу альпийских стрелков, пройденному во время службы в французской армии.

Разумеется, я не могу раскрывать некоторые аспекты тактики отрядов и общей стратегии, потому что иначе я нарушу соглашение о неразглашении информации. Однако техники камуфляжа хорошо известны во всём мире, и о них рассказывают даже самые специализированные веб-сайты. Я хочу поделиться этими знаниями и вкратце оценить уровень их использования в видеоиграх для создания стелс-геймплея или наоборот, намеренное игнорирование для обеспечения лучшей обратной связи в играх любого жанра.
Читать полностью »

Привет всем! Каждую зиму в русских (да и не только) городах появляется зловредный гололед. Множество людей подскальзывается и травмирует различные части тела. Скажете, эта проблема должна решаться коммунальщиками — да, так и есть, но они очень часто не доглядывают за состоянием тротуаров и дворовых тропинок, а может быть и просто не знают, куда нужно смотреть. Чтобы хоть как-то улучшить ситуацию, в решение проблемы все больше должны включаться современные технологии. Итак, сегодня поговорим о создании системы оценки степени заледенелости улиц, основанной на статистике падений людей. Под катом машинное обучение, облака и мобильные приложения.

3 примера использования системы
Читать полностью »

компьютер сетунь

"Возможно, самая красивая система счисления — это сбалансированная троичная" — Дональд Е. Кнут, Искусство программирования, Издание 2.

Многие знают, что компьютеры хранят данные и работают с ними с помощью двоичной системы счисления. Одно из главных объяснений этому можно найти в схеме современных компьютеров, которые состоят из миллиардов простых и массово производимых транзисторов и конденсаторов, которые могут вместе представлять два состояния: высокое напряжение (1) и низкое напряжение (0).

Такая конструкция сегодня настолько распространена, что трудно себе представить, как компьютеры могут работать иначе. Но, в Советской России 50-х годов они работали иначе. Если вы вдруг не слышали про такое, загуглите "Сетунь" — сбалансированный трехкомпонентный компьютер, разработанный в 1958 году небольшой группой во главе с Брусенцовым, в МГУ.

Перед тем, как говорить о Брусенцове и Сетуни, давайте я немного объясню вам троичную сбалансированную систему счисления.

Сбалансированная троичность

Тернарная или троичная — это система счисления, в которой есть три вероятных значения: 0, 1 и 2. В её сбалансированной версии существуют три вероятности -1, 0 и +1, часто упрощённые до -, 0 и + соответственно.Читать полностью »

Издание DigiTimes со ссылкой на Economic Daily News пишет, что Apple активно старается усилить свое присутствие на рынке Юго-Восточной Азии.

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

Читать полностью »

Я тебя вижу: как не заблудиться в экранах смартфонов? - 1

До появления на рынке устройств с цветными экранами мобильные телефоны, как правило, оценивали по двум критериям: дизайн и функциональность (ну и чтобы полифония с рингтонами была, конечно). Но когда смартфоны получили массовое распространение, пользователи начали обращать внимание, что у кого-то дисплей ярче, где-то цвета сочнее, а на некоторые экраны вообще не хочется смотреть. Со всеми этими обозначениями вроде IPS, Retina, AMOLED и TFT запутаться можно, так что попробуем разобраться, где же трава зеленее (в прямом смысле). Если тоже хотите это узнать, приглашаем под кат.
Читать полностью »

Скоро будет 7 лет с момента написания статьи "Видеонаблюдение под Ubuntu для «чайников» (ZoneMinder)". За эти годы она не раз корректировалась и обновлялась в связи с выходом новых версий, но кардинальная проблема, а именно — стоимость IP видеокамер, оставалась прежней. Её обходили оцифровывая аналоговые потоки и эмулируя IP камеры с помощью USB «вебок».

Ситуация изменилась с появлением китайских камер стандарта ONVIF (Open Network Video Interface Forum). Теперь любую камеру отвечающую стандарту вы можете настроить с помощью ONVIF Device Manager.

Бюджетное видеонаблюдение для прижимистых «чайников» - 1


Читать полностью »

На сайте компании Japan Display сегодня появилось сообщение о вводе в строй нового производства, выпускающего жидкокристаллические панели с использованием низкотемпературного поликристаллического кремния (LTPS). Расположенная в Японии линия рассчитана на стеклянные подложки шестого поколения (Gen 6), размер которых составляет 1500 x 1850 мм. Отметим, что подложки Gen 6 — самые большие, используемые для панелей LTPS. По словам производителя, изготавливаемые на новых мощностях панели предназначены для мобильных устройств верхнего сегмента.


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js