Специфика рендеринга vue.js-приложений на сервере, Алексей КлюевMail.ru Group
– Зачем нужен серверный рендеринг фронтэнд приложению или сайту?
– Какие инструменты стоит применять под задачи проекта?
– Интересные задачи по серверному рендерингу: загрузка данных, разделение сред выполнения кода, и другие.
– На что обращаем внимание при деплое, что замеряем, как анализируем метрики?
Tizen for Wearable Development Gear2 DanilovKirill Danilov
Tizen Developer Summit Russia 2014 #TDSR14
Tizen for Wearable Development Gear2
by Kirill Danilov
Sorry, but in Russian only.
Please, contact me if you need translated version.
Многие аналитики предрекают реактивному программированию большое будущее в решении задач Mobile и Big Data.
TypeSafe, разработчики языка Scala, создали многообещающий реактивный фреймворк Akka, который "дружит" с Java.
Чем он может быть интересен Java-разработчикам? Сможет ли Akka+Java конкурировать с Akka+Scala? И как ей в этом помогут новые фичи Java 8?
Об этом я расскажу в своем докладе "Посмотрим на Акку-Джаву".
Автоматизация нагрузочного тестирования в связке JMeter + TeamСity + Grafana ...Positive Hack Days
1. Описание старого процесса сбора данных о тестах: как было до, что хорошего, что плохого
2. Influxdb, как хранилище time-series данных,
3. Zabbix - мониторинг нагрузочных стендов: windows и linux агенты, активный сбор данных, autodiscovery виртуальных машин в esx
4. Grafana, как способ превратить графики и дашборды в конфетку
5. Автоматизация нагрузки от пользователей через web-UI при помощи Jmeter, отображение статистики в реальном времени, CI в Teamcity
OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)Ontico
При работе над одним проектом обычно не возникает проблем с распределением ресурсов, так как все ресурсы принадлежат одному проекту, но когда появляется второй, третий и т.д., то всегда возникает вопрос контроля и учета ресурсов по каждому проекту в отдельности. Что немаловажно - это удобство процесса распределения.
В докладе будет описан процесс адаптации ванильного OpenStack под нужды сервис-провайдера и представлено наше видение виртуального приватного облака, которое было построено нами на базе OpenStack.
Мы затронем проблемы ванильного OpenStack и расскажем с чем столкнулись на пути его адаптации.
А также представим новую услугу, которую мы запустили, - "Виртуальное приватное облако" - и расскажем о проблемах, которые мы помогаем решать при её помощи.
Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...Yandex
Яндекс.Store — это магазин приложений для устройств на платформе Android. Для безотказной работы ему необходим мощный бэкенд. Мы поговорим об архитектуре сервиса: об особенностях использования MongoDB в высоконагруженных проектах, а также о том, как мы проектировали протокол взаимодействия.
Специфика рендеринга vue.js-приложений на сервере, Алексей КлюевMail.ru Group
– Зачем нужен серверный рендеринг фронтэнд приложению или сайту?
– Какие инструменты стоит применять под задачи проекта?
– Интересные задачи по серверному рендерингу: загрузка данных, разделение сред выполнения кода, и другие.
– На что обращаем внимание при деплое, что замеряем, как анализируем метрики?
Tizen for Wearable Development Gear2 DanilovKirill Danilov
Tizen Developer Summit Russia 2014 #TDSR14
Tizen for Wearable Development Gear2
by Kirill Danilov
Sorry, but in Russian only.
Please, contact me if you need translated version.
Многие аналитики предрекают реактивному программированию большое будущее в решении задач Mobile и Big Data.
TypeSafe, разработчики языка Scala, создали многообещающий реактивный фреймворк Akka, который "дружит" с Java.
Чем он может быть интересен Java-разработчикам? Сможет ли Akka+Java конкурировать с Akka+Scala? И как ей в этом помогут новые фичи Java 8?
Об этом я расскажу в своем докладе "Посмотрим на Акку-Джаву".
Автоматизация нагрузочного тестирования в связке JMeter + TeamСity + Grafana ...Positive Hack Days
1. Описание старого процесса сбора данных о тестах: как было до, что хорошего, что плохого
2. Influxdb, как хранилище time-series данных,
3. Zabbix - мониторинг нагрузочных стендов: windows и linux агенты, активный сбор данных, autodiscovery виртуальных машин в esx
4. Grafana, как способ превратить графики и дашборды в конфетку
5. Автоматизация нагрузки от пользователей через web-UI при помощи Jmeter, отображение статистики в реальном времени, CI в Teamcity
OpenStack: от enterprise к сервис-провайдеру / Сергей Пимков (Селектел)Ontico
При работе над одним проектом обычно не возникает проблем с распределением ресурсов, так как все ресурсы принадлежат одному проекту, но когда появляется второй, третий и т.д., то всегда возникает вопрос контроля и учета ресурсов по каждому проекту в отдельности. Что немаловажно - это удобство процесса распределения.
В докладе будет описан процесс адаптации ванильного OpenStack под нужды сервис-провайдера и представлено наше видение виртуального приватного облака, которое было построено нами на базе OpenStack.
Мы затронем проблемы ванильного OpenStack и расскажем с чем столкнулись на пути его адаптации.
А также представим новую услугу, которую мы запустили, - "Виртуальное приватное облако" - и расскажем о проблемах, которые мы помогаем решать при её помощи.
Архитектура высоконагруженного сервиса на примере бэкенда Яндекс.Store — Андр...Yandex
Яндекс.Store — это магазин приложений для устройств на платформе Android. Для безотказной работы ему необходим мощный бэкенд. Мы поговорим об архитектуре сервиса: об особенностях использования MongoDB в высоконагруженных проектах, а также о том, как мы проектировали протокол взаимодействия.
Порядок для скорости. Система структурирования фронтендовой части веб-приложе...Ontico
Расскажем о системе структурирования и версионности фронтендовой части веб-приложений:
• как вести учет поколений и версий дизайна;
• как проводить анализ консистентности фронтенда;
• как построить автоматическую систему документации по элементам;
• насколько такой подход влияет на общую скорость разработки.
Система структурирования фронтенда в Superjob - это более 200 элементов и 2000 представлений.
При создании интерактивного мобильного или веб-приложений нужна серверная часть, которую будет использовать приложение и разработчик этого приложения. Он должен знать маршруты, по которым можно найти методы, их описание, входные параметры и варианты ответов.
В идеале хочется, чтобы из API можно было мгновенно сгенерировать клиентский код. А ещё реализация метода всегда может измениться, и нужно предусмотреть версионность, чтобы старые клиенты могли продолжать работать без ошибок.
Можно подумать, что реализация этого может занять месяцы, но я покажу, как реализовать это на ASP.NET Core за 20 минут.
JS Lab2017_Redux: время двигаться дальше?_Екатерина ЛизогубоваGeeksLab Odessa
JS Lab2017, 25 марта, Одесса
Redux: время двигаться дальше?
Екатерина Лизогубова (Coach at JavaScript.Ninja)
React + Redux стал стандартом де-факто в разработке приложений на React. Говорим React - подразумеваем Redux. Говорим Redux - подразумеваем React. Однако спустя два года активного использования подобного стека у меня накопилось множество проблем: решаемых и не очень. Так что же - пришло время двигаться дальше на волнах хайпа или старый друг лучше новых двух? Как Redux отравляет жизнь и что с этим делать.
Все материалы: http://jslab.in.ua/
Организаторы: http://geekslab.org.ua/
Евгений Остапчук "Tips&Tricks for ASP.NET MVC performance"Fwdays
On this talk, we will share unusual back streets of ASP.NET MVC for increase performance:
- brief review of usual improvements
- fast and strong typed url generation
- increase Razor performance
Система мониторинга Zabbix в процессах разработки и тестирования | Алексей БуровPositive Hack Days
1. Система мониторинга ресурсов различных отделов
2. Шаблоны и роли серверов, разграничение доступа и зон ответственности
3. ptzabbixtools - конфигурация мониторинга на целевых серверах
4. Пример встраивания системы мониторинга в процессы разработки/тестирования
От простого к сложному: автоматизируем ручные тест-планы | Сергей ТимченкоPositive Hack Days
1. Смотрим по сторонам - обычный процесс авто-тестирования
2. Убираем лишнее - реалистичный целевой процесс
3. DataDrivenTesting - создание спец. инструментов для конкретных сценариев
4. RobotFramework - что делать, если простых сценариев слишком много
Инструментарий для создания дистрибутивов продуктов | Владимир СелинPositive Hack Days
1. Что такое дистрибутив большого продукта?
2. Проблема: знаниями о процессе установки продукта владеет малое число людей.
3. Шаблоны + DSL - решение всех проблем!
Преждевременная оптимизация архитектуры / Евгений Потапов, Антон Баранов (ITS...Ontico
Работа в высоконагруженных проектах всегда была такой сферой деятельности, где можно в рамках решения прикладных задач находить и применять сложные и интересные решения.
К сожалению, очень часто во главу угла ставится не надежное решение поставленной задачи, а именно применение сложного и интересного решения, которое даст специалисту новый опыт и удовольствие от сложных архитектур.
В своем докладе я хочу пройтись по тем стандартным "набитым шишкам", которые мы встречаем в своей работе, когда сложное, новое и интересное решение не означает стабильность системы.
1. Когда "интересно" не значит "правильно"?
1.1. Специфика развития высоконагруженного проекта.
1.2. Требования бизнеса и современные технологии.
1.3. Типичные "сомнительные" решения.
2. Проблемы в архитектуре отказоустойчивых систем.
2.1. Ошибки в планировании резервирования.
2.2. Ошибки в планировании системы выкладок.
2.3. Ошибки в архитектурах систем хранения данных.
3. Проблемы в архитектуре систем, рассчитанных на высокую нагрузку.
3.1. Ошибки в планировании мощностей системы.
3.2. Ошибки в планировании возможностей масштабирования системы.
3.3. Ошибки в архитектурах систем хранения данных.
Аспектно-ориентированное программирование (АОП) на примере PostSharpOlga Lavrentieva
Данная презентация Александра Протасени, .NET-разработчика в Альторосе, демонстрирует:
1) сферы применения аспектно-ориентированного программирования на примере библиотеки PostSharp
2) типичные ошибки, достоинства и недостатки
3) примеры Lazy Loading и т.д.
Презентация была представлена на внутреннем .NET-баркэмпе компании.
Кирилл Комлев. О реализации continuous integration для web проектовOlesya_V
Доклад на конференции WebDev 2015
С развитием веб-проектов в качестве SaaS по agile-технологиям основной проблемой становиться своевременной обновление разрабатываемого ПО на множестве подконтрольных доменов. В этом случае достаточно удобно использовать системы непрерывной интеграции, которые позволяют оценить новый код, произвести тестирование и развертывание веб-проекта. В докладе представлена общая картинка организации системы непрерывной интеграции и рассмотрены основные инструменты для тестирования, оценки качества кода и организации развертывания веб-проекта под UNIX-подобные системы с использованием бесплатного ПО.
Порядок для скорости. Система структурирования фронтендовой части веб-приложе...Ontico
Расскажем о системе структурирования и версионности фронтендовой части веб-приложений:
• как вести учет поколений и версий дизайна;
• как проводить анализ консистентности фронтенда;
• как построить автоматическую систему документации по элементам;
• насколько такой подход влияет на общую скорость разработки.
Система структурирования фронтенда в Superjob - это более 200 элементов и 2000 представлений.
При создании интерактивного мобильного или веб-приложений нужна серверная часть, которую будет использовать приложение и разработчик этого приложения. Он должен знать маршруты, по которым можно найти методы, их описание, входные параметры и варианты ответов.
В идеале хочется, чтобы из API можно было мгновенно сгенерировать клиентский код. А ещё реализация метода всегда может измениться, и нужно предусмотреть версионность, чтобы старые клиенты могли продолжать работать без ошибок.
Можно подумать, что реализация этого может занять месяцы, но я покажу, как реализовать это на ASP.NET Core за 20 минут.
JS Lab2017_Redux: время двигаться дальше?_Екатерина ЛизогубоваGeeksLab Odessa
JS Lab2017, 25 марта, Одесса
Redux: время двигаться дальше?
Екатерина Лизогубова (Coach at JavaScript.Ninja)
React + Redux стал стандартом де-факто в разработке приложений на React. Говорим React - подразумеваем Redux. Говорим Redux - подразумеваем React. Однако спустя два года активного использования подобного стека у меня накопилось множество проблем: решаемых и не очень. Так что же - пришло время двигаться дальше на волнах хайпа или старый друг лучше новых двух? Как Redux отравляет жизнь и что с этим делать.
Все материалы: http://jslab.in.ua/
Организаторы: http://geekslab.org.ua/
Евгений Остапчук "Tips&Tricks for ASP.NET MVC performance"Fwdays
On this talk, we will share unusual back streets of ASP.NET MVC for increase performance:
- brief review of usual improvements
- fast and strong typed url generation
- increase Razor performance
Система мониторинга Zabbix в процессах разработки и тестирования | Алексей БуровPositive Hack Days
1. Система мониторинга ресурсов различных отделов
2. Шаблоны и роли серверов, разграничение доступа и зон ответственности
3. ptzabbixtools - конфигурация мониторинга на целевых серверах
4. Пример встраивания системы мониторинга в процессы разработки/тестирования
От простого к сложному: автоматизируем ручные тест-планы | Сергей ТимченкоPositive Hack Days
1. Смотрим по сторонам - обычный процесс авто-тестирования
2. Убираем лишнее - реалистичный целевой процесс
3. DataDrivenTesting - создание спец. инструментов для конкретных сценариев
4. RobotFramework - что делать, если простых сценариев слишком много
Инструментарий для создания дистрибутивов продуктов | Владимир СелинPositive Hack Days
1. Что такое дистрибутив большого продукта?
2. Проблема: знаниями о процессе установки продукта владеет малое число людей.
3. Шаблоны + DSL - решение всех проблем!
Преждевременная оптимизация архитектуры / Евгений Потапов, Антон Баранов (ITS...Ontico
Работа в высоконагруженных проектах всегда была такой сферой деятельности, где можно в рамках решения прикладных задач находить и применять сложные и интересные решения.
К сожалению, очень часто во главу угла ставится не надежное решение поставленной задачи, а именно применение сложного и интересного решения, которое даст специалисту новый опыт и удовольствие от сложных архитектур.
В своем докладе я хочу пройтись по тем стандартным "набитым шишкам", которые мы встречаем в своей работе, когда сложное, новое и интересное решение не означает стабильность системы.
1. Когда "интересно" не значит "правильно"?
1.1. Специфика развития высоконагруженного проекта.
1.2. Требования бизнеса и современные технологии.
1.3. Типичные "сомнительные" решения.
2. Проблемы в архитектуре отказоустойчивых систем.
2.1. Ошибки в планировании резервирования.
2.2. Ошибки в планировании системы выкладок.
2.3. Ошибки в архитектурах систем хранения данных.
3. Проблемы в архитектуре систем, рассчитанных на высокую нагрузку.
3.1. Ошибки в планировании мощностей системы.
3.2. Ошибки в планировании возможностей масштабирования системы.
3.3. Ошибки в архитектурах систем хранения данных.
Аспектно-ориентированное программирование (АОП) на примере PostSharpOlga Lavrentieva
Данная презентация Александра Протасени, .NET-разработчика в Альторосе, демонстрирует:
1) сферы применения аспектно-ориентированного программирования на примере библиотеки PostSharp
2) типичные ошибки, достоинства и недостатки
3) примеры Lazy Loading и т.д.
Презентация была представлена на внутреннем .NET-баркэмпе компании.
Кирилл Комлев. О реализации continuous integration для web проектовOlesya_V
Доклад на конференции WebDev 2015
С развитием веб-проектов в качестве SaaS по agile-технологиям основной проблемой становиться своевременной обновление разрабатываемого ПО на множестве подконтрольных доменов. В этом случае достаточно удобно использовать системы непрерывной интеграции, которые позволяют оценить новый код, произвести тестирование и развертывание веб-проекта. В докладе представлена общая картинка организации системы непрерывной интеграции и рассмотрены основные инструменты для тестирования, оценки качества кода и организации развертывания веб-проекта под UNIX-подобные системы с использованием бесплатного ПО.
Юлия Цисык «RESTFul API в вашем.NET приложении: как, зачем и почему?»Yulia Tsisyk
Ни один современный продукт не обходится без API. Этот API может быть внешним, для публичного использования, а может быть сугубо внутренним, но требования к созданию расширяемого, версионируемого, тестируемого, документированного программного интерфейса очень похоже. В этом докладе мы поговорим о том, как создавать подобные API на основе REST, какие существуют best-practices, чего следует избегать, на что обращать внимание при проектировании.
Построение собственного JS SDK — зачем и как?buranLcme
Многие разработчики любят делать свои велосипеды, но не все задумываются зачем. Мы расскажем о том, зачем вам может понадобится собственный JavaScript SDK и полезно ли кататься на велосипедах.
Мы делали собственный JS SDK для того, чтобы дать возможность создания плагинов в рамках большой enterprise системы - <b>Parallels Automation</b> и <b>Plesk Panel</b>. Сам SDK является частью общего стандарта <b>APS</b>, который является шиной, объединяющей все наши продукты по автоматизации. Обе панели брендируются и мы должны были сохранить брендинг при уже существующей кодовой базе верстки и существующих правилах оформления. И главное - надо было дать возможность создания UI сторонним девелоперам, которые могут иметь абсолютно разный уровень - от пришедших бекэндеров до профессиональных js-разработчиков.
Архитектура кода нового 2ГИС Web API или куда мы дели MVCDevDay
Сергей Коржнев
Архитектор версии 1.4 2ГИС Web API
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Тезисы:
● Как организован код в старой версии.
● Вдумчиво смотрим, как мы используем Yii, хватаемся за голову и клавиатуру. Там отрезаем, тут пришиваем, и вуаля!
● Ну и делаем выводы, как мы забороли две классические проблемы программирования: борьба с дублированием кода и сложностью системы.
Презентация с технической секции #BitByte - фестиваля профессионального развития, который прошел 19 мая в Санкт-Петербурге.
Даниил Павлючков, Team Lead компании ITMozg: «REST: от GET до HMAC или как создать качественное REST API».
Переход с Objective-C на Swift — все ли так просто? / Олег Алексеенко (SuperJob)Ontico
РИТ++ 2017, App's Conf
Зал Найроби, 6 июня, 10:00
Тезисы:
http://appsconf.ru/2017/abstracts/2818.html
Ни для кого не секрет, что Swift — это mainstream: его активно продвигает Apple, на нем пишутся все новые фреймворки, многие разработчики начинают именно с него. Но так ли просто мигрировать c Objective-С, если твоему приложению 5 лет и оно имеет большую аудиторию? В докладе мы расскажем о том, как сделать это без ущерба для бизнеса.
Вы узнаете об этапах такого перехода:
1. Какую бизнес-проблему решали? - Ускоряем разработку, уменьшаем количество багов, проще и быстрее находим новых сотрудников, ограждаем от будущих рисков (старых не поддерживаемых фреймворков, устаревших АПИ).
...
В докладе будет рассказано и показано, как расширить возможности стандартного ASP.NET MVC3 web-приложения, используя браузерный native-плагин, написанный на языке C++. Будет показано применение фреймворка FireBreath, позволяющего легко создавать гибкие, кроссплатформенные и кроссбраузерные плагины. Будут затронуты вопросы взаимодействия managed-кода на C# с native-кодом на C++, а также показаны возможности по вызову кода на C++/C# из клиентского JavaScript-кода web-страницы. Применение вышеназванных технологий будет показано на примерах, одним из которых является разработанный для нужд системы электронного документооборота плагин, позволяющий осуществлять взаимодействие со сканером документов, подключенным к компьютеру клиента, из кода на JavaScript.
Также будет даваться краткое описание других технологий, связанных с выполнением браузером не специфичных для него функций: NaCl, Pepper, и приведено сравнение этих технологий.
В рамках доклада я хотел бы рассмотреть сложности, которые мы испытываем с построением инфраструктуры распределенных систем.
Можно ли строить приложения и не думать о серверах и контейнерах? Насколько это будет дорого?
Ответить на эти вопросы помогут принципы «Бессерверной архитектуры». На простых примерах мы рассмотрим из чего состоит приложение, не зависящее от серверов. А также, рассмотрим возможности, которые предоставляют популярные провайдеры облачных сервисов, для построения таких приложений.
В мире автоматизации давным-давно успешно используют W3C Webdriver HTTP протокол. С его помощью реализовано множество проектов и библиотек на различных языках (selenide, protractor, webdriverio и тысячи других). Но так же в последнее время все больше и больше команд решают использовать Chrome Debug Protocol, в частности инструмент Puppeteer. Он основан на WebSockets, и имеет свои особые возможности - двухсторонняя связь, возможность подписки на события в браузере, и многое другое. В этом докладе мы посмотрим возможности обоих протоколов, поэкспериментируем и совместим их вместе в одном проекте, чтобы заставить браузер работать на полную и взять лучшее от двух каналов связи.