Pull to refresh
0
@artemyev_viktorread⁠-⁠only

Пользователь

Send message

Более правильный подход к подключению Yandex AppMetrica в React Native приложении

Level of difficultyEasy
Reading time6 min
Views1.9K

Самостоятельно ставим Yandex AppMetrica в React Native приложение без каких-либо сторонних npm'ных библиотек.

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

Гайд ориентирован на React Native разработчиков, которые не могут найти нормальное решение для подключения аппметрики.

Читать далее
Total votes 4: ↑4 and ↓0+4
Comments0

Подключение Twig шаблонов в WordPress: Как избежать конфликтов

Level of difficultyMedium
Reading time4 min
Views939

Twig доступен в виде Composer пакета, но WordPress не имеет встроенного менеджера зависимостей. Его прямое использование может привести к проблемам; узнайте, как безопасно интегрировать его.

Читать далее
Rating0
Comments0

Авторизация пользователей в системе через сервер аутентификации Blitz Identity Provider (bitrix + slim + react)

Reading time5 min
Views7.9K

В данной статье мы рассмотрим систему аутентификации пользователей и внешних систем в личном кабинете через сервер аутентификации Blitz Identity Provider. 

Согласно требованиям проекта, который мы рассмотрим здесь в качестве примера, взаимодействие клиентской и серверной частей должно происходить по Rest API, реализованном на микрофреймворке Slim. Для авторизации пользователей необходимо провести интеграцию с сервером аутентификации Blitz Identity Provider, который в свою очередь интегрирован с внутренней системой единого входа заказчика (SSO). Это мастер-система, определяющая возможность доступа и уровень доступа пользователя для личного кабинета является Blitz. Поэтому при каждой авторизации пользователя в системе обновляется уровень доступа по данным из Blitz. 

Данные в личный кабинет должны приходить из систем хранения информации (ERP и SRM) и управления учетными записями пользователей, также использующие Rest Api Личного кабинета. Эти системы должны проходить аутентификацию напрямую в ЛК.

Содержание:

Описание системы Blitz Identity Provider и протокола авторизации OAuth 2.0

Схема работы личного кабинета с Blitz

Аутентификация React-приложения в системе

Аутентификация внешних систем

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments7

У Вас проблемы с legacy — значит, Вам повезло! Распил монолита на PHP

Reading time10 min
Views11K

Меня часто просят рассказать о работе с legacy-монолитами. Про микросервисную архитектуру и переход на нее говорят много, но редко упоминают о том, что проекты приходят ней после многих лет роста с монолитным приложением. Учебники по решению проблем не пишут. Чтобы поменять архитектуру живого решения, надо пройти через несколько этапов. Автор работал с разными проектами - и с полноценным multitenancy service-oriented REST architecture, и с огромным монолитом, в репозитории которого были коммиты за десять лет. Эта статья - о темной стороне, о legacy-коде, и практических решениях проблем с монолитным кодом на PHP.

Читать далее
Total votes 22: ↑20 and ↓2+18
Comments69

n8n. Автоматизация ИБ со вкусом смузи

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

В компаниях, где отлажены процессы ИБ, а также в центрах реагирования и мониторинга используется ПО, позволяющее автоматизировать принятия решений по возникающим инцидентам, но даже при этом многим до сих пор приходится писать скрипты для автоматизации рутинных операций. Что делать, если автоматизировать рутину вам хочется, но не хочется покупать дорогостоящее специализированное решение, разбираться с ним и потом долго настраивать его под свои нужды? А еще больше не хочется изобретать велосипед со скриптами и делать нечто свое, попутно изучая программирование и работу с БД? 

Источник

TL;DR: Telegram, REST API, Shodan, DNS-over-HTTPS. Пишем бота в Telegram  для парсинга инфы с shodan и поиска эксплойтов на exploit-db. Находим баг в работе n8n. 

Ответ есть – добро пожаловать во фронтенд со смузи и гироскутерами
Читать дальше →
Total votes 31: ↑31 and ↓0+31
Comments0

Правильное питание — мифы и реальность. Часть 1

Reading time8 min
Views33K
image

В кофейнях вам доступен кофе без кофеина на альтернативном молоке, голливудские звезды сидят на безглютеновых диетах, в модных пекарнях появляются тортики на сахарозаменителе, а уголки с эко-продуктами в супермаркетах предлагают кокосовое масло, вместо растительного… Все подобные нетипичные продукты и предложения принято объединять одним выражением — правильное питание (ПП).


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


