Pull to refresh
7
0
Максим Захаров @maksim-zakharov

Team lead Angular

Send message

Создание микросервисной архитектуры с использованием single-spa (миграция существующего проекта)

Reading time 14 min
Views 19K
image

Это первая статья по в данной теме, всего их планируется 3:

  1. * Создание root application из вашего существующего проекта, добавление в него 3 микро-приложения (vue, react, angular)
  2. Общение между микро-приложениями
  3. Работа с git (deploy, обновления)

Оглавление


  1. Общая часть
  2. Зачем это нужно
  3. Создание root контейнера (определение см. ниже) из вашего монолита
  4. Создаем микро-приложение VUE (vue-app)
  5.  Создаем микро-приложение REACT (react-app)
  6.  Создаем микро-приложение ANGULAR (angular-app)

1. Общая часть


Задача этой статьи: добавить возможность использовать существующий монолитный проект как root контейнер для микросервисной архитектуры.
Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Comments 12

Customer Development для стартапов или что можно понять из разговора с 500 клиентами

Reading time 5 min
Views 15K


Помните, как в военных фильмах у военачальников был «красный» телефон? На крайний случай, когда ситуация выходит из-под контроля и ничего не остается, как приказать: «соедините меня с главнокомандующим!»

Нечто подобное существует и для основателей стартапов, когда основные показатели по выручке и конверсиям расходятся с вашими планами как в море корабли. Что делать, куда бежать, за что хвататься? Можно «забуриться» в метрики, проанализировать места «утечки по всей воронке», от лидов до постоянных клиентов. Можно посоветоваться с экспертами, протестировать заголовки, лид-форму, кнопки и прочие конверсионные элементы на сайте.

А можно схватиться за «красный» телефон. Только вместо президента — ваши клиенты. Так поступил основатель SaaS-компании Groove Алекс Тернбулл. Для оптимизации продукта он решил просто поговорить с клиентами сервиса. Потому что никакая аналитика с тоннами цифр не поможет понять пользовательский опыт лучше, чем о нем расскажут сами пользователи.

Алекс провел более 100 часов в общении с подписчиками. И вот чему он научился.
Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Comments 7

Web scraping при помощи Node.js

Reading time 10 min
Views 144K

Это первая статья в цикле про создание и использование скриптов для веб-скрейпинга при помощи Node.js.


  1. Web scraping при помощи Node.js
  2. Web scraping на Node.js и проблемные сайты
  3. Web scraping на Node.js и защита от ботов
  4. Web scraping обновляющихся данных при помощи Node.js

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


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


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

Читать дальше →
Total votes 23: ↑17 and ↓6 +11
Comments 44

Пол Грэм: Как найти идею для стартапа (часть первая)

Reading time 5 min
Views 187K

Недавно вышла статья Пола Грэма о поиске идеи для стартапа. Грем — сам по себе культовая личность Кремниевой долины и уже только поэтому достоин внимания. Но на мой взгляд, эта статья одна из лучших в своем роде. Да, о Customer Development и Lean Startup сейчас не пишет разве что ленивый, но она отличается глубокой внутренней философией Грема и обобщает его богатый опыт в качестве основателя YCombinator, общающегося с тысячами стартаперов в год.
Статья очень длинная, поэтому я взял на себя смелость разбить ее на 5 частей, дабы никого не утомить. Поехали:


Лучший способ найти идею для стартапа — не думать о ней. Найдите проблему, и лучше — если она есть у вас самого.
Читать дальше →
Total votes 66: ↑60 and ↓6 +54
Comments 32

Микрофронтенды: о чем это мы?

Reading time 10 min
Views 67K
Все эти годы вы, frontend-разработчик, писали монолиты, хотя и понимали, что это дурная привычка. Вы делили свой код на компоненты, использовали require или import и определяли npm-пакеты в package.json или плодили гит-репозитории в вашем проекте, но все равно писали монолит.
Пришло время изменить положение.
Читать дальше →
Total votes 23: ↑22 and ↓1 +21
Comments 18

Декларативный шопинг в интернете с помощью Payment Request API и Angular

Reading time 5 min
Views 5.2K
Как давно вы платили на веб-сайте в один клик с помощью Google Pay, Apple Pay или заранее заданной в браузере картой?

У меня такое получается редко.

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

Это не очень удобно. Особенно когда знаешь об альтернативе: в последние пару лет стандарт Payment Request API позволяет легко решать эту проблему в современных браузерах.

Давайте разберемся, почему его не используют, и попробуем упростить работу с ним.


Читать дальше →
Total votes 25: ↑25 and ↓0 +25
Comments 4

Как стать тимлидом фронтендеров и как жить после этого — расшифровка эфира

Reading time 15 min
Views 12K
15 июня в нашем инстаграм-аккаунте прошел прямой эфир с Ильей, руководителем фронтенд-разработки в Яндекс.Деньги. Выкладываем запись эфира и расшифровку.



Меня зовут Илья, я работаю в компании Яндекс.Деньги и руковожу фронтендом. До этого был бэкенд-разработчиком, писал на C#, около 5 лет назад перешел во фронтенд. Чуть больше года руковожу. Вот такой путь развития. Еще активно участвую в Burning Lead – это сообщество для ведущих разработчиков, тимлидов, людей, которые так или иначе пересекаются с задачами управления; надеюсь, ребята из сообщества слушают стрим.
Total votes 41: ↑39 and ↓2 +37
Comments 4

Пишем интеграционные тесты на фронтэнд и ускоряем релизы

Reading time 18 min
Views 19K
Всем привет! Меня зовут Вова, я фронтэндер в Тинькофф. Наша команда отвечает за два продукта для юридических лиц. О размерах продукта я могу сказать цифрами: полный регресс каждого из продуктов двумя тестировщиками проходит от трех дней (без влияния внешних факторов).

Сроки значительные и напрашиваются на борьбу с ними. Способов борьбы несколько, основные из них:

  • Распил приложения на более мелкие продукты со своими релизными циклами.
  • Покрытие продукта тестами в соответствии с тестовой пирамидой.

Последний пункт и стал темой моей статьи.

image
Читать дальше →
Total votes 33: ↑33 and ↓0 +33
Comments 10

Разработка торговых роботов: история проекта StockSharp

Reading time 4 min
Views 21K
В нашем блоге мы много пишем о технологиях, связанных с фондовым рынком (например, соответствующих протоколах передачи данных — раз, два, три). Существует огромное количество биржевого софта, процесс создания которого довольно интересен. Ранее мы рассказывали о разработке торгового терминала SmartX, а сегодня представляем вам историю разработчиков проекта по созданию торговых роботов StockSharp.



В этой статье мы расскажем о нашем продукте StockSharp, который создаем уже долгие годы. Зачем мы это делаем, кому он нужен, какие преимущества и какие перспективы. Статья разбита на отдельные разделы, но читать лучше по порядку.
Читать дальше →
Total votes 14: ↑10 and ↓4 +6
Comments 1

Высокопроизводительный код на платформе .NET

Reading time 16 min
Views 34K
Здравствуйте, дорогие читатели!

Не так давно мы занялись проработкой книги "Writing High-Performance .NET code", которая до сих пор не переведена на русский язык, хотя ей и скоро год.



Нас, конечно, не удивило, что такую книгу уже растаскивают на цитаты, однако выяснилось, что уважаемый автор Бен Уотсон даже выложил на сайте «Codeproject» целую статью, написанную по мотивам одной из глав. К сожалению, объем этого материала слишком велик для хабропубликации, однако мы решили все-таки перевести первую часть статьи, чтобы вы могли оценить материал книги. Приглашаем к прочтению и к участию в опросе. Кроме того, если все-таки целесообразно перевести и вторую часть — пишите в комментариях, постараемся учесть ваши пожелания.
Читать дальше →
Total votes 31: ↑30 and ↓1 +29
Comments 12

Удаленное управление роботом Lego Mindstorms по JMX и IP Video

