Pull to refresh
  • by relevance
  • by date
  • by rating

Поиски фундаментальных данных для акций через API Financial Modeling Prep

AlgorithmsNode.JSAPIFinance in IT
Недавно мне понадобилось обработать экономические показатели для нескольких тысяч американских акций.

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

В качестве поставщика данных использовался сервис FinancialModelingPrep, который в 2019 году был бесплатен, но в 2020 году уже нет.



В статье разбираюсь в нюансах формирования запросов к базе данных сервиса. А ещё исследую глубину доступных финансовых отчетов компаний за прошлые годы.
API Financial Modeling Prep
Total votes 4: ↑4 and ↓0+4
Views5.2K
Comments 6

Как npm обеспечивает безопасность

ДомКлик corporate blogInformation SecurityWebsite developmentJavaScript

Как npm обеспечивает безопасность


Всем привет! В предыдущих постах мы подробно поговорили про выбор зависимостей и использование lock-файлов в npm, однако я только вскользь касался вопросов безопасности. Пришло время исправить этот недочет: этот и следующий посты будут полностью посвящены безопасности в npm! И для начала мы рассмотрим, как безопасность обеспечивается на уровне инфраструктуры npm и экосистемы в целом.

Читать дальше →
Total votes 23: ↑22 and ↓1+21
Views5.9K
Comments 2

23 полезнейших Node.js-библиотеки, о которых стоит знать в 2020 году

RUVDS.com corporate blogWebsite developmentJavaScriptNode.JS
Translation
Профессиональному Node.js-разработчику нужно быть в курсе того, что происходит в сфере пакетов, предназначенных для этой платформы. Ему нужно знать о том, что вышло свежего, и о том, какие пакеты, используемые для решения различных задач, пользуются популярностью. Дело тут в том, что разработка ПО в наши дни зависит от библиотек. Знание хороших библиотек способствует повышению производительности труда программиста и помогает ему разрабатывать качественные приложения. Сегодня мы поговорим о 23 полезных пакетах для Node.js.


Читать дальше →
Total votes 51: ↑38 and ↓13+25
Views17K
Comments 32

Телепортация тонн данных в PostgreSQL

Тензор corporate blogHigh performancePostgreSQLAlgorithmsNode.JS
Сегодня я поделюсь некоторыми полезными архитектурными решениями, которые возникли в процессе развития нашего инструмента массового анализа производительности серверов PostgeSQL, и которые помогают нам сейчас «умещать» полноценный мониторинг и анализ более тысячи хостов в то же «железо», которого сначала едва хватало для одной сотни.


Intro


Напомню некоторые вводные:

  • мы строим сервис, который получает информацию из логов серверов PostgreSQL
  • собирая логи, мы хотим что-то с ними делать (парсить, анализировать, запрашивать дополнительную информацию) в режиме онлайн
  • все собранное и «наанализированное» надо куда-то сохранить

Именно про последний пункт — как все это можно доставить в PostgreSQL-хранилище, и поговорим. В нашем случае таких данных кратно больше, чем исходных — статистика нагрузки в разрезе конкретного приложения и шаблона плана, потребление ресурсов и вычисление производных проблем с точностью до отдельного узла плана, мониторинг блокировок и многое другое.
Более полно о принципах работы сервиса можно посмотреть в видео доклада и прочитать в статье «Массовая оптимизация запросов PostgreSQL».
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Views4.1K
Comments 8

Безопасность npm-проектов, часть 1

ДомКлик corporate blogInformation SecurityWebsite developmentJavaScriptNode.JS

Безопасность npm-проектов, часть 1


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

Читать дальше →
Total votes 25: ↑25 and ↓0+25
Views3.8K
Comments 0
Всем привет, на связи Microsoft! Мы давно обратили внимание, что читатели видят в Хабре образовательный ресурс и приходят сюда затем, чтобы повысить свой профессиональный уровень. Для тех хабравчан, кто пользуется инструментами и продуктами от Microsoft, мы решили систематизировать наши обучающие, справочные и триал-материалы. Итак, под катом наш виртуальный лекторий, где собраны ссылки по работе с Azure, последние курсы на платформе Learn и материалы для получения сертификатов от компании.
Посмотреть, что мы для вас собрали
Total votes 32: ↑30 and ↓2+28
Views43K
Comments 2

Сладкая жизнь, или Создание веб-приложения без написания кода

