Experiment with custom Mininet Topology to simulate network topology by Dwina Fitriyandini Siswanto & Siti Amatullah Karimah, presented at 1st SDNRG ITB Meetup in 1st November 2014
Последние полтора года на каждой из наших встреч мы рассказываем о том, почему продуманная и чистая архитектура мобильных приложений — это нужно и важно. За попытками спроектировать серебряную пулю мы очень часто забываем — или просто не уделяем достаточно внимания менее заметной части нашего кода — тестам.
Егор Толстой расскажет о том, почему не стоит обделять вниманием unit-тесты, как подходить к их проектированию и осуществлять постепенный рефакторинг. Выступление, как обычно, подкреплено зарядом личной боли и опыта от поддержки базы в 3.000 unit-тестов на одном проекте и 1.000 на другом.
Rambler.iOS - митапы iOS-разработчиков, организуемые компанией RAMBLER&Co.
Антон Киршанов - «Квант изменения. Реактивные реакции на React.FDConf
Современные интерактивные приложения в вебе требуют особого внимания к работе с непрерывно изменяющимися, динамическими данными. RxJS – библиотека, построенная на паттерне Observable/Observer, выражает последовательность изменений в состоянии приложения через внешние потоки данных и предоставляет широкий набор средств для создания, фильтрации, комбинирования таких потоков удобным для разработчика способом. Для наглядной демонстрации преимуществ такого подхода в докладе будут рассмотрены некоторые примеры с использованием библиотеки React, они помогут осознать основные принципы связывания потоков данных и представления, а также увидеть гибкость, компактность и практическую ценность предлагаемого библиотекой RxJS метода.
Насколько сложно создать виртуальный тур и добавить на сайт? Я расскажу как сделать это за 5 минут, мы добавим его на веб страницу, откроем в мобильном браузере и запустим в очках виртуальной реальности. Разберёмся как всё устроено, рассмотрим библиотеку THREE.js и технологию WebGL.
Илья Климов - Reason: маргиналы против хайпаFDConf
ClojureScript, Elm, PureScript, CoffeeScript, Dart, Kotlin. Этот список языков, так или иначе транспилирующихся в JavaScript можно продолжать бесконечно. В своем докладе я расскажу о Reason - еще одной попытке, в этот раз от Facebook?влиться в это движение. Или все же нет? В докладе я сфокусируюсь не столько на том, как Reason крут, сколько на том, какую ценность он составляет для JavaScript разрабочика, кому он нужен и свой реальный опыт практического использования.
Максим Щепелин - Доставляя веб-контент в игруFDConf
За 7 лет развития World of Tanks, сложность игрового клиента и сервера значительно выросла. Если сервер можно разделить на сервисы, то клиент остается огромным монолитом в миллионы строк кода на ActionScript, C++ и Python.
Мы решили проблему сложности, встаиванием браузера в игровой клиент и заменив частично на нативные интерфесы на веб-контент. О преимуществах и недостатках этого подхода я расскажу в своём докладе.
Radoslav Stankov - Handling GraphQL with React and ApolloFDConf
For almost an year I'm was working on GraphQL projects. In the talk, I'm going to share my experiences working with GraphQL with React and Apollo. I would cover the following talk points:
what is GraphQL
why are people so excited about GraphQL
how to use GraphQL with React
how to solve common problems with GraphQL
Виктор Русакович - Выборы, выборы, все фреймворки… приторныFDConf
Пять лет назад присоединился к команде разработки проекта, над которым до сих пор идёт работа. За это время приложения, создаваемые в рамках проекта, использовали разные фреймворки - от jQuery до React, от Backbone до Angular.
Как мы выбираем фреймворк для нашего следующего приложения? Какой фреймворк самый лучший? Как выбрать фреймворк и через год разочароваться в своём выборе? Короткая история о выборах в одном длинном проекте.
Slobodan Stojanovic - 8 1/2 things about serverless FDConf
What is serverless? How does it work? Can you explain it with something as simple as Lego bricks?
This talk will answer that and at least five and a half more questions. It’s main goal is to explain serverless architecture, show you why it’s important, and finally, show you why it works great with Node.js and how to use it.
PWA – это сейчас хайп тренд. Google и Microsoft говорят про них на своих конференциях. Twitter и Uber переписывают на них свои мобильные версии веб-приложений. И вот, работая над своим проектом, я решил сделать его Progressive и протестировать на реальных пользователях в production. В этом докладе я расскажу как я это делал и какую пользу это принесло проекту.
Страница должна загружаться быстрее чем 1 секунда; количество серверных запросов должно быть сведено к минимуму; CSS и JS файлы должны быть сжаты и не превышать 50 килобайт…” Это лишь малая часть технических решений и рекомендаций, которыми нас снабжает индустрия в погоне за производительностью. Но во всем этом есть одна проблема – пользователям нет никакого дела до килобайтов, миллисекунд и количества запросов. Производительность – это не математика. Производительность — это восприятие. Именно восприятие может создает впечатление медлительности сайта с малым количеством серверных запросов, в то время как сайт, возвращающий результаты поиска в течение секунд, может восприниматься как достаточно быстрый для пользователя. И именно восприятие пользователя является единственным мерилом производительности вашего сайта.
В докладе будут рассмотрены психологические и технические теории, приемы и примеры, позволяющие управлять восприятием пользователя
Полная версия презентации по ссылке: http://goo.gl/1iBNNO
... ничего такого не произойдет :) Их сложно начать писать, нужно мотивировать команду, а самое главное — непонятно, зачем? Ведь можно открыть браузер и в пару кликов проверить все ли в порядке с приложением.
Доклад о том, как много мы теряем, если не пишем тесты. Я покажу, с чего начать, какие инструменты и методики можно использовать. Поделюсь собственным опытом разработки JavaScript тестов. Постараюсь показать, как тесты смогут сделать ваш проект лучше.
Migrate your React.js application from (m)Observable to ReduxFDConf
Вся презентация по ссылке: goo.gl/FySndO
0) Intro about our Content Browser project architecture.
1) Problem with current state in Fluxx world.
2) Observable pattern like temporal decision.
3) Complexity and Pay off.
4) Redux is not panacea but it is the best what we have.
6) Migration tricks or how to reduce the pain.
7) Conclusion.
Вся презентация по ссылке: goo.gl/WuwMZL
Если ваш проект перевалил за миллион строк кода, а количество разработчиков за десяток - то вам уже пришлось столкнутся с проблемами JS и его масштабируемости. В данном докладе будет рассказано о том, как решить эти проблемы, как начать использовать Dart, послойно встраивая его в устаревший код и как растить команду с помощью типизированного языка.
This document discusses scalable application architecture. It covers topics like dynamic requirements, using a scalable communication layer with various package formats, handling multiple state mutation sources, building scalable teams, and lazy loading. It provides examples of component architecture using Angular, services, state management with ngrx/redux, immutability with ImmutableJS, and asynchronous logic with RxJS. The goal is to build modular, extensible applications that can handle complex requirements through separation of concerns and well-designed architecture.
JavaScript является одни из самых популярных языков программирования. На сегодняшний день его можно использовать не только в браузере, но и на сервере, в системах управления баз данных, программировать микроконтроллеры, писать десктопные и мобильные приложения. В данном докладе я расскажу о современном JavaScript и его областях применения (Mongo, CouchDB, Node, Meteor, tessel, PhoneGap, ReactNative и так далее), а также загляну немного в будущее и покажу вам куда он движется (ES2015, ES2016 ... ESxxxx, WebAssembly). И много-много всего интересного с демками)
Experiment with custom Mininet Topology to simulate network topology by Dwina Fitriyandini Siswanto & Siti Amatullah Karimah, presented at 1st SDNRG ITB Meetup in 1st November 2014
Последние полтора года на каждой из наших встреч мы рассказываем о том, почему продуманная и чистая архитектура мобильных приложений — это нужно и важно. За попытками спроектировать серебряную пулю мы очень часто забываем — или просто не уделяем достаточно внимания менее заметной части нашего кода — тестам.
Егор Толстой расскажет о том, почему не стоит обделять вниманием unit-тесты, как подходить к их проектированию и осуществлять постепенный рефакторинг. Выступление, как обычно, подкреплено зарядом личной боли и опыта от поддержки базы в 3.000 unit-тестов на одном проекте и 1.000 на другом.
Rambler.iOS - митапы iOS-разработчиков, организуемые компанией RAMBLER&Co.
Антон Киршанов - «Квант изменения. Реактивные реакции на React.FDConf
Современные интерактивные приложения в вебе требуют особого внимания к работе с непрерывно изменяющимися, динамическими данными. RxJS – библиотека, построенная на паттерне Observable/Observer, выражает последовательность изменений в состоянии приложения через внешние потоки данных и предоставляет широкий набор средств для создания, фильтрации, комбинирования таких потоков удобным для разработчика способом. Для наглядной демонстрации преимуществ такого подхода в докладе будут рассмотрены некоторые примеры с использованием библиотеки React, они помогут осознать основные принципы связывания потоков данных и представления, а также увидеть гибкость, компактность и практическую ценность предлагаемого библиотекой RxJS метода.
Насколько сложно создать виртуальный тур и добавить на сайт? Я расскажу как сделать это за 5 минут, мы добавим его на веб страницу, откроем в мобильном браузере и запустим в очках виртуальной реальности. Разберёмся как всё устроено, рассмотрим библиотеку THREE.js и технологию WebGL.
Илья Климов - Reason: маргиналы против хайпаFDConf
ClojureScript, Elm, PureScript, CoffeeScript, Dart, Kotlin. Этот список языков, так или иначе транспилирующихся в JavaScript можно продолжать бесконечно. В своем докладе я расскажу о Reason - еще одной попытке, в этот раз от Facebook?влиться в это движение. Или все же нет? В докладе я сфокусируюсь не столько на том, как Reason крут, сколько на том, какую ценность он составляет для JavaScript разрабочика, кому он нужен и свой реальный опыт практического использования.
Максим Щепелин - Доставляя веб-контент в игруFDConf
За 7 лет развития World of Tanks, сложность игрового клиента и сервера значительно выросла. Если сервер можно разделить на сервисы, то клиент остается огромным монолитом в миллионы строк кода на ActionScript, C++ и Python.
Мы решили проблему сложности, встаиванием браузера в игровой клиент и заменив частично на нативные интерфесы на веб-контент. О преимуществах и недостатках этого подхода я расскажу в своём докладе.
Radoslav Stankov - Handling GraphQL with React and ApolloFDConf
For almost an year I'm was working on GraphQL projects. In the talk, I'm going to share my experiences working with GraphQL with React and Apollo. I would cover the following talk points:
what is GraphQL
why are people so excited about GraphQL
how to use GraphQL with React
how to solve common problems with GraphQL
Виктор Русакович - Выборы, выборы, все фреймворки… приторныFDConf
Пять лет назад присоединился к команде разработки проекта, над которым до сих пор идёт работа. За это время приложения, создаваемые в рамках проекта, использовали разные фреймворки - от jQuery до React, от Backbone до Angular.
Как мы выбираем фреймворк для нашего следующего приложения? Какой фреймворк самый лучший? Как выбрать фреймворк и через год разочароваться в своём выборе? Короткая история о выборах в одном длинном проекте.
Slobodan Stojanovic - 8 1/2 things about serverless FDConf
What is serverless? How does it work? Can you explain it with something as simple as Lego bricks?
This talk will answer that and at least five and a half more questions. It’s main goal is to explain serverless architecture, show you why it’s important, and finally, show you why it works great with Node.js and how to use it.
PWA – это сейчас хайп тренд. Google и Microsoft говорят про них на своих конференциях. Twitter и Uber переписывают на них свои мобильные версии веб-приложений. И вот, работая над своим проектом, я решил сделать его Progressive и протестировать на реальных пользователях в production. В этом докладе я расскажу как я это делал и какую пользу это принесло проекту.
Страница должна загружаться быстрее чем 1 секунда; количество серверных запросов должно быть сведено к минимуму; CSS и JS файлы должны быть сжаты и не превышать 50 килобайт…” Это лишь малая часть технических решений и рекомендаций, которыми нас снабжает индустрия в погоне за производительностью. Но во всем этом есть одна проблема – пользователям нет никакого дела до килобайтов, миллисекунд и количества запросов. Производительность – это не математика. Производительность — это восприятие. Именно восприятие может создает впечатление медлительности сайта с малым количеством серверных запросов, в то время как сайт, возвращающий результаты поиска в течение секунд, может восприниматься как достаточно быстрый для пользователя. И именно восприятие пользователя является единственным мерилом производительности вашего сайта.
В докладе будут рассмотрены психологические и технические теории, приемы и примеры, позволяющие управлять восприятием пользователя
Полная версия презентации по ссылке: http://goo.gl/1iBNNO
... ничего такого не произойдет :) Их сложно начать писать, нужно мотивировать команду, а самое главное — непонятно, зачем? Ведь можно открыть браузер и в пару кликов проверить все ли в порядке с приложением.
Доклад о том, как много мы теряем, если не пишем тесты. Я покажу, с чего начать, какие инструменты и методики можно использовать. Поделюсь собственным опытом разработки JavaScript тестов. Постараюсь показать, как тесты смогут сделать ваш проект лучше.
Migrate your React.js application from (m)Observable to ReduxFDConf
Вся презентация по ссылке: goo.gl/FySndO
0) Intro about our Content Browser project architecture.
1) Problem with current state in Fluxx world.
2) Observable pattern like temporal decision.
3) Complexity and Pay off.
4) Redux is not panacea but it is the best what we have.
6) Migration tricks or how to reduce the pain.
7) Conclusion.
Вся презентация по ссылке: goo.gl/WuwMZL
Если ваш проект перевалил за миллион строк кода, а количество разработчиков за десяток - то вам уже пришлось столкнутся с проблемами JS и его масштабируемости. В данном докладе будет рассказано о том, как решить эти проблемы, как начать использовать Dart, послойно встраивая его в устаревший код и как растить команду с помощью типизированного языка.
This document discusses scalable application architecture. It covers topics like dynamic requirements, using a scalable communication layer with various package formats, handling multiple state mutation sources, building scalable teams, and lazy loading. It provides examples of component architecture using Angular, services, state management with ngrx/redux, immutability with ImmutableJS, and asynchronous logic with RxJS. The goal is to build modular, extensible applications that can handle complex requirements through separation of concerns and well-designed architecture.
JavaScript является одни из самых популярных языков программирования. На сегодняшний день его можно использовать не только в браузере, но и на сервере, в системах управления баз данных, программировать микроконтроллеры, писать десктопные и мобильные приложения. В данном докладе я расскажу о современном JavaScript и его областях применения (Mongo, CouchDB, Node, Meteor, tessel, PhoneGap, ReactNative и так далее), а также загляну немного в будущее и покажу вам куда он движется (ES2015, ES2016 ... ESxxxx, WebAssembly). И много-много всего интересного с демками)
CSSO – инструмент для минификации CSS, который недавно вернулся к активной разработке. Зачем?
Дело в том, что минификация CSS – задача сложная. Сейчас нет идеального минификатора, и чтобы эффективным был и делал все правильно. Ведь нужно учитывать не только особенности CSS, который постоянно меняется, но и уровень его поддержки браузерами, их баги, префиксы, хаки и т.д. Все это требует решения ряда непростых задач. Поговорим об этом, а так же принципах работы CSS-минификаторов, новых идеях и развитии CSSO.
Подробнее: http://www.slideshare.net/basisjs/csso-compress-css-english-version
Redux - негласный победитель Flux соревнований, одна из трендовых библиотек 2015 года. Слишком "сырой" для продакшена? Нет, мы так не думаем! Используя силу функционального подхода и модель Event Sourcing'a, Redux позволяет гибко управлять состоянием вашего приложения. В докладе мы расскажем про то, как мы, используя связку Redux+React, переписали с нуля front-end одного из наших продуктов (Лидсканер | leadscanner.ru). Рассмотрим реальные плюсы и минусы данного стека, в частности: работу с side-effects, повторное использование компонентов, тестируемость.
Структура:
Про нас.
Какие перед нами стояли вызовы.
Многоуровневая архитектура.
Обзор Flux архитектуры.
Redux - Predictable state container for JavaScript apps.
React как view layer.
Повторное использование компонентов.
Dumb and Smart components.
Feature Folders.
Работа с side effects.
Обзор подходов организации actionCreators.
Middlewares.
Redux-saga.
Минусы данного стека.
Каждый день появляется по новому JavaScript фрeймворку или новой технологии. И каждый день мы задаемся вопросом, как за всем этим успеть? Константин даст Вам серебряную пулю. Вы будете знать, как быстро разобраться в React, PostCss, RxJS, Redux, CycleJs, Angular и даже в неизвестном супер фреймворке. Увидим, что стоит за трендами технологий 2016.
Подробнее: https://mavrin.github.io/pres-be-first/#1
"Service Worker: Let Your Web App Feel Like a Native "FDConf
Service workers allow web applications to work offline by intercepting network requests, caching responses, and serving cached resources when there is no network connection. They also handle background synchronization and push notifications. Key capabilities include making apps available offline, controlling the cache and network requests, and subscribing to push notifications. Service workers operate separately from the main thread of the page, intercepting and modifying fetch events to return cached responses when available.
2. Grunt - сборщик проектов
● Написан на JavaScript для Node.js
● Выполняет задачи (tasks)
● Конфиг — обычный JS-файл
● Текущая версия — 0.4
● Используется в jQuery, Modernizr, ...
12. Multi tasks: использование
$ grunt myMultiTask:first
Running "myMultiTask:first" (myMultiTask) task
first : Single string
Done, without errors.
$ grunt myMultiTask:second
Running "myMultiTask:second" (myMultiTask) task
second : 1,2,3
Done, without errors.
17. Свойства контекста: multi task
grunt.registerMultiTask('myMultiTask', function(){
var task = this;
grunt.log.error('Something went wrong'); // errorCount++
['name', 'nameArgs', 'args', 'errorCount', 'target']
.forEach(function(propName){
grunt.log.writeln(propName + ': ' + task[propName]);
});
});
18. Свойства контекста: значения
$ grunt myMultiTask:first:second
Running "myMultiTask:first:second" (myMultiTask) task
>> Something went wrong
name: myMultiTask
nameArgs: myMultiTask:first:second
args: second
errorCount: 1
target: first