DataArt

JavaDay в Киеве — много знаний и пиццы

Блог DataArt, Октябрь 2013, JavaDay в Киеве — много знаний и пиццы

19 октября я был на Java Day — крупной конференции для Java-разработчиков и сочувствующих. Первые два выступления были общими, остальные шли в четыре потока.

Первым шел доклад Product Manager из Oracle David Delabassee “Java EE 7, 8 and beyond”. Он подводил итоги каждого релиза Java EE и рассказывал об эволюции приоритетов. Так, актуальная сейчас Java EE 7 ориентирована на повышение производительности разработки, лучшую поддержку HTML 5 и решение задач Enterprise, для чего было внесено достаточно много добавлений: поддержка JSON, JAX-RS 2.0, вебсокеты, JSF 2.2, работа с batch’ами, утилиты для concurrency, JMS 2.0. При этом было изменено или добавлено 14 JSR’ов. Докладчик подчеркнул, что этим Oracle продемонстрировал способность развивать Java, и обозначил беспочвенность опасений, возникших у комьюнити после покупки Java у Sun. Для Java 8 ожидается поддержка JSON-B, подвижки в Storage, NoSQL, Multitenancy for SaaS apps, Cloud, Thin Server Architecture, PaaS enablement, Concurrency, JSON-B.

Также был упомянут интересный проект Avatar, у которого недавно состоялся early access релиз. Он позволяет разрабатывать сервер-сайд-сервисы для Java EE на JavaScript аналогично Node.js с поддержкой REST, WebSocket’ов и Server-Sent Events. При этом используется архитектура Thin Server Architecture и UI-логика, включая модели, view и контроллеры переносятся на клиент-сайд.

Дальше был “How To Do Kick-Ass Software Development”». Доклад делал представитель Atlassian Sven Peters , который, ко всеобщему удивлению, вышел на сцену в костюме супергероя Kick-Ass из одноименного фильма, известного у нас как «Пипец». В начале докладчик напомнил слушателям сюжет фильма, обратив внимание, как герой терпел поражение в борьбе с преступностью, пока не обзавелся командой единомышленников, после чего его деятельность стала успешной. Эта ситуация, по мнению докладчика, напоминает процесс внедрения новых практик, который не обязательно удается сразу, но позже, как правило, вознаграждает затраченные усилия.

Докладчик поведал, как творческое применение принципов Agile в компании Atlassian позволило существенно улучшить ее работу: улучшить качество ПО, уменьшить оверхеды, ускорить разработку, при этом осчастливить и заказчиков, и сотрудников. Среди конкретных деталей такого подхода _ прототипы UI с вырезанными из бумаги элементами интерфейса, помогающие его проработать с минимальными затратами. Сюда же можно отнести отказ от “shit umbrella” для разработчиков, с которыми есть прямая связь у пользователей во время регулярных митингов, обязательную недельную практику разработчиков в службе поддержки, позволяющую по-настоящему понять пользователей и их проблемы. Похожим образом стараются добиться в Atlassian «сращивания» команд разработчиков, QA и дизайнеров. Так, разработчики проводят часть тестирования под руководством QA и участвуют в создании дизайна согласно гайдлайнам. А дизайнеры, по возможности, делают верстку, чтобы избежать двойной работы по переносу интерфейса из мокапов в Photoshop. Интересной успешно реализованной идеей было создание «порталов». Автоматы с камерой и большим круглым монитором, внешне напоминающие врата из Star Gate, позволяют общаться людям из разных офисов, видя собеседника практически целиком в натуральную величину, как будто он стоит рядом.

После этого доклада потоки разделились, и я пошел слушать «The Dark Arts of Performance Tuning» Леонида Игольника, вице-президента по Product Development в Oracle. Он рассказал, как с помощью средств, идущих в поставке с JDK, и некоторых бесплатных инструментов выявлять источники ухудшения производительности и с ними бороться. Главным советом было не пытаться выявить узкие места на этапе разработки, поскольку все равно не получится. А проводить замеры уже на работающей системе и отталкиваться уже от них. Также докладчик провел довольно интересное живое демо с примерами, в том числе, с использованием GCViewer, Memory Analyzer и VisualVM с плагинами.

Следующим я послушал «Компромиссы в Java 8 с примерами и картинками” софтверного инженера Oracle Алексея Федорова, который рассказал про необходимые компромиссы при выпуске версий Java в сферах контроля качества, своевременности Critical Patch Update’ов и совместимости. Среди баек был затронут вопрос создания альтернативных JVM, в ходе чего Алексей упомянул разрабатывающуюся в Новосибирске Excelsior JET — JVM с AOT компиляцией, иными словами, позволяющую скомпилировать Java классы в x86/x64 нативный код, использующий их рантайм.

Было очень интересно узнать об опыте анализа причин падений JVM на сервисе «Одноклассники.ru» на докладе «Аварийный дамп — «черный ящик» упавшей JVM», которым поделился ведущий разработчик Андрей Паньгин. Источниками проблем были ошибки в native-коде, некорректное использование закрытого API, баги JVM, а иногда — и «железа» (частота в порядке перечисления). Рассказ сопровождался дизассемблированием дампов инструкций, разбором значений регистров, стека и карты памяти.

На выступлении «Invokedynamic: роскошь или необходимость?» Владимира Иванова, Principal Member of Technical Staff в Oracle, были разобраны подробности поддержки invoke dynamic в Java и преимуществах его использования, в частности для динамических языков.

В «Distributed systems and scalability rules» Oleg Tsal-Tsalko рассказал о распределенных системах и проблемах, возникающих при их построении.

И наконец, доклад Никиты Сальникова-Тарновского «I bet you have a permgen leak in your application»! В основном обсуждалась тема ошибок «java.lang.OutOfMemoryError: PermGen space», часто возникающих во время редеплоя, и их причин, обычно связанных не с оплошностью разработчика, а с недоработками в используемых библиотеках. Известным обходным путем является перезапуск при деплое, но это не всех устраивает. В таких случаях сильно помогает Plumbr, позволяющий обойтись без большого объема рутинной работы и предлагающий решения для многих известных проблем такого рода.

Кстати, позже на сайте конференции будут доступны и видеозаписи выступлений.

Окончание дня ознаменовалось Atlassian Beer After-Party в одном из конференц-залов. Каждый посетитель имел возможность обменять полученный в начале конференции жетон на пиво. Кроме того, было просто море пиццы, которая мгновенно исчезала, но от этого ее на становилась меньше благодаря усилиям официантов. Все это богатство размещалось на равномерно распределенных по залу столиках, возле каждого обсуждалась отдельная тема. Можно было поговорить и как сделать kick-ass комманды еще более kick-ass, и о распределенных приложениях, о облачных решениях Jelastic, на тему IT-юмора и изучения английского языка, стартапы, и про ближайшие конференции. Особо предприимчивые просили жетоны на пиво у тех, кто за рулем и лишен возможности ими воспользоваться. В общем, благодаря After-Party все вопросы, не поместившиеся в программу, были разобраны, и, покидая здание, посетители могли быть уверены, что не только желудки, но и головы наполнены как следует.

Фотоотчет от организаторов

В оформлении записи были использованы фото от организаторов

Блог DataArt, Октябрь 2013, JavaDay в Киеве — много знаний и пиццы Блог DataArt, Октябрь 2013, JavaDay в Киеве — много знаний и пиццы
Блог DataArt, Октябрь 2013, JavaDay в Киеве — много знаний и пиццы Блог DataArt, Октябрь 2013, JavaDay в Киеве — много знаний и пиццы
Поделиться:

Оставить комментарий: