Pull to refresh
-5
0
Serghei Niculaev @spam312sn

Programmer

Send message

Идентификация клиентов на сайтах без паролей и cookie: заявка на стандарт

Reading time68 min
Views47K
image

Уважаемые Хаброжители! Уважаемые эксперты! Представляю на вашу оценку новую концепцию идентификации пользователей на веб-сайтах, которая, как я надеюсь, с вашей помощью станет открытым интернет-стандартом, сделав этот интернет-мир чуточку лучше. Это вариант черновика протокола беспарольной идентификации, оформленный в виде вольной статьи. И если идея, положенная в его основу, получит от вас, уважаемый читатель, положительную оценку, я продолжу публикацию его на reddit.com и rfc-editor.org. И надеюсь, мне удастся заинтересовать в его реализации разработчиков ведущих браузеров. Потому ожидаю от вас конструктивную критику.

Внимание: очень много текста.

Рецензировать
Total votes 50: ↑46 and ↓4+42
Comments136

Судьба предателя, угнавшего новейший МиГ-25 в Японию

Reading time9 min
Views1.5M

Сегодня в воздушном пространстве США летают около пятидесяти истребителей российского производства — от устаревших МИГ-15 и до современных МИГ-29. Большая их часть приобретена на открытом рынке после распада Советского Союза и расторжения Варшавского Договора. В советское время у американцев не было шансов приобрести наши боевые машины, хотя Штаты ради этого были готовы на все.

6 сентября 1976 года произошло ЧП: во время учебного полета на одном из дальневосточных аэродромов в Приморье, старший лейтенант Виктор Беленко поднялся в воздух на суперсовременном МИГ-25, и не вернулся на базу.

Сегодня в воздушном пространстве США
Total votes 318: ↑209 and ↓109+100
Comments2916

Подъёмы ног по программе Пола Уэйда

Reading time24 min
Views44K

image


Техника / как выполнять


Правило первое: «Тренируйтесь по-настоящему, а не делайте вид!»


Это первый урок в тренировке центральной части тела. Если вы не знакомы с темой, то мы постараемся это исправить. Самым известным упражнением на пресс являются «кранчи» (от англ. crunch). Это упражнение, в котором напрягают пресс и поднимают туловище в пределах небольшого диапазона движения. Кранчи обычно выполняются так:


image


Цель этого упражнения «прорисовать» кубики пресса для «показухи». И это совершенно не то, чем надо заниматься, если есть желание обрести настоящую силу.


Человеческое тело создано для полноценного перемещения, а не для изолированной работы пары мышц. Организму важно работать как единой системе. В лёгкой и силовой атлетике задействуют всё тело, а не отдельные конечности. Посмотрите на борьбу, бег, броски, подъём тяжестей: во всех этих движениях тело движется как единое целое. Мышцы брюшной полости развивались, чтобы принимать участие в этой «большой игре». Тренируйте пресс подражая естественным движениям. Выполняйте их с полным диапазоном, реально перемещая тело и конечности — не надо делать это наполовину.


«И как это делать?» — спросите вы. Ответ очевиден, талия — это середина тела, мышцы здесь работают сжимаясь и сгибая его по центру. В идеале мышцы притягивают торс к ногам, как в приседаниях, или подтягивают ноги к торсу, как в подъёмах ног. Оба упражнения являются отличной тренировкой, но по многим причинам — подъём ног превосходит приседания. Для достижения высоких результатов тренируйте талию должным образом. Сосредоточьтесь на «размашистых» полноценных движениях. И подъёмы ног — одно из лучших среди них.

Читать дальше →
Total votes 29: ↑22 and ↓7+15
Comments13

DevTerm — портативный open-source компьютер с модульным дизайном в стиле ретро и с кучей возможностей

Reading time3 min
Views19K

Нашей команде очень нравятся как ретро-устройства, так и современные производительные гаджеты, которые можно использовать на работе и в быту. А если эти два направления можно совместить — вообще идеально.

На днях попалось на глаза именно такое устройство, которое называется DevTerm. У него модульный дизайн (о модульных устройствах мы писали, кстати), ретро-стиль и открытое для всех «железо» и ПО. Под катом — описание девайса и его возможностей. Пока вы читаете, мы размышляем над заказом этого девайса…
Читать дальше →
Total votes 35: ↑34 and ↓1+33
Comments77

Funkwhale: наконец-то нормальный децентрализованный музыкальный сервис

Reading time4 min
Views13K


Grooveshark уже пять лет как закрыт. За это время появились десятки проектов поменьше с той же идеей — но на базе децентрализованных сетей. Проблема Grooveshark была в его централизации, которая позволила правообладателям завалить компанию исками, в итоге потопившими её. С тех пор любая музыкальная платформа с пользовательским контентом обязательно включает в слоганы «децентрализацию», «peer-to-peer», «криптографию» и конечно, блокчейн. У всех общие проблемы: несмотря на использование федеративных сетей и модных протоколов, всё управление стартапом сосредоточено в одном офисе. Пока платформа слишком мала чтобы её заметили, она слабо развивается. Стоит ей дорасти до более-менее крупной пользовательской базы, и через несколько месяцев она тонет под напором DMCA и судебных исков.
Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments14

Web Cryptography API: пример использования

Reading time6 min
Views16K
Доброго времени суток, друзья!

В этом туториале мы рассмотрим Web Cryptography API: интерфейс шифрования данных на стороне клиента. Данный туториал основан на этой статье. Предполагается, что вы немного знакомы с шифрованием.

Что конкретно мы будем делать? Мы напишем простой сервер, который будет принимать зашифрованные данные от клиента и возвращать их ему по запросу. Сами данные будут обрабатываться на стороне клиента.

Сервер будет реализован на Node.js с помощью Express, клиент — на JavaScript. Для стилизации будет использоваться Bootstrap.

Код проекта находится здесь.

Если вам это интересно, прошу следовать за мной.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments4

Как создать чужого — размышления о дизайне инопланетных видов

Reading time17 min
Views19K
Инопланетяне являются почти настолько же основным столпом научной фантастики, как и межзвёздные полёты. Если задуматься, то пожалуй даже более влиятельным — Идеи о чуждой жизни обосновались в фантастике даже до межзвёздных полетов, с работами Герберта Уэллса и Эдгара Берроуза.

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


В 9 из 10 таких произведений «инопланетянин» по замыслу создателей — это типичный человек, только со странными выростами на голове, и\или неестественным цветом кожи (Наиболее хрестоматийный пример такого безобразия — сериал Star Trek). В худшем случае запредельной лени инопланетянин будет просто человеком, без каких-либо внешних отличий вообще. Это если инопланетянин подразумевается как персонаж которому можно сочувствовать, в случае если этот инопланетянин задумывается как враг, то его внешность и поведение часто больше напоминают какое-нибудь разъяренное дикое животное, чем разумное существо. Рычание или бритвенно-острые когти в полметра длиной не обязательны, но крайне приветствуются.

Где-то примерно до середины или конца 90х такая ситуация имела весьма практичное объяснение: Чтобы сделать персонажа, не похожего на человека, необходим большой бюджет и много денег на создание аниматронных кукол (А результат всё равно мог получиться неудовлетворителен по убедительности). Далеко не все проекты обладали таким количеством денег и времени, тем более телевизионные сериалы, поэтому загримированный актер оставался наиболее дешевым, практичным и эффективным способом сымитировать инопланетянина.
Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments175

Основы правил проектирования базы данных

Reading time11 min
Views226K

Введение


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

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

Для начала, разберем создание базы данных в MS SQL Server для сервиса поиска соискателей на работу.

Этот материал можно перенести и на другую СУБД такую как MySQL или PostgreSQL.
Читать дальше →
Total votes 59: ↑49 and ↓10+39
Comments89

Ортолинейная сплит клавиатура — это что такое? Обзор Iris Keyboard

Reading time13 min
Views100K
За сто с лишним лет клавиатуры сильно изменились внешне: стали лёгкими, тонкими, есть даже проекционные со сканером. Но рынок ничего не меняет в их раскладке («QWERTY» появилась в 1890 году), клавиатуры не стали удобней для пальцев, не адаптированы для положения кистей и предплечий. Всё человечество стало проводить жизнь за компьютером, но эргономика главного инструмента ввода осталась в позапрошлом веке.

Я решил узнать, можно ли купить удобную клавиатуру в 2020 году. Краткий ответ: пришлось паять самому.


Total votes 122: ↑118 and ↓4+114
Comments293

Подробная инструкция по изготовлению сплит клавиатуры на основе ATmega32U4. Аналог Iris / Jiran своими руками

Reading time13 min
Views49K

Моя самоделка


image