Website developmentOpen sourceJavaScriptNode.JS
Sandbox

Сладкая жизнь, или Создание веб-приложения без написания кода



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

Читать дальше →
Total votes 12: ↑9 and ↓3+6
Views6.2K
Comments 44

Реализация технологии SSO на базе Node.js

RUVDS.com corporate blogWebsite developmentJavaScriptNode.JS
Translation
Веб-приложения создают с использованием клиент-серверной архитектуры, применяя в качестве коммуникационного протокола HTTP. HTTP — это протокол без сохранения состояния. Каждый раз, когда браузер отправляет серверу запрос, сервер обрабатывает этот запрос независимо от других запросов и не связывает его с предыдущими или последующими запросами того же самого браузера. Это, кроме прочего, означает, что получить доступ к серверным ресурсам, которые никак не защищены, может кто угодно. Если нужно защитить от посторонних некие серверные ресурсы, это значит, что нужно как-то ограничить то, что может запрашивать у сервера браузер. То есть — нужно аутентифицировать запросы и отвечать только на те из них, которые прошли проверку, игнорируя те, которые проверку не прошли. Для аутентификации запросов нужно владеть некими сведениями о запросах, хранящимися на стороне браузера. Так как протокол HTTP не хранит состояние запросов, нам для этого нужны некие дополнительные механизмы, которые позволяют серверу и браузеру совместно управлять состоянием соединений. Среди таких механизмов можно отметить использование куки-файлов, сессий, JWT.



Если речь идёт о каком-то одном веб-проекте, то сведения о состоянии конкретного сеанса взаимодействия клиента и сервера легко поддерживать с применением аутентификации пользователя при его входе в систему. Но если такая вот самостоятельная система эволюционирует, превращаясь в несколько систем, перед разработчиком встаёт вопрос о поддержании сведений о состоянии каждой из этих отдельных систем. На практике этот вопрос выглядит так: «Придётся ли пользователю этих систем входить в каждую из них по-отдельности и так же из них выходить?».
Читать дальше →
Total votes 25: ↑24 and ↓1+23
Views7.7K
Comments 5

Объясните, почему мой рокет-саенс бэкенд билдится пару секунд, а четыре формы на фронте — полгода

VDSina.ru corporate blogIT careerLaptops

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

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

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

Читать далее
Total votes 318: ↑221 and ↓97+124
Views61K
Comments 438

Безопасность npm-проектов, часть 2

ДомКлик corporate blogInformation SecurityWebsite developmentJavaScriptNode.JS

Безопасность npm-проектов, часть 2


Всем привет! В прошлых постах мы поговорили о том, как команда npm обеспечивает безопасность, а также начали рассматривать инструменты, помогающие нам повысить безопасность проектов. Я хочу продолжить разговор и рассмотреть следующий набор полезных инструментов.

Читать дальше →
Total votes 27: ↑27 and ↓0+27
Views3.9K
Comments 3

От небольшого вики-портала до хостинга

HostingCMSWebsite developmentJavaScript

Предыстория


Я как-то пытался создать статью на паре вики-проектов, но их потерли так как они не имеют энциклопедической ценности, и вообще походу если ты пишешь о чем-то новом и неизвестном — это принимается за пиар. Через некоторое время моя статья была удалена. Я сначала расстроился, но в обсуждении для меня было приглашение на другой небольшой вики проект обо всем (а потом мне предложили написать статью еще для одного сайта). Я о нем никогда не слышал, но все равно был рад написать статью для сайта, которым кто-то занимается. Кстати оба проекта обновляются, есть в поиске и их читают — для меня это было достаточно чтобы написать обзор на свой проект. Оба сайта кажется были на движке MediaWiki или каком-то похожем, и внешне походили на любой другой популярный вики-портал.

От вики-сайта до вики-движка


image
Читать дальше →
Total votes 11: ↑3 and ↓8-5
Views3.1K
Comments 8

Intl.Segmenter: сегментация Юникода в JavaScript

JavaScriptGoogle ChromeNode.JSBrowsersLanguage localisation
Translation

Предисловие к переводу


Это перевод объяснительной части предложения (proposal) Intl.Segmenter, которое скорее всего будет добавлено в ближайшую спецификацию ECMAScript.