Цель этой статьи: исследовать и проверить 5 рекомендаций правильного питания. Какие из них окажутся мифами, а какие — разумными? Кроме того, я объясню, что такое полезный и вредный продукты. Для тех, кому ближе формат блога, на моём YouTube канале «Пролить свет» есть видео по материалу данного мета-анализа.


Читать дальше →
Total votes 42: ↑19 and ↓23-4
Comments42

Все ли вы знаете о useCallback

Reading time7 min
Views118K

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

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

Read more
Total votes 16: ↑14 and ↓2+12
Comments70

Принципы онбординга новых пользователей

Reading time11 min
Views7.1K

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

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

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments1

Введение в Postman

Reading time12 min
Views600K

image


“Разработка API сложна, Postman делает её лёгкой” © Postdot Technologies, Inc

Когда видишь описание инструментов Postman — захватывает дух, просыпается чувство всевластия над своим будущим детищем. Кажется, что и взрощенные в прошлом "монстры" наконец-то падут перед тобой!


В этой статье мы расскажем о Postman и попробуем написать свой первый скрипт.

Читать дальше →
Total votes 39: ↑39 and ↓0+39
Comments43

Как найти удаленную работу в США и Европе: списки ~1000 компаний, полезные инструменты для поиска + личный опыт инженера

Reading time6 min
Views159K


Изображение: Unsplash

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

Я решил разобраться в том, что для этого нужно сделать инженеру с постсоветского пространства. Для этого я изучил компании, которые предлагают remote-позиции для ИТ-специалистов, нашел несколько полезных сервисов и поговорил с Никитой Львовым, инженером, который как раз недавно нашел такую работу и согласился поделиться опытом. Надеюсь, получилось полезно. Поехали!
Читать дальше →
Total votes 57: ↑55 and ↓2+53
Comments20

Война с тормозами. Оптимизация количества рендеров компонентов в React Native

Reading time14 min
Views12K
Привет, Хабр! Меня зовут Камо Сперцян, я занимаюсь React Native разработкой в Profi.ru. Если вы решили воспользоваться технологией React Native для быстрой доставки продуктовых фич и сосредоточились на скорости разработки, то, скорее всего, столкнётесь с проблемами производительности. По крайней мере так случилось с нами. Через полгода активной разработки производительность нашего приложения упала ниже критического уровня — всё дико тормозило. Поэтому мы взялись за оптимизацию — убирали все «тормоза» во время запуска, переходов между экранами, отрисовки экранов, реакций на действия пользователя. В результате за три месяца довели пользовательский опыт до нативного уровня. В этой статье хочу рассказать о том, как мы оптимизировали приложение на React Native и решали проблему многократных ререндеров компонентов.



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

Мы используем React Native в паре с Redux. Часть советов связана с этой библиотекой. Также в примере я использую библиотеку Redux-thunk — для имитации работы с сетью.
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments12

Redis на практических примерах

Reading time11 min
Views105K

Redis — достаточно популярный инструмент, который из коробки поддерживает большое количество различных типов данных и методов работы с ними. Во многих проектах он используется в качестве кэшируещего слоя, но его возможности намного шире. Мы в ManyChat очень любим Redis и активно используем его в нашем продукте для решения огромного количества задач. Про некоторые интересные кейсы использования этой in-memory key-value базы данных я расскажу на примерах. Надеюсь, вам они будут полезны, и вы сможете применить что-то в своих проектах.

Рассмотрим следующие кейсы:

  • Кэширование данных (да, банально и скучно, но это классный инструмент для кэширования и обойти стороной этот кейс, кажется будет не правильно)
  • Работа с очередями на базе redis
  • Организация блокировок (mutex)
  • Делаем систему rate-limit
  • Pubsub — делаем рассылки сообщений на клиенты

Буду работать с сырыми redis командами, чтобы не завязываться на какую-либо конкретную библиотеку, предоставляющую обертку над этими командами. Код буду писать на PHP с использованием ext-redis, но он здесь для наглядности, использовать представленные подходы можно в связке с любым другим языком программирования.


Читать дальше →
Total votes 40: ↑38 and ↓2+36
Comments14

Автоматизация квартиры

Reading time4 min
Views23K

Предыстория


