Как стать автором
Обновить

Все потоки

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Websocket API на nodejs по новому

Node.JS*API*TypeScript*
Tutorial

О чем эта статья?

1. uWebsockets.js - высокопроизводительная реализация http/websocket сервера для nodejs

2. AsyncAPI - спецификация для асинхронного API, с помощью которой можно создать описание Websocket API

3. Простой пример websocket API с использованием библиотеки wsapix:
- создадим websocket сервер, используя uWebsockets.js
- настроим валидацию получаемых и отправляемых сообщений
- добавим генерацию документации из кода

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Просмотры224
Комментарии 1

Новости

Показать еще

По секрету всему свету, или как Raiffeisen гоняет (не) твои паспортные данные по сети тысячи раз

API*
Из песочницы

Одной унылой ночью мне стало скучно разгребать БИНы российских банков, отчего я решил сделать дублирование операций из своего ныне основного банка в телеграм. Тем более, что качество обновлений оставляет желать лучшего (или это просто я избалован лучшим мобильным приложением от одного там небанка)

Отрицание. Что делают хоть немного люди, когда хотят попользоваться непубличным API? Наверное, идут на GitHub и вводят в строку поиска что-то типа "api service_name". Много что уже заревёр(с/ш)ено, посему велик шанс найти полноценный враппер. Но нет, обнаруживаю только всяку каку с хакатонов.

Гнев. DuckDuckGo'инг тоже не даёт результатов. Неужели никто не пытался автоматизировать работу с Райфом?

Торг. Открываю веб-банк и смотрю через монитор сети (ctrl+shift+e в лисе), куда шлются запросы после каких-либо действий. Ага. Ищу по доменам на гитхабе. Опять ничего. ВАААУ. Уже становится страшно.

Депрессия. Расковырял APK'шку и судорожно ищу по всем файлам наличие "raiffeisen.ru", однако kFind ничего сверхъестественно-полезного не выдаёт. Как и по запросу "api".

Смирение. Достаю свой прошлый телефончик с Android 8.1 на борту, ставлю купленный несколько лет назад для решения похожей задачи с одним там небанком HttpCanary — шикарный клиент для анализа http(s), tcp, udp и web-socket трафиков. Ставлю доверенный сертификат, ля-ля-ля тополя, бюрократия, в общем. Теперь активирую self-vpn и запускаю заветный Raiffeisen.

Принятие. В PiP-окошко с логом всех http-запросов летит первый мусор на всякие уведомления. Прикладываю палец к сканеру, дабы войти в приложение. Ага. Вижу запрос, содержащий "oauth/token". Чую, что что-то связанное с авторизацией. Пускает в приложение. Но вот незадача, никакие данные не отобржаются, типа баланса счетов или истории операций. Окей, смею в тот момент предположить, что это как-то связано с доверенным сертификатом. Тыкаю в раздел операций. Тоже не отображаются данные, но запрос ушёл успешно. Можно отключать анализ и идти разгребать урылы, заголовки и содержимое.

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Просмотры737
Комментарии 2

Анализ распределения интервалов между покупками на R

R*Визуализация данныхСтатистика в IT
Из песочницы

В статье я провожу ресёрч интервалов между собственными банковскими тратами за последние полгода и с помощью статистических методов в R пытаюсь понять, какому распределению эти интервалы подчиняются.

Я представляю:

1. Код на R для анализа любых временных интервалов.

2. Подбор экспоненциального и степенного распределения под данные с помощью метода максимального правдоподобия (MLE). Для экспоненциального я использую fitdistr() из пакета MASS, а для степенного fit_power_law() из пакета igraph.

3. Проверку данных на соответствие подобранному распределению с помощью теста Колмогорова-Смирнова. Я использую функцию ks.test() из пакета stats.

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Просмотры210
Комментарии 0

Оценка эффективности навигации по вышкам сотовой связи при угоне автомобиля

Глобальные системы позиционирования*Сотовая связь
Из песочницы

Точность навигации по LBS поможет найти автомобиль только в центре города.

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

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Просмотры611
Комментарии 2

Полностью электрический ускоритель космических кораблей

Научно-популярноеКосмонавтикаФизикаDIY или Сделай самАстрономия


Дамы и Господа, в этой статье я представлю вашему вниманию революционный безтопливный ускоритель не имеющий аналогов в мире, который ничего не выбрасывает (требуется только электричество). Мой ускоритель в тысячи раз эффективней обычных ракетных двигателей, он просто перевернёт всю мировую космонавтику и позволит колонизировать всю Солнечную систему за 50-100 Лет. 3 недели до Марса, 7 месяцев до Юпитера и 11 месяцев до Сатурна — такого даже в научной фантастике нет — но сегодня это станет реальностью.

