Search
Write a publication
Pull to refresh
6
0
Олег Серых @seryh

Fullstack Web Developer

Send message

Как добавить новые символы в Unicode: опыт обывателя

Reading time3 min
Views8K
Все знают про общепринятый стандарт Unicode. Его (UTF-8) использует абсолютное большинство веб-ресурсов. А Unicode Consortium под управлением Марка Дэвиса — одного из ключевых контрибьюторов оригинальной спецификации 1987 года — периодически вносит обновления.

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

Читать дальше →

Коронавирус Novel nCOV/2019-nCoV/NCP/COVID19: Прогнозы, Статистика, Новости[Часть 1, ред.03.02

Reading time43 min
Views177K
Тут только первая часть статьи с новыми новостями. (Изменение 8.03.2021)
Создание собственного сайта провалилось. Большинству не интересен коронавирус.
Из принципа буду продолжать менять только новости и таблицу.
Прошло больше года с написания этой статьи. Итог:: Мои надежды не оправдались.
Полная версия без обновлений новостей тут
Не обновляемая английская версия: тут

Независимые от меня обстоятельства повлияли на текущую ситуацию, мои извинения

Перейти сразу к новостям

Многие люди не выполняют рекомендаций.Все пошло по «тяжелому сценарию». У систем здравоохранения есть куда увеличивать количество коек, врачей:
Качество: Высокое
1уровень: Инфекционные койки. 10-20% ## Инфекционисты

Качество: Среднее
2уровень: Перепрофилирование больниц 30-60% ## Любые врачи. Возвращают врачей пенсионного возраста.

Качество: Удовлетворительное
3 уровень Частные клиники и военные госпитали 10-20% ## все врачи даже без опыта, снятие из институтов. Военврачи.

Качество: Низкое
4 уровень: Временные больницы 10-20% (Обычно отправлять больных в более легкой форме.Более тяжелые будут в больницах) ## Быстро обученный персонал. (Будут давать более простые задачи, разгрузка врачей от пары задач). Альт. вариант армия для выполнения части задач.

Китай было:2 из 4 /4 из 4 (временные больницы)Италия: Врачи: по 3 из 4.
Качество: Абсолютное (Не бойтесь 5lvl. придумал я, до этого не дойдет)Сарказм: 5 ур.: Больницы не понадобятся.Подробно Dr. Morty.
Статистикshorturl.at/pEY09

Читать дальше →

Тренды и торговля на бирже: 4 популярных индикатора технического анализа

Reading time4 min
Views70K


Участники биржевых торгов могут использовать самые разные стратегии: долгосрочные вложения, арбитраж, скальпинг и торговля с использованием трендов. Каждый из этих случаев предполагает особый подход к риск-менеджменту и требует особенной психологии, а также применения специализированных инструментов анализа (в том числе графического).

Портал Investopedia рассказывает о том, какими индикаторами пользуются трейдеры, чьи стратегии построены вокруг следования трендам. Мы подготовили адаптированную версию этого материала.
Читать дальше →

Собрать команду UX-дизайнеров и потерять 7 миллионов из-за ошибок найма

Reading time8 min
Views11K


Это история масштабирования. С марта по сентябрь мы наняли 22 UX-дизайнера, а уже к октябрю расстались с половиной из них — написали про критичные ошибки и выводы, которые помогли изменить подход к найму и собрать сильную команду. Плюс рассказали, где и как искать дизайнеров.
Читать дальше →

Многопоточность на Node.js. Event Loop

Reading time8 min
Views79K

Инфа будет полезна JS-разработчикам, которые хотят глубоко понимать суть работы с Node.js и Event Loop. Вы сможете осознанно и более гибко управлять потоком выполнения программы (web-сервера).


Эту статью я составил по материалам своего недавнего доклада для коллег.
В конце статьи есть полезные материалы для самостоятельного изучения.


Как устроена Node.js. Возможности асинхрона


Давайте посмотрим на этот код: он отлично демонстрирует синхронность выполнения кода в Node.js. Делается запрос на GitHub, затем записываем данные в файл и выводим результат в консоли. Что понятно из этого синхронного кода?


image

Читать дальше →

Как украсть деньги с бесконтактной карты и Apple Pay

Reading time24 min
Views275K
Как украсть деньги с бесконтактной карты из кармана? Насколько безопасен PayPass и Apple Pay?

В статье разбираются популярные мифы и сценарии мошенничества с бесконтактными системами оплаты на примере настоящего POS-терминала, карт PayPass/payWave и телефонов с функцией Google Pay/Apple Pay.

Рассматриваемые темы:

  • Можно ли НА САМОМ ДЕЛЕ украсть деньги, прислонившись POS-терминалом к карману? — мы попытаемся полностью воспроизвести этот сценарий мошенничества от начала до конца, с использованием настоящего POS-терминала и платежных карт в реальных условиях.
  • В чем разница между физическими и виртуальными картами Apple Pay? — как происходит связывание физической карты и токена Apple Pay, и почему Apple Pay во много раз безопаснее обычной карты.
  • Используем аппаратный NFC-сниффер (ISO 14443A) — воспользуемся устройством HydraNFC для перехвата данных между POS-терминалом и картой. Рассмотрим, какие конфиденциальные данные можно извлечь из перехваченного трафика.
  • Разбираем протокол EMV — какими данными обменивается карта с POS-терминалом, используемый формат запросов, механизмы защиты от мошенничества и replay-атак.
  • Исследуем операции без карты (CNP, MO/TO) — в каких случаях на самом деле(!) можно украсть деньги с карты, имея только реквизиты, считанные бесконтактно, а в каких нельзя.

Внимание!

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

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

Зарплатная вилка. Ты ж у мамы программист

Reading time7 min
Views160K
Думаю что у каждого ИТ-специалиста наступает тот момент, когда он хочет написать подобный текст может и не для себя, а для десятков знакомых, которые не работают в этой сфере и не понимают как и что. Возможно кому-то будет полезно просто дать ссылку на подобную статью, чем в 10 раз объяснять самому.

Дело в том, что ИТ-сфера одновременно бурно развивается (все еще) и в то же время полна множества устоявшихся стереотипов.
Читать дальше →

От теории к практике: как применяется блокчейн в авиации

Reading time11 min
Views11K

Гражданская авиация — глобальная индустрия, в которой непрерывно происходит синхронизация и обработка огромных массивов данных. В середине 20 века системы бронирования авиабилетов были одними из первых примеров применения компьютерных комплексов и сетей передачи данных. Давайте посмотрим, как сегодня технологии блокчейн могут помочь быстрее и эффективнее решить простую, на первый взгляд, задачу: перевести пассажира из точки «А» в точку «В»?


Читать дальше →

VM или Docker?

Reading time5 min
Views92K

Как понять, что вам нужен Docker, а не VM? Давайте попытаемся разобраться в основных отличиях изоляции виртуальных машин (VM) и Docker-контейнеров, могут ли они быть взаимозаменяемы и как мы можем их использовать.

Читать дальше →

Шесть задачек для Front-End разработчика

Reading time2 min
Views46K

1. Форма кредитной карты


Клёвая форма кредитной карты с гладкими и приятными микровзаимодействиями. Включает форматирование чисел, проверку и автоматическое определение типа карты. Она построена на Vue.js, а также полностью адаптивная. (Посмотреть можно здесь.)

image

credit-card-form

Чему научитесь:

  • Обрабатывать и валидировать формы
  • Обрабатывать события (например, при изменении полей)
  • Разберетесь как отображать и размещать элементы на странице, особенно данные кредитной карты, которая поверх формы
Читать дальше →

RabbitMQ против Kafka: отказоустойчивость и высокая доступность в кластерах

Reading time14 min
Views40K


Отказоустойчивость и высокая доступность — большие темы, так что посвятим RabbitMQ и Kafka отдельные статьи. Данная статья о RabbitMQ, а следующая — о Kafka, в сравнении с RabbitMQ. Статья длинная, так что устраивайтесь поудобнее.

Рассмотрим стратегии отказоустойчивости, согласованности и высокой доступности (HA), а также компромиссы, на которые приходится идти в каждой стратегии. RabbitMQ может работать на кластере узлов — и тогда классифицируется как распределенная система. Когда речь заходит о распределенных системах, мы часто говорим о согласованности и доступности.

Эти понятия описывают, как система ведет себя при сбое. Сбой сетевого соединения, сбой сервера, сбой жесткого диска, временная недоступность сервера из-за сборки мусора, потеря пакетов или замедление сетевого соединения. Все это может привести к потере данных или конфликтам. Оказывается, практически невозможно поднять систему, одновременно и полностью непротиворечивую (без потери данных, без расхождения данных), и доступную (будет принимать операции чтения и записи) для всех вариантов сбоя.
Читать дальше →

Лошадь сдохла – слезь: переход с tslint на eslint

Reading time7 min
Views42K
До недавнего времени во всех проектах фронта разработчики Dodo Pizza Engineering использовали tslint – полезный инструмент, который подсказывает, когда ты накосячил в коде допустил неточность, помогает поддерживать код в одном стиле и сам исправляет многие замечания. Но тут tslint взял и умер. Под катом я расскажу, почему так вышло, как перестать лить слёзы по умершему и перейти на инструмент eslint, а также покажу кое-что очень интимное.


Читать дальше →

Redux — Не нужен! Заменяем с помощью useContext и useReducer в React?

Reading time6 min
Views44K

image


Доброго времени суток, Хабровчане!


Хочу рассказать о том, как я недавно узнал о неких "хуках" в React. Появились они относительно недавно, в версии [16.8.0] от 6 февраля 2019 года (что по скоростям развития FrontEnd — уже очень давно)


Прочитав документацию я заострил свое внимание на хуке useReducer и сразу же задал себе вопрос: "Эта штука способна полностью заменить Redux!?" потратил несколько вечеров на эксперименты и теперь хочу поделиться результатами и своими выводами.

Читать дальше →

Ом-ням-ням и валидация данных

Reading time7 min
Views6.2K

Всем привет! Поговорим немного про валидацию данных. Что в этом сложного и зачем вообще это может понадобиться, скажем, в проекте написанном на typescript? Typescript довольно неплохо всё контролирует, остаётся максимум проверять ввод пользователя. То есть закинуть в проект десяток регулярок и всё, казалось бы тему можно закрывать, но… Далеко не всегда, а в случае с вебом примерно никогда, весь проект находится в единой кодовой базе и использует одни и теже типы. На стыке таких кодовых баз как раз и возникают ситуации, когда ожидание не соответствует реальности и тут typescript уже не помощник. Несколько примеров:

Читать дальше →

Как подписывать приложения для macOS Catalina 10.15

Reading time11 min
Views14K
image

[Прим. пер.: переведя вызвавший широкое обсуждение на Хабре пост, я заинтересовался новыми правилами для разработчиков ПО, введёнными компанией Apple. В этой статье рассказывается о личном опыте освоения правил одним из разработчиков игр.]

Введение


В новой версии macOS Apple сделала обязательными некоторые требования к приложениям, которые раньше были рекомендациями: 64-битные исполняемые файлы, подписывание и нотаризация. Не удовлетворяющие этим требованиям приложения больше запускаться не будут.

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

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

Я только что закончил разбираться с тем, как реализовать соответствие этим требованиям для моей игры Airships: Conquer the Skies. Airships работают на Java, а потому требуют ещё и JVM, но в целом всё остальное будет применимо для большинства разработчиков.

Вот что я узнал о подписывании и нотаризации приложения для Mac, которое не было скомпилировано непосредственно Xcode. Учтите, что информация получена из моих собственных исследований и может быть точной не на 100%. Вопросы и поправки приветствуются.
Читать дальше →

Фриланс-вебдев — как и с кем НЕ стоит работать

Reading time6 min
Views23K

imageКДПВ взята отсюда


Часто слышу истории вида "пробовал фрилансить — не понравилось" и встречаю много заблуждений по поводу этого типа работ, потому что люди просто начали "не с той стороны". Постараюсь исправить ситуацию этим постом.


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

Читать дальше →

Подготовка к Spring Professional Certification. Spring Boot

Reading time5 min
Views17K

Приветствую всех. Эта статья раскроет основные вопросы по теме "Spring Boot". Она ориентирована на начинающих разработчиков, и может быть полезной при подготовке к собеседованию. Она получилась достаточно компактной, по сравнению с остальными статьями.


Оглавление
  1. Внедрение зависимостей, контейнер, IoC, бины
  2. AOP (аспектно-ориентированное программирование)
  3. JDBC, транзакции, JPA, Spring Data
  4. Spring Boot
  5. Spring MVC
  6. Spring Security
  7. REST
  8. Тестирование



Читать дальше →

Новый проект братьев Дуровых: Telegram Open Network

Reading time12 min
Views89K
Приближается момент полномасштабного запуска самого ожидаемого криптопроекта, который действительно может изменить мир. К началу ноября сеть TON будет запущена и все смогут в полной мере оценить её достоинства и начать использовать по назначению: разработчики — создавать полезные и прибыльные приложения, пользователи — использовать функционал полезных приложений, с лёгкостью оплачивая его, при необходимости.

Уже запущена тестовая сеть и на официальном сайте есть два интересных документа, проливающих свет на то, как будет функционировать этот проект. Это описание TON, 132 страницы (ссылки на страницы в тексте указаны в круглых скобках, (45)) и описание блокчейна, 120 страниц (ссылки на страницы указаны в квадратных скобках, [55]). Виртуальная машина и язык программирования смарт-контрактов в этой статье рассматриваться не будут, кому нужно — разберёт сам, а кто не разберёт — тому не нужно.

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

Итак, что такое Telegram Open Network (TON)?


Читать дальше →

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

Reading time7 min
Views54K
После того, как я изложил свою историю «трудоустройства» в Яндекс в комменте к нашумевшей заметке «Как я проработала 3 месяца в Я.Маркете и уволилась», было бы несправедливо утаить и ту пользу, которую я вынес из своего опыта Яндекс.Собеседования.

В мои рабочие обязанности входит техническое интервьюирование кандидатов на позицию Fullstack JavaScript/TypeScript Developer, активно этим делом (стоит ли говорить, что слегка поднадоевшим?) я занимаюсь больше года, за плечами более 30 технических интервью.

Раньше на техническом интервью я задавал кандидату довольно бестолковые вопросы аля «что такое замыкание», «как в JavaScript реализуется наследование», «вот есть такая-то таблица в БД с такими-то индексами, расскажите, пожалуйста, как можно ускорить такой-то запрос», которые хоть и помогали выявить инженерные способности кандидата, но совершенно не позволяли сделать вывод о том, насколько хорошо человек сможет решать задачи и насколько быстро он сможет разобраться в уже существующем коде. Что не могло не привести к печальным последствиям…

Но всё поменялось после того, как я прошёл четыре круга технических собеседований в Яндексе.
Читать дальше →

Как я проработала 3 месяца в Я.Маркете и уволилась

Reading time6 min
Views308K

Первая попытка


Все началось с того, что я люблю ходить по конференциям и частенько хожу на них в Яндекс, Mail.ru и другие крупные компании. Однажды мне написал HR из Яндекса и попросила сделать тестовое на стажера фронтенд-разработчика.

Я его сделала, вот оно. По условию оно должно было работать на айфонах и андроидах, поэтому я проверила его в Browser Stack и дописала пару префиксов и css-стилей.

Через какое-то время поняла, что не хочу быть стажером, имея несколько лет опыта за плечами и зааплаилась в Я.Маркет через форму на их сайте.

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

На интервью я не смогла решить алгоритмические задачки, не знала внутренности JS и меня сбрили.

Это задело мою самооценку и весь следующий год параллельно с работой я учила JS на глубоком уровне и решала задачки на codewars. Здесь можно оценить мой прогресс.
Читать дальше →

Information

Rating
Does not participate
Location
Новосибирск, Новосибирская обл., Россия
Date of birth
Registered
Activity