вторник, 27 ноября 2012 г.

Конференция KyevJS (17 ноября 2012)

Небольшой отчет о прошедшей конференции в Киеве.

Место проведения: отель Братислава, ул. А.Малышка, 1.

Нам посчастливилось поселиться в этом же отеле за ночь до конференции. Поэтому к началу мероприятия мы были выспаны и сыты до отвала. Передаю привет тертому вареному бурячку с черносливом, горячему куриному бульончику, жареным куриным крылышкам, кофе с молоком, йогурту и блинчикам с варенькам. Вы были бесподобны!

Но вернемся на конференцию. В холле нам выдали бэйджики (мой первый, здесь принято говорить: Грац!), резиновые мячики, ручки, и самим можно было взять чай, кофе, воду и (самое приятное) халявные шоколадные конфеты, которые почему-то быстро закончились.

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

Удобно, что программа конференции была уже известна, и мы сразу наметили кого интереснее будет послушать в каком зале. Первому предстать перед нами выпала честь Полу Миллеру (который на самом деле оказался просто Пашкой) с его "Superior service-based web apps with Chaplin (Backbone) and Brunch", но из-за технических проблем и задержки мы решили перейти во второй зал на Егора Назаркина с перекликающейся темой "Chaplin in real life and canvas".

Немного слов о Чаплине. Это небольшой (относительно) фрэймворк на базе Backbone.js. К сожалению, Назаркин не вдавался в технические подробности фрэймворка, сославшись на доклад в соседнем зале, а о канвасе вообще не упомянул. Но общее впечатление о Чаплине сложилось очень приятное. Я даже подумала, что если бы использовала бэкбон, то уж точно не голый, а с такой надстроечкой, позволяющей организовывать проект.

Следующим докладом был выбран "Geo-apps with Leaflet" Игоря Агафонкина. Это было своего рода ВАУ! Собственно что такое Leaflet - это js библиотека, позволяющая работать с картами. Любыми, будь то опенсорсные или игровые (ex. World of Warcraft). На входе используется изображение карты, задаются координаты нужной точки, масштаб и вуаля =)

Пример кода:
// создание карты
var map = L.map('map').setView([51.505, -0.09], 13);

// добавление маркера и попапа
L.marker([51.5, -0.09]).addTo(map)
    .bindPopup('A pretty CSS3 popup.').openPopup();
Можно добавлять свои слои, задавать координаты точкам с описаниями, выделять площади. Все то же самое, что дает нам Google, только опенсорс. Собственно на этом и был упор в докладе, потому что о самой библиотеке и рассказывать-то нечего ) Бери и пользуйся.

Интересно было узнать, что эта библиотека выросла из проекта cloudmade.com, когда Игорь предложил сделать её опенсорсной. Возможно, именно благодаря этому Лифлет и стал популярен, многие стали добавлять туда свои коммиты (около 86 на момент доклада) и расширили её. Хотя ещё одна приятная деталь, что Игорь оставил за собой право не принимать все пулреквесты, чтобы библиотека оставалась легкой и небольшой, только с самыми необходимыми функциями, остальное же можно увидеть в виде плагинов.

В целом действительно хорошая альтернатива для тех, кто хочет использовать тайлы напрямую, а не через апи, чего не позволяет ни Google, ни Yandex.

Потом был доклад "Reactive UI development with MVVM pattern" by Vyacheslav Pytel, Artem Bey, где больше рассказывали о самом принципе Model-View-ViewModel.

Потом ланч. Передаю привет утренним салатикам, сыру, мясной нарезке, свежему соку, варенью и меду, благодаря которым нам не хотелось кушать до самого вечера =)

После обеда был небольшой "рекрутинг". Компании по 5 минут рассказывали о себе в течении получаса, так что это было очень ненавязчиво и не носило выраженный рекламный характер.

Надо сказать, что с обеда вернулись немногие, и треть зала была свободна, тогда как до обеда ровно на эту же треть зал был переполнен. Первой послеобеденной докладчицей стала Юля Пушнина с темой "Game development: do anything with the help of JavaScript & Canvas". Тема действительно очень интересная, поэтому я расскажу об этом подробнее в следующем отчете.

Затем на сцену вышли прожженые ребята из Циклума: Юрий Сильвестров и Михаил Вальков с "Prototyping app using JS and HTML5". Рассказывали про прототипирование, т.е. быстрое создание рабочего приложения с минимальным функционалом. Например, сайты с различными рекламными акциями, которые проходят один день (небольшой бюджет и пару часов на разработку). Или же создать прототип чтобы запустить и посмотреть, выстрелит или нет, а потом уже допиливать, возможно даже с нуля и с использованием других технологий. Может быть, неплохой подход. Хотя немного cunfused, потому что мы заранее пишем говнокод.

Далее был "Growth in all directions" Vitaliy Stepanenko. О чем? Да ни о чем. Он начал настолько издалека, что я даже узнала кто такой Брендан Айк ^_^

В общем, мы решили перейти в другой зал и были потрясены харизмой Виталия Степаненко и его докладом про "ClojureScript". Подкупил энтузиазм, с которым рассказывалось, и живость Виталика, открытость ко всему новому. Одесский акцент? Хотя как по мне, кложа остается just for fun. Виталик ещё не писал на нем, только пробовал. Возможно, фанатам лиспа эта идея придется по вкусу, но мне, работая чаще с различными другими js плагинами и библиотеками, не хочется мешать в кучу такое разнообразие.

И завершал вечер Eugene Zharkov и... вы не поверите: "Windows 8 Applications: the Immaculate Conception of JavaScript". Да! Теперь можно писать десктопные приложения для 8-ой винды на JavaScript! Js-код остается открытым, так что любой может посмотреть в исходники. Но как же работает эта адская штука? С помощью большой ложки дёгтя, автоматически вращающейся в мелкософтовском бочонке. Приложение открывается в IE (ну здравствуй, родной!), только без браузерных кнопок, т.о. майкрософт стирает границы десктопа и веба, что сложно определить что где и как работает. Виндовая компания, завистливо наблюдая за Apple, создала свой Windows 8 App Store, через который можно загружать и покупать приложения. В общем, сама идея удивила, да и Женя очень здорово рассказал. In spite of все устали, его речь была живой, бодрой и очень даже в темпе!

Потом нам нужно было бежать, но мы ещё заглянули на раздачу плюшек в виде футболок и "премии" на амазоне.

В целом, очень понравилось. Спасибо организаторам и докладчикам. Смещений в докладах не было, перерывы помогали немного отдохнуть, пообщаться и/или перейти в другой зал. Неинтересных докладов почти не было, а энтузиазм некоторых захлестывал, что хотелось сделать что-то самой.

Но я подумала, что и наши СнС ничем не хуже, разве что порой перебор идет в троллинге.

P.S. и недостаток того, что доклады были в два потока, нам пришлось пожертвовать парой интересных тем:
"Faster web, or Cache me if you can" Egor Lvovsky
"Faster images through the websockets" Yaroslav Ponomarenko


Команды Emacs

При работе в консоли мы используем команды Emacs, но редко когда что-то сложнее [CTRL-R] для поиска по истории. Хотя зачастую возникает неп...