Предложение уже реализовано в V8 и без флага может быть использовано в версии 8.7 (точнее в 8.7.38 и выше), поэтому его можно протестировать в Google Chrome Canary (начиная с версии 87.0.4252.0) или в Node.js V8 Canary (начиная с версии v15.0.0-v8-canary202009025a2ca762b8; для Windows бинарники доступны с версии v15.0.0-v8-canary202009173b56586162).


Если будете тестировать в более ранних версиях с флагом --harmony-intl-segmenter, будьте осторожны, так как спецификация менялась и реализация под флагом может быть устаревшей. Проверяйте по выводу в примерах кода.


После перевода приведены ссылки на материалы об основаниях проблем, которые решает данное предложение.

Читать дальше →
Total votes 5: ↑5 and ↓0+5
Views1.1K
Comments 2

Команда поддержки систем хранения данных Bloomberg полагается на открытый исходный код и SDS

Southbridge corporate blogServer AdministrationDevOpsInterviewKubernetes
Translation


TL;DR: Команда Bloomberg Storage Engineering создала облачное хранилище для внутреннего использования, которое не мешает инфраструктуре и выдерживает большую нагрузку при изменчивости торгов во время пандемии.

Читать дальше →
Total votes 10: ↑8 and ↓2+6
Views1.1K
Comments 1

Перфоманс фронтенда как современное искусство: графики, код, кулстори

HeadHunter corporate blogJavaScriptClient optimizationNode.JSReactJS

Всем привет. В предыдущих статьях мы говорили о базовых вещах оптимизации: раз и два. Сегодня я предлагаю с разбега окунуться в одну часть из тех задач, которыми занимается команда архитектуры фронтенда в hh.ru.


Я работаю в команде архитектуры. Мы не только перекладываем файлики из одной папки в другую, но и занимаемся кучей других вещей:


  • Перфоманс приложения
  • Инфраструктура: сборка, тесты, пайплайны, раскатка на продакшене, инструменты для разработчика (например бабель-плагины, кастомные eslint правила)
  • Дизайн-система (UIKit)
  • Переезд на новые технологии

Если покопаться, можно найти много интересного.


Поэтому, давайте поговорим о перфомансе. Команда фронтенд архитектуры ответственна как за клиентскую часть, так и серверную (SSR).


Я предлагаю посмотреть на метрики и разобраться, как мы реагируем на различные триггеры. Статья будет разбита на 2 составляющие. Серверную и клиентскую. Графики, код и кулстори прилагаются.


Читать дальше →
Total votes 14: ↑13 and ↓1+12
Views7K
Comments 6

Выбираем лучший бэкенд-фреймворк 2021 года

RUVDS.com corporate blogWebsite developmentDjangoNode.JS
Translation
Недавно мы опубликовали статью, автор которой размышлял о том, какой язык программирования, JavaScript, Python или Go, лучше всего подойдёт для бэкенд-разработки в 2021 году. Сегодня мы представляем вашему вниманию перевод ещё одного материала того же автора. Здесь он пытается найти ответ на вопрос о том, на какой фреймворк для разработки серверных частей приложений стоит обратить внимание тем, кто хочет во всеоружии встретить 2021 год.


Читать дальше →
Total votes 47: ↑33 and ↓14+19
Views28K
Comments 52

Raspberry pi & Азбука Морзе

Node.JSDevelopment for Raspberry Pi
Sandbox

Парусник “NaN” сигналит SOS (See Our Success) Raspberry Pi, азбука Морзе и MQTT: вместе веселее


Меня зовут Вова Балакин, я из московской школы на Юго-Востоке имени Маршала В.И.Чуйкова (классов “Силаэдр”: vk.com/silaedr), закончил 5 класс, интересуюсь программированием и техникой. Я хочу рассказать, что я делал этой весной. У меня был парусник, он назывался “Not a Number”(“NaN”). Выходить в море без сигнализации опасно, поэтому я подумал, что ему на мачте не хватает сигнальных огней. А лучше — сигнальных огней, которыми можно управлять удаленно. А лучше — удаленно из любой точки мира! У меня был Raspberry Pi — и тогда я придумал…



Чего мне захотелось (Постановка задачи)


… что можно прикрепить к мачте светодиод, соединить его с Raspberry Pi и запрограммировать так, чтобы из Интернета было возможно отсылать паруснику любое сообщение — и оно переводилось в код Морзе — и диод на мачте мигал в соответствии с этим кодом. И на ту же мачту закрепить фоторезистор — декодер кода Морзе, чтобы другой компьютер в Интернете мог получить переданный код.