Давняя мечта об автоматизации квартиры начала свое превращение в реальность с покупки квартиры в новостройке. Уже на этапе планирования ремонта вырисовались основные требования к инженерным сетям:

  1. гибкое управление освещением, водоснабжением, вентиляцией, отоплением и силовыми нагрузками;
  2. возможность реализации сценариев;
  3. удаленное управление и оповещение;
  4. централизованное отключение всего освещения;
  5. централизованное отключение неприоритетных нагрузок и водоснабжения;
  6. в перспективе – возможность голосового управления.
Читать дальше →
Total votes 30: ↑27 and ↓3+24
Comments71

Неинвазивные глюкометры: мифы и… мифы

Reading time4 min
Views161K
На мой взгляд, большинство диабетиков живет в будущем. Как только дочери поставили диагноз, в тот же день нам начали говорить, мол, подождите, через 15 лет проблема решится, все будет хорошо.



В целом «футурология в диабете» — тема для одной большой диссертации. Пока же и мы, и другие вынуждены просто улучшать качество компенсации и ждать новые возможности для самоконтроля. Один из вариантов, который обещают — неинвазивный глюкометр. И для тех, кому интересно, я кое-что расскажу об этой нише гаджетов.
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments39

12 советов по внедрению TypeScript в React-приложениях

Reading time9 min
Views36K
TypeScript — стандарт современной фронтенд-разработки. Согласно исследованиям State of JavaScript, TS вызывает явный интерес у программистов. По данным опроса за 2019 год, почти 60% респондентов пробовали TS и продолжают использовать, 22% не пробовали и желают изучить.

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


Читать дальше →
Total votes 60: ↑60 and ↓0+60
Comments43

Переработка архитектуры React Native в 2020 году

Reading time5 min
Views14K
Фреймворк React Native (RN) появился в 2015 году. Он предназначен для разработки кросс-платформенных мобильных приложений с использованием библиотеки React. Эти приложения поддерживают нативные возможности платформ, для которых их создают. У исходной архитектуры React Native были определённые недостатки. Но, несмотря на это, RN получил хорошую поддержку сообщества, его популярность постепенно росла, не в последнюю очередь — благодаря громкой репутации React.



О проекте по перепроектированию архитектуры React Native заговорили в 2018 году. Этой работой занимается команда Facebook. Цель перепроектирования заключается в том, чтобы сделать фреймворк более стабильным, и в том, чтобы решить наиболее распространённые проблемы, накопившиеся в RN за годы разработки. Материал, перевод которого мы сегодня публикуем, посвящён рассмотрению того, как переработка архитектуры RN способна улучшить производительность приложений и скорость работы программистов.
Читать дальше →
Total votes 33: ↑31 and ↓2+29
Comments15

Remote observer

Reading time4 min
Views2.7K

Если проект вышел за рамки локальной машины, скорее всего придётся интегрироваться с какими-нибудь сторонними системами.


Хочу рассмотреть случай, когда упомянутая внешняя система хочет получать уведомления о каких-либо изменениях в нашей системе. Например, обновление каталога товаров.


Задача


Существует торговая площадка, которая предоставляет доступ к своей товарной базе посредством WEB-сервисов. Партнёры площадки хотят узнавать об изменениях в базе в кратчайшие сроки.

Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments4

Опыт инвестиций в акции

Reading time4 min
Views79K
Всем привет. Опрос в моем прошлом посте показал, что людям хотелось бы почитать о моем опыте инвестиций. На данный момент мой ИИС открыт 1 год и 3 месяца назад. Инвестировал я 500 000 рублей за это время.
Читать дальше →
Total votes 52: ↑40 and ↓12+28
Comments165

Использование функции connect() из пакета react-redux

Reading time13 min
Views78K
В статье, перевод которой мы публикуем сегодня, речь пойдёт о том, как создавать в React-приложениях компоненты-контейнеры, которые связаны с состоянием Redux. Этот материал основан на описании механизма управления состоянием в React с применением пакета react-redux. Предполагается, что у вас уже есть базовое понимание архитектуры и API библиотек, о которых мы будем говорить. Если это не так — обратитесь к документации по React и Redux.

image
Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments2

React Native — сохранение фотографий и видео в галерею устройства

Reading time2 min
Views4.8K
Сохранение фотографий и видео на устройство android/ios вызывает у многих разработчиков React Native сложность. В этой статье я покажу как можно легко и безболезненно сохранять фотографии по url на устройство.

Для начала нам понадобятся две библиотеки:
Читать дальше →
Total votes 3: ↑3 and ↓0+3
Comments4

Information

Rating
Does not participate
Registered
Activity