04.05.2011

Отчет о конференции ADD-2011


Общее

Впечатления от конференции остались смешанные.
С одной стороны:
  • конференция отлично организована
  • не было проблем с видимостью и слышимостью докладчиков
  • не было проблем с проживанием, гостиница отличная, с бесплатным интернетом
  • питание супер, бесплатные завтрак + обед со шведским столом
  • добираться от гостиницы до конференции - на лифте и 10 метров по коридору
  • на Сапсане ехать одно удовольствие
С другой:
  • интересных докладов лично для меня было сильно меньше, чем на ADD-2010. Были случаи, когда из трех сессий выбрать было нечего.
  • интересные по названию доклады оказывались отстойными, в Ярославле такого практически не было

Итого: лучше, чем на остальных конференциях, но хуже, чем ADD-2010.

Мобильная разработка

Трендом на конференции была мобильная разработка. Причем в основном мобильные web-приложения. У меня к ним отношение пока сугубо скептическое, но все равно послушать было интересно.
На докладе «Мобильная веб-разработка» Андрей Ребров перечислял мобильные фреймворки.
  • jQTouch (по словам докладчика - отстой)
  • jQuery Mobile (по словам докладчика - лучший)
  • Sencha Touch (сейчас у всех на слуху - смесь jQTouch и ExtJS, насколько я понял)
  • Xui (не популярен в России, оно и понятно)
  • Wink Toolkit
  • iUI
  • Dojo Mobile
  • dHTMLx Touch
Фреймворки, для генерации нативных приложений из html:
  • PhoneGap (опять же у всех на слуху, докладчик использовал его)
  • MotherApp
  • Big5
  • Rhodes
  • Titanium (не было в докладе, просто опять же у всех на слуху, я бы смотрел в его сторону). Это полная платформа вместе с фреймворком.

В Luxoft-е написали несколько корпоративных приложений-визиток. У http://zenmoney.ru/ мобильная веб-версия приложения с поддержкой оффлайн режима. Основной посыл: все любят JavaScript и никто не хочет учить Objective C и Java. Это логично, конечно не все приложения можно написать в вебе, но некоторый класс приложений под это ложиться вполне хорошо.
Как пример - простенький кроспплатформенный, но очень приятный на вид таск-менеджер wunderlist написан как раз на Titanium-е.

NoSQL

Было два интересных доклада по NoSQL.

MongoDB

В первом рассказывалось про прелести MongoDB. Для своего класса задач - отличная штука. Класс задач, рассмотренный в докладе, можно описать как: «много линейных данных и обработка ложится в Map/Reduce с прозрачным масштабированием». Конкретно у докладчика на Mongo крутится популярное приложение для ВКонтакте, в котором можно отвечать на какие-то вопросы (я не сильно в курсе, но некоторые в зале по описанию поняли о чем речь).
Докладчик очень четко расставил все точки над i. Я раньше уже слушал несколько докладов про NoSQL, но только после этого доклада сильно проникся и многое осознал. Советую посмотреть запись, когда Стас ее выложит.

CoachDB

Тоже очень интересный доклад. Перед выступающим стояла задача автоматизировать сбор данных с электро-счетчиков через GPRS. Прототип они писали на Python + Postgres, но в итоге решение получилось очень элегантное.
CoachDB по сути сама может выступать как сервер приложений с выполнением JavaScript-кода. Например, может отдавать HTML. Соответственно если логики обработки данных мало, то можно обойтись без сервера приложений вообще. Вроде бы это тот же PL/SQL, только в профиль. Но JS как язык все-таки поинтереснее. Я его недолюбливаю, но это связано с поддержкой браузерами, в БД же все должно быть стабильнее.
Итого, отрекламировал CoachDB докладчик отлично. Осталось ощущение крутоты технологии. Тоже советую доклад в записи посмотреть.

Остальное

Корпоративные приложения на Oracle

По описанию доклада это был чисто наш кейс. Так и оказалось. Ребята из Самары автоматизируют процессы для крупных американских продуктовых ритейлеров. Тот же Oracle, те же сервера приложений (правда на Java). Тот же самописный ORM, те же сложные запросы, не укладывающиеся в ORM и написанные на голом SQL. Тот же ExtJS для веб-морды. В общем, мы явно идем в струе.
После оооочень долгого описания предметной области докладчик наконец-то перешел к техническим подробностям. Я сильно не вслушивался, т.к. в производительности Оракла не копенгаген, но нашим проектам, где Oracle хочется ускорить, может быть получится узнать что-то новое. Хотя, наверняка у нас примерно то же самое все и используется.
Из интересного - сервера приложений у них хоть и на Java, но все равно на Windows 2003 сервер, т.к. какие-то аналитические библиотеки доступны только как dll.

MPS

Специальный инструмент от JetBrains для DSL. Программы пишутся в PlainText, но редактор на лету конвертирует это в дерево выражений, исходники хранятся как дерево в XML. У нас в компании есть поборники DSL, так что на MPS посмотреть стоит. В самом докладе сильных технических подробностей не было, так что его можно и не смотреть.

Mac AppStore

Очень динамичный и интересный доклад. Продавать десктопные программы для Mac стало намного проще. Около 90% продаж стало приходиться на AppStore. Меня несколько фактов:
  • Россия в пятерке по обороту денег в Mac AppStore. Нагуглить и проверить я не смог, так что остается поверить.
  • В США реселлеры берут 5-10% с программистов за организацию продаж их программ. Apple соответственно берет 30%, что сильно больше. SoftKey же у нас берет 40%, так что платить Apple для российских разработчиков даже выгоднее.

Измерение покрытия тестами

Докладчик из Oracle (ранее Sun) занимается тестированием коровой функциональности Java. Скучно рассказывал про измерение покрытия. Я весь доклад пытался сформулировать вопрос: "зачем мерить покрытие", но так и не сформулировал. Мы у себя покрытие мерить отказались. Я серьезно начал подумывать, что для повышения качества UniNet к этому стоит вернуться, приняв какие-то пороговые значения. Докладчик советовал 70% строк и 90% публичных методов.

Node.JS

Очень харизматичный докладчик, так что успех рассказа был обеспечен. Сама технология: выполнение JS на сервере (к слову о CoachDB, это явно становится трендом). С возможностью в реалтайме обращаться к браузеру клиента. Давно про это слышал, теперь понял как оно работает. Не совсем понятна ниша применения, нужно будет еще почитать.

Nemerle

У нас в CustIS на Alt.Net не был, так что решил послушать. Как только услышал слово макрОс, сразу начал думать как это отлаживать. Спросить у докладчика как-то не успел, а на продолжение не пошел. Я лично не очень заинтересовался проектом, если уж смотреть на функциональщину - надо смотреть на поддерживаемый Микрософтом F# и его взаимодействие с C# там где нужно ООП. Смысла вкладываться во что-то еще не увидел.