Что у меня вышло (Результат)


После двух месяцев проб и ошибок у меня получилось написать программу, которая через MQTT-брокер(http://www.hivemq.com/demos/websocket-client/) позволяет любому человеку в Интернете, знающему Topic — секретный ключ для передачи сообщения клиенту, — отправить абсолютно любое сообщение написанное латиницей — и светодиод на мачте моего промигает его азбукой Морзе!


Вот в целом как это работает: мы пишем сообщение и отправляем его MQTT-серверу, а он в свою очередь отправляет его на Raspberry pi, который переводит его в код Морзе и подмигивает светодиодом в соответствии с кодом.

Вот код на Node.js на гитхабе.
Читать дальше →
Total votes 31: ↑30 and ↓1+29
Views4.8K
Comments 21

Мониторинг Node.js-приложения

ДомКлик corporate blogWebsite developmentNode.JS


Здравствуйте! Меня зовут Ренат Саматов, я возглавляю фронтенд-направление в линейке продуктов Витрина. Большая часть наших проектов рендерится на сервере. Сегодня мы побеседуем об одном из важнейших аспектов SSR-приложения: о мониторинге.

Даже в 2020-м мониторинг Node.js-приложения является непростой задачей. Node.js — среда выполнения JavaScript, однопоточного языка программирования с динамической типизацией. Интерпретатору и среде исполнения предоставлены широкие полномочия, что очень легко может привести к утечке памяти или высокой нагрузке на процессор. Node.js работает асинхронно (псевдопараллельно), однако если одна функция блокирует поток или очередь событий, производительность приложения начинает сильно проседать.

В этой статье я расскажу о том, как контролировать ваше Node.js-приложение и быть уверенным в том, что проблем с утечкой памяти, ресурсов процессора и блокировкой потока не возникает. Мы побеседуем об управлении производительностью приложения (Application Performance Management, APM) и метриках, на которые следует обращать внимание. Погнали!
Читать дальше →
Total votes 33: ↑28 and ↓5+23
Views7.6K
Comments 7

Популярные npm-пакеты. Volume 1

Website developmentJavaScriptProgrammingNode.JS
Доброго времени суток, друзья!

Представляю вашему вниманию подборку из десяти популярных npm-пакетов с примерами их использования и альтернативными решениями.

Предполагается, что вы хорошо знакомы с JavaScript и, в частности, с Node.js.

В данном части представлены следующие пакеты:


Читать дальше →
Total votes 12: ↑8 and ↓4+4
Views3K
Comments 2

Визуализация sqlite в node.js

VDSina.ru corporate blogNode.JSSQLite


Довольно часто на этапе прототипирования (и всегда — в пет-проектах) я не запариваюсь с бэкэндом и поднимаю апи на express с sqlite3. Это легко и довольно удобно для несложной логики, а для сложной есть бэкэндеры с их отдельным миром. Единственный геморрой, который долгое время меня преследовал на этапе написания апи — невозможность быстро заглянуть в базу и отследить изменения. Можно дебажить по памяти, конечно, но это как-то странно, когда можно просто вытащить содержимое по запросу и отобразить его на какой-нибудь страничке. Вот только каждый раз заново парсить json и распихивать его в таблицы по лучшим практикам очередного фреймворка мне не хотелось, поэтому я после недолгих поисков нашёл sqljs и набросал на нём простейший визуализатор.
Читать дальше →
Total votes 23: ↑20 and ↓3+17
Views4.4K
Comments 2

Написание графического приложения на Electron JS (начало: Создание окна)

JavaScriptHTMLNode.JS
Sandbox

Приветствую! Если вы зашли на эту статью, значит скорее всего вам крайне неохота лезть в официальную документацию (а очень зря. Она и написана подробно, и имеет перевод на русский язык) и вы пришли за простым решением вашей проблемы — написание кросс-платформенного приложения для компьютера с использованием лишь Web технологий. предлагаю не тянуть, и сразу начать. Но т. к. это первая статья, думаю стоит рассказать в двух словах о том, что же вообще такое Electron JS и для чего оно нужно.


image

Читать дальше →
Total votes 14: ↑10 and ↓4+6
Views5.7K
Comments 33