Adn@it'summer - Как ленивые фронтенды себе жизнь упрощают ADN Digital Studio
У frontend-разработчиков есть боль:
1. Огромные CSS файлы
2. Невозможно переиспользовать код
3. Сложности поддержки проектов
4. Склеивание и минификация файлов
5. Префиксы для css3
6. Работа со спрайтами
7. Невозможность использовать новые фичи javasccript
И мы хотим поговорить об этом
Разработка API для большого, нагруженного сервисаendeveit
Рассказ о том, что творилось с проектами kolesa.kz и krisha.kz в 2011-2012 годах и что происходит сейчас, как мы создавали с нуля API и впоследствии переезжали на него, как на лету меняли хранилища данных, как боролись с нагрузками и воевали за надежность, расскажу о граблях на которые наступили и как их можно было бы избежать.
Субъективная точка зрения на фронтенд разработку.
Площадка: IT-бар КЛЮЧ, https://vk.com/event69759919
Видео с доклада: https://www.youtube.com/watch?v=pyAYbbDJjPo
Adn@it'summer - Как ленивые фронтенды себе жизнь упрощают ADN Digital Studio
У frontend-разработчиков есть боль:
1. Огромные CSS файлы
2. Невозможно переиспользовать код
3. Сложности поддержки проектов
4. Склеивание и минификация файлов
5. Префиксы для css3
6. Работа со спрайтами
7. Невозможность использовать новые фичи javasccript
И мы хотим поговорить об этом
Разработка API для большого, нагруженного сервисаendeveit
Рассказ о том, что творилось с проектами kolesa.kz и krisha.kz в 2011-2012 годах и что происходит сейчас, как мы создавали с нуля API и впоследствии переезжали на него, как на лету меняли хранилища данных, как боролись с нагрузками и воевали за надежность, расскажу о граблях на которые наступили и как их можно было бы избежать.
Субъективная точка зрения на фронтенд разработку.
Площадка: IT-бар КЛЮЧ, https://vk.com/event69759919
Видео с доклада: https://www.youtube.com/watch?v=pyAYbbDJjPo
Михаил Корепанов "Инкрементальные обновления на клиенте"Yandex
С развитием веб-технологий сайты стали уже не просто информационными ресурсами, а полноценными приложениями. Такие приложения используют большое количество статических ресурсов, общий объем которых часто превышает 1 МБ. В условиях постоянных обновлений встает вопрос о том, как наиболее эффективно загружать ресурсы при выходе новых версий. В докладе рассказано про существующие техники обновления, которые позволяют загружать не целиком новые ресурсы, а только «разницу» между новой и старой версией.
На Я.Субботнике в Риге мы рассказали вам о том, как мы придумали и написали инструмент, и чего в теории мы ожидали им добиться. На Я.Субботнику в Киеве мы показали вам реальные цифры.
Особенности работы backend для мобильных приложений или Python Django UWSGI в...Mail.ru Group
Доклад посвящен жизни проектов в продакшен. Речь пойдет о связке Python-Django-Uwsgi для backend мобильных приложений, настройке серверов, измерении времени и оценке качества работы backend. Также спикер расскажет о профилировании Django, Memcached в Python.
Документирование блоков. Раскрываем все плюсыYandex
Документирование блоков. Раскрываем все плюсы
Мы поговорим о том, как разрабатывается техническая документация к библиотеке bem-components и почему разделение интерфейса на блоки облегчает работу с документами как техническим писателям, так и разработчикам. А также о том, как мы выкладываем всю информацию по каждому блоку с примерами и JSDoc на наш сайт ru.bem.info.
Инна Белая, Яндекс
Разработчик технической документации в бригаде документирования БЭМ. В Яндексе с 2013 года.
Антон Пискунов. Независимый разработчик.
«BeeGo для веб-приложений, API и демонов»
- Почему BeeGo? vs Revel and another guys.
- Что мы пишем на BeeGo? Наш личный опыт.
- Как написать облачный стартап и инфраструктурные сервисы на BeeGo за две недели.
- Sweet API, нэймспейсы и автодокументация.
- Демонизация BeeGo, к чему мы пришли?
- Разработчики, мэйнтейнинг, существующие проблемы
http://go-meetup-spb.timepad.ru/event/169777/
Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...Ontico
Microsoft Edge -- новый браузер от Microsoft с новым движком и новым интерфейсом.
Какие цели преследует Microsoft, и что это нововведение означает для веб-разработчиков?
Что нового в движке браузера по сравнению с IE, и как он будет развиваться дальше?
Движок Edge внутри Windows 10: хостинг сайтов внутри приложений и доступ к нативной функциональности.
Дорожная карта: к чему и когда готовиться?
Михаил Корепанов "Инкрементальные обновления на клиенте. Ловкость рук и никак...Yandex
С развитием веб-технологий сайты стали уже не просто информационными ресурсами, а полноценными приложениями. Такие приложения используют большое количество статических ресурсов, общий объем которых часто превышает 1 МБ. При условии частых обновлений встает вопрос: "Как наиболее эффективно загружать ресурсы при выходе новых версий?". В докладе будет рассказано про существующие техники обновления, которые позволяют загружать не целиком новые ресурсы, а только «разницу» между новой и старой версией.
Михаил Корепанов "Инкрементальные обновления на клиенте"Yandex
С развитием веб-технологий сайты стали уже не просто информационными ресурсами, а полноценными приложениями. Такие приложения используют большое количество статических ресурсов, общий объем которых часто превышает 1 МБ. В условиях постоянных обновлений встает вопрос о том, как наиболее эффективно загружать ресурсы при выходе новых версий. В докладе рассказано про существующие техники обновления, которые позволяют загружать не целиком новые ресурсы, а только «разницу» между новой и старой версией.
На Я.Субботнике в Риге мы рассказали вам о том, как мы придумали и написали инструмент, и чего в теории мы ожидали им добиться. На Я.Субботнику в Киеве мы показали вам реальные цифры.
Особенности работы backend для мобильных приложений или Python Django UWSGI в...Mail.ru Group
Доклад посвящен жизни проектов в продакшен. Речь пойдет о связке Python-Django-Uwsgi для backend мобильных приложений, настройке серверов, измерении времени и оценке качества работы backend. Также спикер расскажет о профилировании Django, Memcached в Python.
Документирование блоков. Раскрываем все плюсыYandex
Документирование блоков. Раскрываем все плюсы
Мы поговорим о том, как разрабатывается техническая документация к библиотеке bem-components и почему разделение интерфейса на блоки облегчает работу с документами как техническим писателям, так и разработчикам. А также о том, как мы выкладываем всю информацию по каждому блоку с примерами и JSDoc на наш сайт ru.bem.info.
Инна Белая, Яндекс
Разработчик технической документации в бригаде документирования БЭМ. В Яндексе с 2013 года.
Антон Пискунов. Независимый разработчик.
«BeeGo для веб-приложений, API и демонов»
- Почему BeeGo? vs Revel and another guys.
- Что мы пишем на BeeGo? Наш личный опыт.
- Как написать облачный стартап и инфраструктурные сервисы на BeeGo за две недели.
- Sweet API, нэймспейсы и автодокументация.
- Демонизация BeeGo, к чему мы пришли?
- Разработчики, мэйнтейнинг, существующие проблемы
http://go-meetup-spb.timepad.ru/event/169777/
Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...Ontico
Microsoft Edge -- новый браузер от Microsoft с новым движком и новым интерфейсом.
Какие цели преследует Microsoft, и что это нововведение означает для веб-разработчиков?
Что нового в движке браузера по сравнению с IE, и как он будет развиваться дальше?
Движок Edge внутри Windows 10: хостинг сайтов внутри приложений и доступ к нативной функциональности.
Дорожная карта: к чему и когда готовиться?
Михаил Корепанов "Инкрементальные обновления на клиенте. Ловкость рук и никак...Yandex
С развитием веб-технологий сайты стали уже не просто информационными ресурсами, а полноценными приложениями. Такие приложения используют большое количество статических ресурсов, общий объем которых часто превышает 1 МБ. При условии частых обновлений встает вопрос: "Как наиболее эффективно загружать ресурсы при выходе новых версий?". В докладе будет рассказано про существующие техники обновления, которые позволяют загружать не целиком новые ресурсы, а только «разницу» между новой и старой версией.
Даниил Соколюк "ReactJS.NET — опыт рендеринга на сервере"MskDotNet Community
Поговорим что такое React и зачем он нужен разработчикам, разберемся что такое ReactJS.NET и JavaScriptServices,
Обсудим как интегрировать React компоненты в существующую Razor разметку или даже в WebForms. Расскажем о том какие проблемы с производительностью существуют при серверном рендеринге компонентов и как их решать.
SECON'2016. Сергей Аверин. Javascript-фреймворки: должен остаться только одинSECON
Рассказ от tech-менеджера о том, как мы в Acronis выбирали фреймворк в условиях, когда любое более-менее важное технологическое решение сразу затрагивает с десяток команд, несколько сотен человек и права «случайно все сломать» нет. В докладе пойдет речь о том, что хорошо работающий фронтенд — это больше про слаженную работу команды, про понятный и масштабируемый код, чем про сухие циферки. Но и циферки тоже будут.
1) Какие у нас были проблемы с текущим фреймворком — UI, архитектура, код.
2) Как измеряли, что примерно стоит брать (исследование популярности).
3) Что рассматривали.
4) На пути к демо-проекту, какие были сложности (то, что уперли идею с Typescript, собственный компилятор шаблонов, четыре Flux-фреймворка и все плохи).
5) Два пилотных демо-проекта: цифры.
6) Оценка трудоемкости перехода.
SECON'2016. Аверин Сергей, Javascript-фреймворки: должен остаться только одинSECON
Рассказ от tech-менеджера о том, как мы в Acronis выбирали фреймворк в условиях, когда любое более-менее важное технологическое решение сразу затрагивает с десяток команд, несколько сотен человек и права «случайно все сломать» нет.
Все знакомы с различными способами ускорения загрузки страницы. Эта тема уже давно исследована. Но в обычной ситуации при выпуске новой версии сайта у пользователя сбрасывается кеш, и ему приходится заново загружать все статические ресурсы, что увеличивает время загрузки страницы. Как сделать так, чтобы пользователь скачивал только действительно изменившиеся ресурсы? В докладе речь идет о простом, но мощном опенсорсном инструменте borschik (https://github.com/veged/borschik), который поможет ускорить загрузку в условиях постоянных релизов.
Talk (in Russian) for Yet another Conference 2013, October 2d, Moscow
Abstract: More than 10 years Yandex launches various Internet services such as Maps, Mail, Disk, Music, Auto. During this long period of time we have got a lot of experience that could be useful for other web developers.
In this talk we will share several stories about several services of Yandex and our common library of blocks. In the context of search services we will talk about full stack of BEM technologies, server JavaScript and automatised web development.
We will describe an experience of Yandex.Direct which has a non-stop frontend development and refactoring workflow. We also tell about MVC-pattern (bem-mvc) realisation and converting data in comfortable data view format.
Using Yandex.Maps and its API example we will show how you can adapt BEM flexibly taking into consideration special project's needs.
We also talk about open source and why we went there and what we have learned. Promise you, it will have a lot of interesting details.
Video (Russian) https://events.yandex.ru/lib/talks/1108/
"Фронтенд в Яндексе: сложные сервисы, непростые решения". Елена Джетпыспаева,...Yandex
Больше десяти лет Яндекс делает разные интернет-сервисы: Карты, Почту, Директ, Музыку, Авто и так далее. В процессе их разработки был приобретён опыт, который может быть полезен другим веб-разработчикам. В докладе мы расскажем несколько историй на примере некоторых сервисов Яндекса и общей библиотеки блоков. В контексте поисковых сервисов, речь пойдёт об использовании полного стека БЭМ-технологий, о переходе к серверному JavaScript и автоматизации разработки. Мы опишем опыт Яндекс.Директа, фронтенд которого переписывается без остановки основной разработки. А также расскажем про реализацию MVC-паттерна (bem-mvc) и преобразование данных в удобный для представления вид. На примере Яндекс.Карт и их API будет показано, как можно гибко адаптировать БЭМ-методологию, учитывая особые нужды конкретного проекта. Мы также расскажем, зачем мы пошли в опенсорс и чему научились. Обещаем много интересных подробностей.
Javascript-фреймворки: должен остаться только одинSergey Xek
Рассказ от tech-менеджера о том, как мы в Acronis выбирали фреймворк в условиях, когда любое более-менее важное технологическое решение сразу затрагивает с десяток команд, несколько сотен человек и права «случайно все сломать» нет.
В докладе пойдет речь о том, что производительность фронтенда — это больше про слаженную работу команды, про понятный и масштабируемый код, чем про сухие циферки. Но циферки тоже будут.
1) Какие у нас были проблемы с текущим фреймворком — UI, архитектура, код.
2) Как измеряли, что примерно стоит брать (исследование популярности).
3) Что рассматривали.
4) На пути к демо-проекту, какие были сложности (то, что уперли идею с Typescript, собственный компилятор шаблонов, четыре Flux-фреймворка и все плохи).
5) Два пилотных демо-проекта: цифры.
6) Оценка трудоемкости перехода.
Javascript-фреймворки: должен остаться только один / Аверин Сергей (Acronis)Ontico
Рассказ от tech-менеджера о том, как мы в Acronis выбирали фреймворк в условиях, когда любое более-менее важное технологическое решение сразу затрагивает с десяток команд, несколько сотен человек и права «случайно все сломать» нет.
В докладе пойдет речь о том, что производительность фронтенда — это больше про слаженную работу команды, про понятный и масштабируемый код, чем про сухие циферки. Но циферки тоже будут.
1) Какие у нас были проблемы с текущим фреймворком — UI, архитектура, код.
2) Как измеряли, что примерно стоит брать (исследование популярности).
3) Что рассматривали.
4) На пути к демо-проекту, какие были сложности (то, что уперли идею с Typescript, собственный компилятор шаблонов, четыре Flux-фреймворка и все плохи).
5) Два пилотных демо-проекта: цифры.
6) Оценка трудоемкости перехода.
Работаем с API по-взрослому - Максим Кислов (Badoo)AvitoTech
Я расскажу о том, как мы разрабатываем фронтенд и бэкенд параллельно, используя protobuf + JSON RPC.
Часто фронтенд выставляет требования к бэкенду, из этих требований получается API, и разработка возможна только при одновременной работе серверного и клиентского девелопера.
Мы же начинаем разработку с API, и фронтенд (а также мобильные приложения) никак не зависят от степени готовности бэкенда.
– Я поделюсь тем, как мы делаем API до начала разработки;
– Success story использования protobuf + RPC;
– И немного – о разработке клиента вообще без серверного кода.
13 октября, DEV {web} - конференция о Highload веб-разработке. "Java под нагр...IT-Portfolio
13 октября, DEV {web} - конференция о Highload веб-разработке. "Java под нагрузкой, в поисках проблем...", Филипп Дельгядо (CTO Goodwix, ex-teamlead Яндекс.Деньги)
Аннотация
Не так давно с некоторым изумлением узнал, что Java для нагруженных систем представляется совершенной terra incognita. Хотя и совершенно не хочется бороться с мифами, по крайней мере, с удовольствием расскажу, как просто и без хлопот использовать Java в вебе. Про "суровый" highload рассказывать не буду, а вот про простые решения - с удовольствием. Ну и на закуску расскажу, за что я нежно люблю блобы.
О себе
Teamlead сколько себя помню, успел поработать и в "Яндекс.Деньгах" и в "БК Марафон". Люблю простые решения, сложные задачи и хорошую коммуникацию.
Быстрый рендеринг с DOM шаблонизаторами / Борис Каплуновский (aviasales.ru)Ontico
1. Типы шаблонизаторов DOM/innerHTML.
2. Внутренности AngularJS и почему он тормозит.
3. Внутренности ReactJS и почему он тормозит.
4. Менее раскрученные решения Blaze/PaperclipJS/Riot и что там сделано лучше.
5. Плюсы и минусы virtualdom.
6. Работа с DOM может быть быстрее, если:
6.1 Использовать одни и те-же участки DOM несколько раз.
6.2 Сокращать количество reflow с DocumentFragment.
6.3 Быстрое создание повторяющихся участков DOM с помощью cloneNode.
6.4 Создавать куски DOM ahead of time.
7. Встречаем temple - шаблонизатор, работающий в разы быстрее reactjs и не требующий загрузки 40k библиотеки времени исполнения.
Специфика рендеринга vue.js-приложений на сервере, Алексей КлюевMail.ru Group
– Зачем нужен серверный рендеринг фронтэнд приложению или сайту?
– Какие инструменты стоит применять под задачи проекта?
– Интересные задачи по серверному рендерингу: загрузка данных, разделение сред выполнения кода, и другие.
– На что обращаем внимание при деплое, что замеряем, как анализируем метрики?
Интерактивные карты планировок на сайтах торговых центровАгентство AlterEGO
Как сделать навигацию по торговому центру удобной? Какие инструменты доступны разработчику, обзор сильных и слабых сторон основных технологий.
– map vs SVG vs Яндекс.Карты/Google.Maps
– SVG и IE
– Что же выбрать в итоге?
Увеличение конверсии Вашего сайта за счет ускорения Joomla - Логинов ДенисJoomla Secrets
Как влияет скорость сайта:
На конверсию Вашего сайта?
На СЕО продвижение?
Какие решения существуют для оптимизации Joomla сайтов. Примеры использования и настроек.
«Joomla медленная платформа» или кейсы по высоконагруженным Joomla проектам.
От слов к цифрам – замеры производительности Joomla сайта.
3. Что такое JODY?
JODY – JsOn for Dynamic sites
Техника использующая JSON и ряд соглашений
для упрощения взаимодействия между
backend и frontend частями web приложения
1
4. Какую проблему(ы) решает JODY?
1. Позволяет сократить время на решение многих рутинных
задач связанных с обновлением контента страницы без
перезагрузки всей страницы
2. Backend разработчикам трудно писать JS
(Особенно качественный JS. Особенно vanilla JS)
3. Позволяет сократить (полностью убрать) JS код на стороне
сервера
2
5. Как работает JODY?
1. Сервер формирует JSON по заданным
соглашениям
2. Посредник между сервером и клиентом
обрабатывает структурированный ответ и
выполняет заданные действия
3
6. Когда применима техника?
1. Когда в проекте используется шаблонизация
на стороне сервера (JADE, HAML, SLIM)
2. Когда с минимальными усилиями нужно
организовать динамику на странице
4
7. Задача
На сайте с большим кол-вом "тяжелого" контента планируется реализовать
следующее:
1. Вход пользователя в систему должен быть выполнен без перезагрузки
страницы
2. В случае успеха или ошибки должно появится уведомление
3. В случае успеха в боковой панели должен появится блок с корзиной
пользователя
4. В случае успеха форма входа должна быть заменена на блок с
информацией о пользователе
5
12. “Классический” подход
1. Мы начали писать код стороны клиента на
стороне сервера
2. Скоро (!) JavaScript + JQuery код займет в
шаблонах на сервере довольно много места
3. Есть вероятность получить на поддержку
“кашу”
10
19. JODY подход
1. количество кода вьюшки увеличилось
2. backend разработчик огражден от
особенностей реализации forntend части
3. Благодаря соглашениям вы сократите кол-во
JS кода на клиенте
4. Вы очистили свои вьюшки от JS вставок и
существенно улучшили поддерживаемость
своей системы
17
20. Но ведь идея не нова?
1. Да, идея возвращения фрагментов вида на сторону клиента
с помощью JSON структур не нова и вы можете встретить
вопросы на эту тему на stackowerflow
2. Мы лишь предлагаем использовать эту возможность на чуть
более продвинутом уровне, что бы с помощью соглашений и
небольшого количества кода существенно улучшить
поддерживаемые системы и внести в них долю порядка.
18
21. Могу ли я использовать технику JODY не для Rails?
Да, конечно! Вероятно вам придется приложить чуть больше сил, что бы
обеспечить отправку AJAX запросов на сервер, но трудностей у вас
возникнуть не должно.
Главные ожидания от систем которые хотят использовать JODY следующие:
1. Шаблонизация производится в основном на серверной стороне
2. Сервер возвращает ответы в виде JSON данных со структурой
подчиненной вашим корпоративным соглашениям
Все что вам останется - выделить наиболее рутинные операции на
клиентской части приложения и автоматизировать их выполнение с
помощью JODY посредника
19
22. Есть ли у JODY более точная
спецификация?
Наверняка создание такой спецификации
будет увлекательным процессом для всей
вашей команды, если вы захотите попробовать
что-то подобное
20