Перед изготовлением своей клавиатуры я наметил следующие цели:

  1. Максимально возможный тактильный комфорт.
  2. Добиться того, чтобы совершенно не было необходимости смотреть на клавиатуру при работе, чтобы она никоим образом не отвлекала внимание на себя, чтобы даже смотреть на нее было бессмысленно. Именно поэтому на моих колпачках нет надписей.
  3. Клавиатура — это мой рабочий инструмент, сосредотачиваемся на ее функционале и удобстве. Внешний вид совершенно неважен. Кто не может жить без RGB подсветки и внешней броской красоты – нам с вами не по пути, эта статья совсем про другое. В этой статье я вас научу как недорого и просто сделать себе удобный и функциональный инструмент для работы.
  4. Удобство перевозки. Сделать компактное и удобное для переноски устройство.
Total votes 79: ↑79 and ↓0+79
Comments75

Как книга «Электроника шаг за шагом» обрела новую жизнь

Reading time7 min
Views92K


Привет, Хабр!

Хорошие новости для тех, кто следил за историей переиздания книги Рудольфа Свореня «Электроника шаг за шагом» — книга вот-вот, на днях, покинет типографию и попадёт в руки читателей. Почему так долго пришлось ждать новое издание книги? Что изменилось в тексте? А иллюстрации всё те же? Что со схемами  — по-прежнему, на МП39, с плюсовой «землей»? Будет ли электронная версия книги? На эти и другие вопросы, я попытаюсь ответить ниже.
Читать дальше →
Total votes 146: ↑145 and ↓1+144
Comments156

Теория графов в машинном обучении для самых маленьких

Reading time15 min
Views26K

Сложность представления данных для глубокого обучения растет с каждым днем. Нейронные сети на основе данных в виде графа (Graph Neural Network, GNN) стали одним из прорывов последних лет. Но почему именно графы набирают все большую популярность в машинном обучении?


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

Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments3

Еще раз о передатчиках и приемниках 433 МГц

Reading time10 min
Views179K
Простейший комплект из приемника и передатчика ISM-диапазона 433 МГц завоевал заслуженную популярность в среде любителей электроники. Комплекты дешевы (даже в «Чипе-Дипе» их можно купить рублей за 300, а на Ali, говорят, вообще за полтинник), просты и надежны. Кроме того (о чем вы, возможно, не подозреваете), это самый дальнодействующий и проникающий способ беспроводного обмена данными — сигнал на частоте 433 МГц куда лучше проходит через препятствия и действует на более далеком расстоянии, чем в популярном диапазоне 2,4 ГГц (433 МГц полностью задерживаются стенкой в полметра бетона, а Wi-Fi умирает уже на 10 сантиметрах). Допускаю, что недавно появившиеся модули MBee-868, будучи снабженными соответствующей (направленной) антенной, «стреляют» дальше, но они как минимум на порядок дороже, сложнее в подключении, требуют управления энергосбережением и предварительной настройки. И вдобавок частота 868 МГц вдвое хуже проходит через препятствия (хотя, конечно, несравненно лучше частоты 2,4 ГГц).



О приемниках-передатчиках 433 МГц написано очень много (в том числе и на хабре, конечно). Однако, правильно включать в схему этот комплект по какой-то странной причине, кажется, не умеет никто. Когда я в который раз прочел вот тут, что комплект «принимал на 8-ми метрах в пределах прямой видимости, 9-ый метр осилить не удалось», мое терпение лопнуло. Какие еще 8 метров?! В 40-50 я бы поверил, хотя в реальности, наверное, дальность еще больше.
Читать дальше →
Total votes 76: ↑74 and ↓2+72
Comments57

WebAuthn в реальной жизни

Reading time19 min
Views33K
В сентябре 2019 года команда Почты Mail.ru поддержала технологию WebAuthn. Мы стали первым в мире сервисом электронной почты, который реализовал возможность входа в аккаунт с использованием электронных ключей вместо паролей. Сейчас эта возможность доступна всем нашим пользователям, вы можете привязать электронный ключ к своему аккаунту в настройках и после этого свободно использовать его для входа.



Мы уже писали новость об этом событии здесь, на Хабре. В этой статье я хочу рассказать подробнее о причинах внедрения WebAuthn в наши сервисы и о технических аспектах работы с этой технологией.
Читать дальше →
Total votes 63: ↑59 and ↓4+55
Comments49

Zip-файлы: история, объяснение и реализация

Reading time76 min
Views92K


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

В статье очень подробно объясняется, как работают Zip-файлы и схема сжатия: LZ77-сжатие, алгоритм Хаффмана, алгоритм Deflate и прочее. Вы узнаете историю развития технологии и посмотрите довольно эффективные примеры реализации, написанные с нуля на С. Исходный код лежит тут: hwzip-1.0.zip.
Читать дальше →
Total votes 176: ↑175 and ↓1+174
Comments45