Reading time 7 min
Views 19K
Основной модуль конструктора Lego Mindstorms EV3 может работать с прошивкой leJOS, позволяющей запускать Java-приложения. Специально для этого Oracle выпустил и поддерживает отдельную версию полноценной Java SE.

Нормальная JVM позволила мне использовать встроенный в нее протокол Java Management Extensions (JMX), чтобы реализовать удаленное управление роботом-манипулятором. Для объединения управляющих элементов, показаний датчиков и картинок с установленных на роботе IP-камер используется мнемосхема, сделанная на платформе AggreGate.


Читать дальше →
Total votes 23: ↑22 and ↓1 +21
Comments 6

Уязвимость в Xamarin для Android: подменяем dll и едим бесплатно

Reading time 2 min
Views 28K

Введение


Эта история началась еще прошлым летом: мы с друзьями ночью зашли в заведение быстрого питания, которое только-только внедрило мобильное скидочное приложение. Приложение было установлено, бесплатная еда получена, трафик сохранен в .pcap-файл, и, естественно, было желание покопаться в нем, узнать, как оно работает. Программа оказалась написана на C# с использованием мультиплатформенного фреймворка для разработки мобильных приложений Xamarin; в то время apktool не мог правильно собрать измененный apk и завершался с ошибкой. Долгое время я пользовался этим приложением, накапливал баллы, тратил их, иногда натыкаясь на посты о накрутках на форумах, однако, аккаунты накрутчиков довольно быстро банили.

Азарт и желание что-то исследовать, как это обычно у меня случается, не появляется из ниоткуда. На этот раз спонсором выступил вор, который упер у меня кошелек со всеми банковскими карточками, и у меня не было иного выхода, кроме как купить себе обед в этом заведении, предварительно накрутив баллы. Да и кофе я, в отличие от @Chikey, не люблю. Однако, статья совсем не об этом.

image
Измененное название чрезвычайно похоже на настоящее название заведения
Читать дальше →
Total votes 41: ↑33 and ↓8 +25
Comments 18

Как я однажды взломал онлайн-казино

Reading time 7 min
Views 126K
Вдохновившись рассказом Chikey о том, как он вновь «сломал интернет» Егор прекрати уже ломать все подряд, займись делом каким-нибудь, решил поведать об одной истории с довольно известным за рекой онлайн-казино. Имя этой «организации» не называю, т.к. процентов на 50 уверен, что или совсем не пофиксили, или сделали кривее, чем было до этого.

История очень похожа на взлом Егора, за исключением того, что это не совсем рэйс, вернее, совсем не race condition в чистом его виде. Как оно будет полностью не знаю, я больше практик, чем теоретик. Назовем его «conditional race condition» — хоть и масло масляное, но суть отражает верно.

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

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

Завел себе аккаунт, и поехали…
Читать дальше →
Total votes 132: ↑110 and ↓22 +88
Comments 72

Уязвимость «ВКонтакте» позволяла получить прямые ссылки на приватные фотографии

Reading time 8 min
Views 314K


tl;dr
Была обнаружена уязвимость в закладках ВК, которая позволяла получать прямые ссылки на приватные фотографии из личных сообщений, альбомов любого пользователя/группы. Был написан скрипт, который перебирал фотографии пользователя за определенный период и затем, через эту уязвимость получал прямые ссылки на изображения. Если коротко, то: можно было за 1 минуту получить все ваши вчерашние фотографии, за 7 минут — все фото, загруженные на прошлой неделе, за 20 минут — прошлый месяц, за 2 часа — прошлый год. Уязвимость на данный момент исправлена. Администрация ВКонтакте выплатила вознаграждение в 10к голосов.

История началась с того, как мне в личку во «Вконтакте» кинули изображение. Обычно, если вещь важная, я её загружаю в облако, но в моём случае в этом не было необходимости, и я решил воспользоваться функцией закладок «Вконтакте».
Читать дальше →
Total votes 154: ↑150 and ↓4 +146
Comments 58

Отправляем SMS из .Net приложения на C#

Reading time 7 min
Views 61K

