Рубрика «IT-стандарты» - 6

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

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

Защита данных пользователя: как добавить поддержку правил CCPA и GDPR в мобильное приложение - 1

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

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

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

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

Какой самый популярный стиль организации кода вы встречали в корпоративных кодовых базах? Лично я чаще всего видел решение, подразумевающее группировку всех файлов по их типу. Таким образом, к примеру, в системе MVC все контроллеры, все сервисы, все репозитории, все POJO и так далее находятся вместе. Давайте назовем такое решение "стековым" стилем организации кода.

Хватит организовывать код по типу файлов - 1

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

Всё гораздо серьёзнее. Вот пример для проверки:

#include <iostream>

int main()
{
    std::cout << "-3/3u*3 = " << int(-3/3u*3) << "n";
}

Посмотреть результат можно тут.

Или попробуйте поиграться с этим примером здесь или здесь.

Вообще-то мне не удалось найти хоть какой-то компилятор С++, который бы выдавал результат отличный от -4. Даже старый GCC-4.1.2, clang-3.0.0 или Borland C 1992 года. Также заметил, что результат одинаковый и для константы, вычисляемой в момент компиляции и для времени выполнения.

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

image

В Китае жизнь превратилась в компьютерную игру. Или даже в эпизод «Черного зеркала». Там с 01.01.2021 принят новый гражданский кодекс, официально узаконивший «Систему социального кредита». Теперь каждому гражданину присваивается стартовый рейтинг в 1000 баллов. Благодаря вездесущим камерам видеонаблюдения, Единый информационный центр анализирует каждого по 160 тысячам различных параметров из 142 учреждений. Если рейтинг больше 1050 баллов, то это образцовый гражданин и маркируется индексом ААА. С 1000 баллов можно рассчитывать на А+, а с 900 – на B. Если рейтинг упал ниже 849 – это уже «мутная личность» из категории C, кого запросто могут уволить из государственных и муниципальных структур. Те, у кого меньше 600 баллов попадают в группу D, это сравнимо с «чёрной меткой». Люди с рейтингом D не могут устроиться на нормальную работу, им не дают кредиты, не продают билеты на транспорт и даже могут отказать в аренде велосипеда. Для сравнения, человеку с рейтингом А+ велосипед в аренду дадут бесплатно и еще разрешат полчаса кататься на нем без единого юаня. Человек со средним рейтингом С велосипед дадут только под залог в 200 юаней.

В Китае аналогичный принцип ранжирования людей применяют и в Интернете. А компания Huawei решила пойти дальше и разработала новый стек протоколов, с которым провайдеры могут блокировать доступ в Сеть любого пользователя с низким рейтингом.

New IP — следующий этап развития Интернета или ужесточение контроля над пользователями - 2

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

Комментарий переводчика, или никто никого не обучает - 1

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

Прим. перев.: эту статью написал автор Open Source-утилиты HTTP Toolkit, предназначенной для исследования и модификации HTTP(S)-трафика для нужд отладки и тестирования. В материале собраны примечательные особенности стандарта HTTP, которые долгие годы живут вместе с нами, однако не каждый догадывается об их существовании.

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

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

Какие бы вы предложили принципы для современной разработки программного обеспечения?

На прошлом виртуальном митапе Extreme Tuesday Club мы обсуждали, не устарели ли SOLID принципы. Не так давно я толкнул шутливую речь на эту тему, так что один из организаторов митапа спросил у меня - раз я несогласен с SOLID, чем бы я его заменил. Так получилось, что я уже думал об этом какое-то время, так что я решил предложить пять своих принципов, из которых получился акроним CUPID.

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

Альтернатива электронной почте для 21 века - 1
Специализированный мини-компьютер IMP соединял между собой участников сети ARPANET в 1969 году, прообраз современных маршрутизаторов и символ древности SMTP. Фото: Fred Prouser / Reuters

Электронная почта — очень старая технология. Протокол Simple Mail Transfer Protocol (SMTP) впервые описан в RFC 821 (1982 год), а его основой стали технологии 1970-х. В те времена никто не мог представить, какие проблемы возникнут в будущем из-за открытости протокола.

Сейчас электронная почта — рассадник спама и главное оружие киберпреступников. Большинство кибератак начинается с проникновения в сеть через фишинг. Жертву изучают — и направляют ей таргетированное письмо с обращением по имени, должности, с указанием деталей личной жизни, после чего искусно убеждают открыть приложенный файл. Многие соглашаются и открывают (например, см. проверку персонала в GoDaddy и GitLab). SMTP идеально подходит для социальной инженерии.

Поэтому программист Лиам Брек (Liam Breck) придумал безопасную и современную альтернативу электронной почте — это сеть MNM (расшифровывается как mnm is not mail), сайт сейчас не справляется с нагрузкой, вот кэш в Google.
Читать полностью »


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