Архив за 17 сентября 2019 - 9

Компания Google без лишнего шума добавила в ассортимент своего онлайн-магазина новую категорию продукции — восстановленные устройства.

На данный момент в этом разделе присутствует пока лишь два продукта: ноутбук Pixelbook и набор маршрутизаторов Google Wifi (3‑Pack).

На сайте Slashleaks опубликовали компьютерное изображение, на котором показаны все доступные цвета новой линейки флагманских смартфонов Huawei Mate 30.

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

Анонсированные недавно серверные процессоры AMD Epyc второго поколения прямых конкурентов в стане Intel по многим параметрам попросту не имеют.

Ранее AMD заявляла, что разрабатывала такие CPU с прицелом на конкуренцию с 10-нанометровыми серверными процессорами Intel. Но такие решения в итоге так и не вышли в срок.

Всем привет, меня зовут Дмитрий, и сегодня я расскажу о том, как производственная необходимость заставила меня стать контрибутором для фреймворка Micronaut. Наверняка многие о нём слышали. Если вкратце, то это легковесная альтернатива Spring Boot, где основной упор сделан не на рефлексию, а на предварительную компиляцию всех нужных зависимостей. Более подробное знакомство можно начать с официальной документации.

Фреймворк Micronaut используется в нескольких внутренних проектах Яндекса и зарекомендовал себя достаточно хорошо. Так чего же нам не хватало? Могу сказать сразу: из коробки фреймворк поддерживает, в принципе, все фичи, которые теоретически могут понадобиться программисту для разработки бэкендов. Однако есть редкие кейсы, которые из коробки не поддерживаются. Один из них — когда работать нужно не по HTTP, а с расширением HTTP. Например, с дополнительными методами. Таких случаев на самом деле гораздо больше, чем может показаться. Более того, часть таких протоколов является стандартами:

  • Webdav — расширение для доступа к ресурсам. Помимо стандартных методов, HTTP требует поддержки дополнительных методов типа LOCK, PROPPATCH и т. д.
  • Caldav — расширение Webdav для работы с событиями календарного типа. Данный протокол с большой долей вероятности есть в приложениях на вашем смартфоне: для синхронизации календарей, встреч и т. д.

И этим список не исчерпывается. Если вы заглянете в реестр HTTP-методов, то увидите, что HTTP-методов, лишь описанных стандартами RFC, на данный момент 39. А сколько ещё случаев, когда имеется самописный протокол поверх HTTP. Так что поддержка нестандартных HTTP-методов довольно распространена. Также часто бывает, что фреймворк, который вы используете, не поддерживает такие методы. Вот дискуссия на Stack Overflow для ExpressJS. А вот pull request на гитхабе для Tornado. Ну и поскольку Micronaut часто позиционируется как легковесная альтернатива Spring — то вот та же проблема для Spring.
Читать полностью »

Компания Vivo представила вчера смартфон Nex 3, который первым в мире получил так называемый экран-водопад. Но это было не единственное, что анонсировала Vivo на мероприятии.

После смартфона также был представлен собственный платёжный сервис компании — Vivo Pay. Пока он будет работать только в Китае, но позже явно появится и в других странах, где позиции производителя достаточно сильны.

На размышления меня натолкнула статья об использовании «странной» инструкции popcount в современных процессорах. Речь пойдет не о подсчете числа единичек, а об обнаружении признака окончания Си строки (нуль-терминированная строка).

Нуль-терминированная строка — способ представления строк в языках программирования, при котором вместо введения специального строкового типа используется массив символов, а концом строки считается первый встретившийся специальный нуль-символ (NUL из кода ASCII, со значением 0).

Для определения длины таких срок применяется стандартная функция

size_t __cdecl strlen(char const* str)

Алгоритм работы которой можно описать на языке Си как:


size_t strlen_algo(const char* str)
{
	size_t length = 0;
	while (*str++)
		length++;
	return length;
}

Посмотрим во что его превращает компилятор MS Visual Studio 2019 community (Release, x86):

08811F7h:
mov         al,byte ptr [ecx]  
inc         ecx  
test        al,al  
jne         main+0D7h (08811F7h) 

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

Берём лазерный сканер (это что-то вроде лидара) — штуку, которую надо установить на треногу и нажать кнопку. Штука обводит лазерным лучом всё, что видит, и сохраняет облако полученных точек. Это похоже на работу лазерного дальномера, только за один проход вычисляется несколько миллионов расстояний. По миллиону в секунду.

Пиу-пиу лазером — и видно косяки строителей: сверхточная модель здания на основе лазерного сканирования - 1

Получается нечто подобное (на самом деле это уже результат постобработки, потому что сначала получается просто матрица чисел). Вы берёте эту штуку и несёте на все этажи здания, во все объёмы, а потом выставляете снаружи. Получается модель:

Пиу-пиу лазером — и видно косяки строителей: сверхточная модель здания на основе лазерного сканирования - 2

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

Теперь, собственно, как работает это пиу-пиу. Читать полностью »

Многие центры безопасности смыслом своей работы, а то и жизни делают борьбу с хакерами и атаками. Дело действительно важное и интеллектуально очень емкое. Исследуем данные Threat Intelligence, собираем атрибуцию на группировки и её TTP (tactics, techniques and procedures), разрабатываем отдельные сценарии и правила выявления инцидентов, внедряем мощные технологические решения. Это огромный и важный кусок работы любой команды по безопасности, а уж тем более любого зрелого SOC.

image

Но периодически все классические подходы к безопасности через мониторинг просто умножаются на ноль, когда в жизнь приходит большая и неприятная массовая атака. Та самая, о которой узнаёт даже ваша бабушка. Условно назовем такую атаку медиакиберпандемией, чтобы не путать с регулярными рассылками Cobalt или хитрыми инструментами Silence (для бывалых они уже стали чем-то вроде белого шума). Речь о Heartbleed, Shellshock, WannaСry, уязвимости в оборудовании Cisco и прочих. Что их отличает от прочих кибердиверсий? Как в этом случае стоит (или не стоит) вести себя SOC и просто ИБ-службе компании? Давайте разбираться под катом.
Читать полностью »

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

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

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

Доказательство разрешает задачу почти 80-летней давности, известную, как гипотеза Даффина-Шаффера. Тем самым оно даёт окончательный ответ, занимавший математиков с древних времён: при каких условиях возможно представлять иррациональные числа, длящиеся бесконечно долго – типа числа пи – простыми дробями типа 22/7? Доказательство устанавливает, что ответ на этот довольно общий вопрос обнаруживается в результате единственного вычисления.
Читать полностью »

Прототипирование — значимый этап в веб-разработке, который позволяет определить и сформировать ДНК проекта на ранних стадиях. В последние годы количество онлайн-сервисов и инструментов для прототипирования ощутимо возросло. В этом обзоре представлены 10 сервисов для создания визуальных сайтмэпов.

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

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

10 сервисов для создания структуры сайта в 2020 году - 1Читать полностью »


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