Как и все безтопливные ускорители — мой ускоритель может работать только в вакууме, но главное преимущество моего ускорителя перед другими безтопливными двигателями заключается в том — что другие ускорители не работают, а мой работает!!! — мой ускоритель никаким законам физики не противоречит. Мой ускоритель противоречит лишь животным инстинктам — человек так устроен, что в процессе жизнедеятельности, человеку постоянно необходимо гадить — и поэтому Людям кажется, что если не нагадить в космосе — то ракета не полетит — но это в корне не верно! Хватит обезьяних технологий!!! Реактивный … струя, импульс, формула Циолковского — сегодня вы забудете про эту гадость как про плохой сон.
Для начала давайте отправимся на Луну со второй космической скоростью.

Итак, что бы отправиться с орбиты Земли на Луну, нам понадобится:


Читать дальше →
Всего голосов 26: ↑23 и ↓3+20
Просмотры3.3K
Комментарии 35

Новый открытый VPN-протокол — на что обратить внимание

Блог компании VAS ExpertsРазработка систем связи*

Большинство VPN-провайдеров для построения сервисов использует стандартные решения вроде OpenVPN и IKEv2. Однако малая их часть выбирает другой путь и разрабатывает собственные протоколы — одним из них стал Lightway. В статье обсуждаем его возможности, достоинства, недостатки и безопасность.

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Просмотры3.1K
Комментарии 3

Архитектура Архитектуры. Шаг 7: Носом в пилотку

Анализ и проектирование систем*Управление разработкой*Управление проектами*

Продолжение. К предыдущим постам и карте цикла.

Знаете, что случается, когда и архитектура вроде получилась и команда подобралась нормальная? Приходит ПОЦ. Пилотная версия. Проверка боем. Да, вы уложились в сроки и даже прошли всё внутренние проверки и тестирование на стороне клиента (UAT, SIT, PPT, ETC), так что теперь вас ждёт всё более худшее – то, что не нашли. Потому что там точно что-то спрятали. Может и не вы, но в конце точно прозвучит: «доктор, это вам!».

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Просмотры764
Комментарии 1

Различные виды алгебраических кривых

Математика*WebGL*

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

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

В чем их отличие от тех, которые я Вам представлю, они были написаны на Delphi. Конечно время идет и прогресс не стоит на месте, в том числе и мои навыки в новых инструментах разработки.

Теперь перейдем к сути статьи.

На википедии есть страница с их списком.

Насколько я знаю ими занимались различные известные и не очень математики. Часть из них я смог реализовать в программах на webgl. Это будет экспериментальная статья, так что прошу любить и жаловать. Рассмотрим 5 примеров алгебраических кривых разных порядков.

Читать далее
Всего голосов 2: ↑0 и ↓2-2
Просмотры557
Комментарии 8

Расставляем ударения с помощью Natasha и Spacy

Python*Машинное обучение*Изучение языковNatural Language Processing*
Из песочницы

Представьте себя на месте изучающего русский язык иностранца. Ударение станет одним из ваших самых страшных ночных кошмаров.

Однажды я написал приложение для изучения русского, одной из функций которого была расстановка ударений. Я просто проверял каждое слово по словарю. Однако, это часто приводило к ситуации неоднозначности, когда ударение зависит от контекста. Например: "два сло́ва", но "длинные слова́".

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Просмотры978
Комментарии 6

Взять и собрать DAW — помогут эти инструменты

Блог компании АудиоманияЗвук

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

Читать далее
Всего голосов 7: ↑5 и ↓2+3
Просмотры641
Комментарии 0

Как найти и купить дом, если вы Data Scientist

Блог компании SkillFactoryPython*Программирование*Геоинформационные сервисы*Машинное обучение*
Перевод
Tutorial

Атма Мани, переводом статьи которого мы делимся к старту флагманского курса по Data Science, — ведущий инженер по продуктам ArcGIS API для Python в компании Esri. В этом материале он рассказывает, как при помощи ArcGIS и Python создать модель, выводящую короткий список домов в соответствии с потребностями и желаниями покупателя. Ссылку на репозиторий GitHub вы найдёте в конце статьи.

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Просмотры2.6K
Комментарии 2

Эволюция интеллекта: Интуиция

Искусственный интеллект

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

Читать далее
Всего голосов 3: ↑1 и ↓2-1
Просмотры1.8K
Комментарии 19

Чуть подробнее о настройке среды разработки esp-idf для разработки приложений Esp32

Программирование*Eclipse*Компиляторы*Программирование микроконтроллеров*
Из песочницы

Эта заметка посвящена установке Eclipse и Visual Studio Code под Linux и Windows. Особенность состоит в том, что для всех IDE и для работы в консоли используется одна и та же установка esp-idf.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Просмотры988
Комментарии 2

Python: конфигурация проекта без боли