Все что нам понадобится для отправки SMS это 3G USB модем, SIM карта, Visual Studio и немного времени. Моей целью не является описать все возможные настройки COM порта или формата PDU. Я хотел бы предоставить вам готовое решение, которое можно использовать в качестве сниппета в своих проектах.
В качестве примера рассмотрим 2 консольных приложения. Почему консольных? Да потому, что в них нет ничего лишнего и проще разобрать код. Почему два? Потому, что есть два распространенных варианта отправки сообщений. Самый простой вариант – это отправка сообщений в текстовом режиме. Минусом этого варианта является то, что он не поддерживает отправку кириллицы. Плюсом то, что возможна отправка 160-ти символов. Второй вариант, более сложный, позволяет отправлять текст длиной до 70-ти символов в формате Unicode.
Читать дальше →
Total votes 24: ↑20 and ↓4 +16
Comments 22

Microsoft запустила новую мобильную ОС — MS-DOS Mobile

Reading time 1 min
Views 65K


Воистину история движется по спирали. На рынке мобильных ОС появился новый игрок. Сегодня компания Microsoft анонсировала новую мобильную операционную систему для смартфонов Lumia — MS-DOS Mobile.

В MS-DOS Mobile есть несколько предустановленных программ, а дизайн прост и лаконичен. Промо-видео новой ОС и ссылка на установку под катом
Читать дальше →
Total votes 70: ↑51 and ↓19 +32
Comments 29

С сегодняшнего дня компания Intel управляется компьютером

Reading time 3 min
Views 48K


Компания Intel сообщает о завершении подготовительного этапа масштабного эксперимента, начатого более 3 лет назад. Суть эксперимента заключается во внедрении элементов искусственного разума в процедуры управления компанией. С сегодняшнего дня одним из топ-менеджеров Intel является компьютер, точнее, целый дата-центр, специально созданный для этих нужд. Вот уж, воистину, слава роботам! Именно этот дата-центр, который сейчас заполняется серверами, вы видите на КДПВ. Предполагается, что система выйдет на полную мощность к началу следующего года.
Читать дальше →
Total votes 82: ↑65 and ↓17 +48
Comments 27

Программируем квадрокоптер на Arduino (часть 1)

Reading time 18 min
Views 355K


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

У нас впереди:
  1. Базовые понятия (для начинающих коптероводов).
  2. PID-регуляторы с интерактивной web-демонстрацией работы на виртуальном квадрокоптере.
  3. Собственно программа для Arduino и настроечная программа на Qt.
  4. Опасные тесты квадрокоптера на веревке. Первые полёты.
  5. Крушение и потеря в поле. Автоматический поиск с воздуха средствами Qt и OpenCV.
  6. Окончательные успешные тесты. Подведение итогов. Куда дальше?

Материал объемный, но постараюсь уложиться в 2-3 статьи.
Сегодня нас ожидает: спойлер с видео, как наш квадрокоптер полетел; базовые понятия; PID-регуляторы и практика подбора их коэффициентов.
Читать дальше →
Total votes 107: ↑106 and ↓1 +105
Comments 96

Квадрокоптер своими руками: Часть I

Reading time 4 min
Views 342K
ВНИМАНИЕ, статья устарела, но её всё еще можно использовать в ознакомительных целях
Как и обещал, как только полечу — напишу полноценный пост по поводу сборки своего летающего агрегата. Наверняка многие давно посмотрели как «обычный» офисный сотрудник собирает это за 2 часа, сразу отмечу что я не «обычный» офисный работник, поэтому летчик из меня пока не очень, но важно что квадрокоптер летает и адекватно реагирует на управление. Первое и самое главное — если решили собирать, не экономьте и не думайте что вы умнее тех кто уже летает, так же учтите, что теория несколько расходится с практикой.
Есть большое число прошивок, готовых контроллеров, вариантов датчиков, моторов и т.д. и т.п. — выбрать есть из чего, но в статье остановлюсь только на одном варианте, основанном на Arduino Mega, прошивке MegaPirate и относительно дешевых датчиках.
много интересного читаем тут
Total votes 140: ↑135 and ↓5 +130
Comments 85

Information

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