ЭВМ «Таймыр» — эволюция наоборот

Reading time2 min
Views37K
Захотелось мне сделать что-нибудь, пусть бесполезное, но зато своё. И не под чью-то копирку, а свое — с нуля. Так и родилась идея собрать процессор из микросхем 155-й серии (и немного других серий). А там так завертелось, что процессор плавно перерос в ЭВМ. В ЭВМ с собственной микроархитектурой и своим компилятором.. И главная «фишка» проекта: все это собрано на гетинаксе и микросхемах времен СССР.


Читать дальше →
Total votes 171: ↑169 and ↓2+167
Comments146

Какие английские слова IT-лексикона мы неправильно произносим чаще всего

Reading time5 min
Views171K
Пока пара новых статей на технические темы еще в процессе написания, я решил опубликовать небольшой лингвистический материал. Достаточно часто замечаю, что коллеги, у которых английский язык — не родной, неправильно произносят некоторые характерные для IT сферы слова. И дело здесь не в том, насколько аутентично произносятся отдельные звуки, а именно в транскрипции. Регулярно встречал ситуации при общении с носителями, когда неправильно произносимое слово приводило к недопониманиям.

Дальше я приведу несколько наборов слов, сгруппированных по типовым ошибкам. К каждому слову будет приложена транскрипция, приблизительная транскрипция на русском и ссылка на более детальную информацию в словаре. Так как большинство IT компаний все-таки работает с Северной Америкой, то транскрипции будут из US English.
Читать дальше →
Total votes 309: ↑308 and ↓1+307
Comments486

Самодельные беспроводные оконные датчики: STM32L051 + RFM69 + Android

Reading time11 min
Views23K
Добрый день, уважаемые хабровчане! Несколько лет назад я купился на красочную рекламу zWave и установил себе оконные датчики, базирующиеся на этом протоколе. К домашнему серверу был подключен USB zWave-Stick, который играл роль контроллера, написан небольшой модуль на Java, который получал данные с этого контроллера, а также написано небольшое приложение для Андроида, которое красиво отображало состояние всех датчиков. Батарейки вставлены, датчики зарегистрированы на контроллере, все заработало. Но через пару месяцев наступило жесточайшее разочарование. Во первых, данные zWave датчики работают по принципу «послать сообщение и, не ожидая подтверждения, заснуть». В моем случае это привело к тому, что сигнал от наиболее дальних от контроллера датчиков просто не доходил до контроллера. Не помогла даже установки дополнительного zWave-повторителя. Во-вторых, они настолько быстро садили батарейку, что примерно через шесть месяцев работать переставали все датчики. Причина в том, что они каждый час просыпались, чтобы сообщить контроллеру свое состояние. Отключить или изменить этот параметр не получилось, так как штатное программное обеспечение это сделать категорически не позволяло. Помучавшись два года с этой сырой, ненадежной и недружественной технологией, я решил что с меня хватит. Но вместо того, чтобы все убрать и выкинуть, мне пришла идея оставить корпуса, но поменять в них электронику. Выбор пал на достаточно простой приемопередатчик RFM69 (433 MHz), на базе которого удалось сделать как плату для датчика, так и контроллер, подключаемый через USB к серверу. Новая система в эксплуатации уже 5 месяцев, надежность близка к 100% (но некоторые сбои таки были), батарейки садиться пока не думают. То есть уже сейчас видно, что все недостатки старой системы на базе zWave устранены, и я хочу поделиться техническими подробностями этой моей поделки, см. картинку.



Кому интересно, прошу под кат.
Читать дальше →
Total votes 37: ↑35 and ↓2+33
Comments77

Ты только посмотри! 20 фильмов о науке и ученых

Reading time4 min
Views58K
Команда конференции Mieloconf подготовила подборку классных фильмов о науке и ученых для долгих новогодних каникул.

Про свои любимые фильмы рассказали: AI-евангелист ABBYY, автор подкаста «Проветримся» Иван Ямщиков, физик-ядерщик Дмитрий Горчаков, руководитель инфраструктурной команды в «Контуре» Алексей Кирпичников и программист Павел Аргентов.


Читать дальше →
Total votes 42: ↑39 and ↓3+36
Comments42

Information

Rating
Does not participate
Location
Рига, Латвия, Латвия
Date of birth
Registered
Activity