Python*Совершенный код*
Из песочницы

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

В статье речь пойдет только о локальных способах хранения настроек, здесь не разбираются случаи загрузки из сети.

После создания проекта рано или поздно возникает вопрос: куда записывать номер версии, где хранить токены, пароли, настройки, каким форматом файлов конфигурации воспользоваться: .json.yaml.env, .cfg.ini или просто создатьconfig.pyи записывать туда переменные?

Для каждого из перечисленных вариантов есть библиотека на python, приведу примеры самых популярных форматов

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Просмотры3.7K
Комментарии 9

Шпаргалка — Как проверить актуальность лицензий 1С при помощи утилиты Ring

*
Tutorial

см. так же: Как активировать лицензии при помощи Ring

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

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Просмотры1K
Комментарии 4

Живи, умри, и снова: погружаемся в мир рогаликов

Блог компании RUVDS.comЧитальный залДизайн игр*Научно-популярноеНаучная фантастика

Что такое roguelike и roguelike-like? Почему проводилась целая конференция, чтобы это определить? Можно ли считать рогаликом реальную жизнь? Что сегодня может предложить один из самых суровых и не прощающих ошибок игровых жанров, и как попасть в правильный dungeon? Давайте разбираться!
Читать дальше →
Всего голосов 41: ↑40 и ↓1+39
Просмотры8K
Комментарии 25

Шпаргалка — Как активировать лицензии 1С при помощи утилиты Ring

*
Из песочницы
Tutorial

Идея этого поста - шпаргалка на будущее, но я буду рад, если кому-то пригодится приведенная информация.

Если Вы читаете это, значит примерно представляете, что такое Ring. В этом посте речь только об активации лицензий. Позднее здесь я представлю ссылки на следующие шпаргалки по работе с ring-ом.

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

Стоит отметить, что в этом примере лицензии привязываются к параметрам машины!

Поехали.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Просмотры1.3K
Комментарии 4

«Мир Hi-Fi»: обсуждаем муз. программирование, звуки ОС, аудиосоцсети, стриминг и редкие композиции

Блог компании АудиоманияПрограммирование*СофтЗвук

Мы делимся не только обзорами аудиотехники, но и тематическими научпоп материалами о звуке и музыке в различных проявлениях и сочетаниях с технологическими решениями. Сегодня публикуем очередную подборку таких заметок из нашего «Мира Hi-Fi» — собственного журнала «Аудиомании».

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Просмотры1.4K
Комментарии 2

От базовых знаний до советов по оптимизации команды: что нужно для развития тимлида

Блог компании Конференции Олега Бунина (Онтико)Управление персоналом*Карьера в IT-индустрииКонференцииИнтервью

Каждый раз на TeamLead Conf мы стараемся подбирать программу для нанесения максимальной пользы участникам. Ну и, безусловно, отыграть важные события в жизни сообщества, подсветить тренды.

До Saint TeamLead Conf 2021 осталось буквально несколько недель. Мы решили открыть карты и рассказать, что ждет участников питерской конференции для тимлидов (спойлер: 4 секции докладов, 12 мастер-классов и классный нетворкинг).

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Просмотры1.4K
Комментарии 0

Тестирование программного обеспечения для космоса (интервью с разработчиком из SpaceX)

Блог компании НПП ИТЭЛМАТестирование IT-систем*Промышленное программирование*Управление разработкой*Транспорт
Перевод
image

Stack Overflow побеседовал с Эрин Ишимотича, инженером в группе Software Delivery Engineering из Чокто Нейшн в Оклахоме. Ишимотича, работающая инженером на постоянной основе уже 15 лет, начала свою карьеру с написания скриптов shell и Perl, а в SpaceX работает уже около двух лет.

Проверять, проверять и еще раз проверять


Работа отдела Software Delivery Engineering, по словам Ишимотича, заключается в координации надлежащей практики разработки и тестирования программного обеспечения в компании SpaceX, обеспечивая, чтобы все, кто пишет код для космических аппаратов, использовали надлежащие методы контроля версий и проходили автоматизированное и человеческое тестирование, управляемое системой непрерывной интеграции (CI).

«Мы разрабатываем и поддерживаем нашу собственную систему CI», — сказала она. «У нас есть веб-служба, которая создает отчеты — она получает телеметрию от тестов программного и аппаратного обеспечения, строит графики и имеет свои собственные утверждения, которые она выполняет на основе данных, создавая отчет о том, как работает программное обеспечение».


Это означает, что специалисты из Software Delivery Engineering занимаются разработкой, тестированием и DevOps, в команде около 15 инженеров, включая специальную команду Software Reliability Engineering (SRE).
Читать дальше →
Всего голосов 9: ↑6 и ↓3+3
Просмотры3.7K
Комментарии 3