В своей работе мы постоянно используем инструменты, призванные облегчить нам жизнь. Но как хорошо мы ими на самом деле владеем? И почему мы пренебрегаем их суперсилами? Например, Chrome DevTools — это не только отладчик и инспектор HTML. Но когда у нас в руках молоток, кругом мерещатся гвозди. Десятки мегабайт и процентов загрузки процессора на вкладку браузера — верный признак того, что пора учиться пользоваться микроскопом.
Роман предложит освоить что-то посложнее молотка и расскажет о том, какую реальную пользу можно получить от профилирования, как найти в огромном отчёте проблему с кодом и что лучше — написать в коде десяток console.log или async debug.
Пластилиновый код: как перестать кодить и начать житьMoscow.pm
Елена Шишкина, ведущий программист Деньги Mail.Ru. Она покажет практический пример лени как двигателя прогресса в отдельно взятом веб-проекте:
- Надоело писать код? Будем думать, как его не писать!
- Боремся с однотипным кодом. Боремся с неоднотипным кодом.
- Код, которого не существует, и код, который существует.
- Следите за руками: программируем на конфигах!
- Как жить дальше?
В своей работе мы постоянно используем инструменты, призванные облегчить нам жизнь. Но как хорошо мы ими на самом деле владеем? И почему мы пренебрегаем их суперсилами? Например, Chrome DevTools — это не только отладчик и инспектор HTML. Но когда у нас в руках молоток, кругом мерещатся гвозди. Десятки мегабайт и процентов загрузки процессора на вкладку браузера — верный признак того, что пора учиться пользоваться микроскопом.
Роман предложит освоить что-то посложнее молотка и расскажет о том, какую реальную пользу можно получить от профилирования, как найти в огромном отчёте проблему с кодом и что лучше — написать в коде десяток console.log или async debug.
Пластилиновый код: как перестать кодить и начать житьMoscow.pm
Елена Шишкина, ведущий программист Деньги Mail.Ru. Она покажет практический пример лени как двигателя прогресса в отдельно взятом веб-проекте:
- Надоело писать код? Будем думать, как его не писать!
- Боремся с однотипным кодом. Боремся с неоднотипным кодом.
- Код, которого не существует, и код, который существует.
- Следите за руками: программируем на конфигах!
- Как жить дальше?
Вячеслав Олиянчук — Яндекс.Авто 2.0 на Node.jsYandex
В докладе рассказывается о том, как наша команда запускала проект Авто 2.0 на Node.js. Обсуждаются проблемы деплоя, архитектура сервиса и некоторые особенности в Node.js, которые удалось обойти в процессе эксплуатации.
JavaScript является одни из самых популярных языков программирования. На сегодняшний день его можно использовать не только в браузере, но и на сервере, в системах управления баз данных, программировать микроконтроллеры, писать десктопные и мобильные приложения. В данном докладе я расскажу о современном JavaScript и его областях применения (Mongo, CouchDB, Node, Meteor, tessel, PhoneGap, ReactNative и так далее), а также загляну немного в будущее и покажу вам куда он движется (ES2015, ES2016 ... ESxxxx, WebAssembly). И много-много всего интересного с демками)
Архитектура кода нового 2ГИС Web API или куда мы дели MVCDevDay
Сергей Коржнев
Архитектор версии 1.4 2ГИС Web API
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Тезисы:
● Как организован код в старой версии.
● Вдумчиво смотрим, как мы используем Yii, хватаемся за голову и клавиатуру. Там отрезаем, тут пришиваем, и вуаля!
● Ну и делаем выводы, как мы забороли две классические проблемы программирования: борьба с дублированием кода и сложностью системы.
Из презентации вы узнаете:
— как работает database/sql;
— интерфейс и реализации database/sql/driver;
— обзор популярных ORM и что с ними не так;
— как мы делали свой лучший ORM;
— и почему столько раз его переделывали.
.NET Fest 2018. Сергей Калинец. Azure веб разработка здорового человекаNETFest
Microsoft Azure, пожалуй, самый очевидный выбор для .NET разработчиков, когда они (или их клиенты) внезапно решают, что им нужен клауд. Но при этом мы все равно используем подходы и техники из до-облачного мира, иногда и не подозревая о тех сервисах и удобствах, которые нам дает Azure. На этом докладе Сергей покажет, как быстро и эффективно можно разрабатывать современное веб приложение. Мы затронем разные аспекты -- от организации кода до деплоя и мониторинга приложений, работающих в проде. Документация API, поддержка рабочих процессов, инициализация приложений, полезные инструменты и библиотеки -- все это, и не только, ждет вас на нашем докладе.
«Как перестать отлаживать асинхронные вызовы и начать жить»FDConf
Асинхронность в Javascript больше не страшна. Классические триллеры вроде
«Callback Hell» и «Pyramid of Doom» потеряли свою актуальность настолько,что даже Java-программисты перестали пугать ими невинных джуниоров.
Всё благодаря паттернам и библиотекам. Streams, Promises, Async-Await и другие изменили наш код. Теперь он прекрасен.
Пока ещё вымысел? Поговорим о том, как сделать эту картину реальностью. Об основных практиках асинхронного программирования.
Принципах их работы,отличиях и сценариях использования.
* Почему Angular 2 такой быстрый и как его ускорить еще сильнее?
* Как работает Change Detection механизм и как им управлять?
* Зачем нам Zone.js и Функциональное Реактивное Программирование?
* Как работать с Redux и Mobx в Angular 2 и что можно от этого выиграть?
Об этом и ряде других вещей вы узнаете из этого доклада.
Вячеслав Олиянчук — Яндекс.Авто 2.0 на Node.jsYandex
В докладе рассказывается о том, как наша команда запускала проект Авто 2.0 на Node.js. Обсуждаются проблемы деплоя, архитектура сервиса и некоторые особенности в Node.js, которые удалось обойти в процессе эксплуатации.
JavaScript является одни из самых популярных языков программирования. На сегодняшний день его можно использовать не только в браузере, но и на сервере, в системах управления баз данных, программировать микроконтроллеры, писать десктопные и мобильные приложения. В данном докладе я расскажу о современном JavaScript и его областях применения (Mongo, CouchDB, Node, Meteor, tessel, PhoneGap, ReactNative и так далее), а также загляну немного в будущее и покажу вам куда он движется (ES2015, ES2016 ... ESxxxx, WebAssembly). И много-много всего интересного с демками)
Архитектура кода нового 2ГИС Web API или куда мы дели MVCDevDay
Сергей Коржнев
Архитектор версии 1.4 2ГИС Web API
Архитектура кода нового 2ГИС Web API или куда мы дели MVC
Тезисы:
● Как организован код в старой версии.
● Вдумчиво смотрим, как мы используем Yii, хватаемся за голову и клавиатуру. Там отрезаем, тут пришиваем, и вуаля!
● Ну и делаем выводы, как мы забороли две классические проблемы программирования: борьба с дублированием кода и сложностью системы.
Из презентации вы узнаете:
— как работает database/sql;
— интерфейс и реализации database/sql/driver;
— обзор популярных ORM и что с ними не так;
— как мы делали свой лучший ORM;
— и почему столько раз его переделывали.
.NET Fest 2018. Сергей Калинец. Azure веб разработка здорового человекаNETFest
Microsoft Azure, пожалуй, самый очевидный выбор для .NET разработчиков, когда они (или их клиенты) внезапно решают, что им нужен клауд. Но при этом мы все равно используем подходы и техники из до-облачного мира, иногда и не подозревая о тех сервисах и удобствах, которые нам дает Azure. На этом докладе Сергей покажет, как быстро и эффективно можно разрабатывать современное веб приложение. Мы затронем разные аспекты -- от организации кода до деплоя и мониторинга приложений, работающих в проде. Документация API, поддержка рабочих процессов, инициализация приложений, полезные инструменты и библиотеки -- все это, и не только, ждет вас на нашем докладе.
«Как перестать отлаживать асинхронные вызовы и начать жить»FDConf
Асинхронность в Javascript больше не страшна. Классические триллеры вроде
«Callback Hell» и «Pyramid of Doom» потеряли свою актуальность настолько,что даже Java-программисты перестали пугать ими невинных джуниоров.
Всё благодаря паттернам и библиотекам. Streams, Promises, Async-Await и другие изменили наш код. Теперь он прекрасен.
Пока ещё вымысел? Поговорим о том, как сделать эту картину реальностью. Об основных практиках асинхронного программирования.
Принципах их работы,отличиях и сценариях использования.
* Почему Angular 2 такой быстрый и как его ускорить еще сильнее?
* Как работает Change Detection механизм и как им управлять?
* Зачем нам Zone.js и Функциональное Реактивное Программирование?
* Как работать с Redux и Mobx в Angular 2 и что можно от этого выиграть?
Об этом и ряде других вещей вы узнаете из этого доклада.
Ruby is the most flexible language out there, imposing no limitations on the developers, giving all the expressiveness possible. Or so we think. But there are languages pushing dynamic features and expressiveness far beyond what is possible in Ruby. Some are old, like Lisp and Smalltalk, some are just emerging, purely experimental languages, like Ioke or Newspeak. In this talk, we will take a look at some of these languages and what they can do that Ruby can't. What does it mean, to be homoiconic? How does a language without keywords work? Can I dispatch in more than one direction? And what is partial evaluation?
Алан Милц - один из лучших в мире специалистов по управлению денежными потоками.
Имея более 20 лет опыта работы на управляющих должностях в различных отраслях, включая финансовые услуги и производство, Алан Милц приобрел репутацию руководителя высшего уровня, ориентированного на нахождение решений любых задач. Основываясь на анализе критически важных показателей бизнеса, Алан особенно искусен в выявлении недостатков и потенциальных возможностей, выработке стратегий и внедрении соответствующих инновационных и экономически эффективных решений.
Как директор-основатель Inmatrix, разработал методики финансового анализа, которые стали международными стандартами для компаний, бухгалтерских фирм и банков. Эти методики используются в 22 странах более чем 20 тыс. клиентов и ведущими банками, включая NAB, ANZ, Commonwealth Bank, Westpac, Bangkok Bank, Maybank и Royal Bank of Canada. Также разработал более 200 бизнес планов для крупный акционерных компаний и частных фирм.
Регулярно выступает на форумах и обучающих программах для руководителей во всем мире. В течение своей карьеры Алан участвовал в управлении на всех уровнях и в различных направлениях, что позволяет ему вносить свой ценный вклад в развитие любой организации.
Краткая биография:
Родился в Южной Африке, в 1984 году окончил University of Cape Town и начал карьеру, работая бухгалтером. В 1988 году переехал в Австралию, где работал на компанию Esprit, затем в качестве правительственного консультанта участвовал в реструктуризации национального рынка одежды и обуви. В 1997 году основал компанию Inmatrix, разработавшую собственную методику финансового анализа и аналитический программный продукт Optimist, который используют более 50% банков, имеющих рейтинг AA. Параллельно с работой в Inmatrix является управляющим директором компании Pearl Finance, которая помогла своим клиентам привлечь заемные средства на общую сумму более $1,4 млрд.
http://www.mybiz.ru/alan-miltz/program.html
Семинар по Node.js в КПИ 20 октября 2014. Докладчики: Тимур Шемсединов, Никита Савченко, Максим Петренко. Краткое содержание:
* Что такое Node.js и как работает JavaScript в V8
* Профессионалы расскажут, почему они выбрали Node.js
* Вы узнаете его сильные и слабые стороны и где его лучше применять
* Будет полный обзор особеностей и внутреннего строения Node.js
* Примеры внедрения и Highload-проекты
* Вопросы развертывания, хостинг, тестирования, и отладки
* Где и что учить, что читать, как осваивать
Доклад рассматривает тонкости nodejs, а так же преимущества Evented I/O для серверных приложений. Будет предоставлен ряд рекоммендаций по правильному построению архитектуры, модульности, масштабированию, дизайну кода. Краткое введение в технологию программирования "волокнами" (fibers) и ряд других эффективных практик.
Примеры быстрой разработки API на масштабируемом сервере приложений Impress д...Timur Shemsedinov
Примеры кода приложений и конфигурации сервера с доступом к файлам, памяти, базам данных и параллельной асинхронной обработкой различных типов API запросов с состоянием и без состояния.
21. Socket.io и Nordstream
var http = require('http'),
io = require('socket.io')
server = http.createServer(function(req, res){
res.writeHeader(200, {'Content-Type': 'text/html'});
res.writeBody('<h1>Hello world</h1>');
res.finish();
});
// socket.io
var socket = io.listen(server);
socket.on('connection', function(client){
// new client is here!
client.on('message', function(){ … })
client.on('disconnect', function(){ … })
});
22. var socket = new io.Socket();
socket.on('connect', function(){
socket.send('hi!');
})
socket.on('message', function(data){
alert(data);
})
socket.on('disconnect', function(){})
23. Nordstream
var connections = 0;
var nodestream = io.listen(app).nodestream()
.on('connect', function(){
connections++;
this.emit('connections', connections);
})
.on('disconnect', function(){
connections--;
this.emit('connections', connections);
});
:realtime(repaint: 'connections', local: 'connections')
.connections
- if (connections > 1)
p #{connections} people are editing right now
- else
p You're all alone, loser