. Егор Бугаенко, Teamed.io — Объектно-ориентированное вранье
Java-конференция для студентов JPoint 2016 Student Day
Москва, 24.04.2016
То, что cейчас в Java называется ООП, почти ничего общего не имеет с тем, что должно так называться. Не дайте себя обмануть на самом старте, будьте осторожны.
Казалось бы, доклад про устроение DevOps должен быть про настройку Дженкинса, но нет!
Этот доклад для тех, кто понимает, что DevOps — это история про культуру, коллаборацию и общение, но не очень представляет, как будучи скромным исполнителем или тимлидом, повлиять на целый энтерпрайз, и сдвинуть организацию в сторону DevOps.
Барух расскажет какими методами можно воспользоваться для влияния на stake–holder-ов, что кому говорить, как мотивировать, и как работать с возражениями. Пожалуй, за исключением парапсихологических практик и гипноза (которые не стоит раскрывать неокрепшим умам), на этом докладе будут обозрены все способы влиять, не имея полномочий на благо наступления повсеместного DevOps в индустрии.
Барух Садогурский (a.k.a. JBaruch) — Head of DevOps Advocacy и Developer Advocate в компании JFrog. Больше всего любит рассказывать о технологиях — то есть просто поболтать любит, но человек, говорящий о технологиях, имеет умный вид, да и 18 лет опыта в сфере высоких технологий никуда не делись. Когда он не выступает (ну, или не летит к месту следующего выступления), то изучает технологии, людей и то, как они работают, точнее, не работают вместе. Барух — соавтор книги «Liquid Software», CNCF ambassador и профессиональный спикер по таким темам, как DevOps, DevSecOps, Go, Java и др. Он регулярно выступает на таких известных конференциях, как Joker, JPoint, DevOops, Heisenbug, DockerCon, GopherCon, Devoxx, DevOps Days, OSCON, Qcon, JavaOne и др. Некоторые его доклады можно посмотреть здесь: jfrog.com/shownotes.
Леонид Игольник хорошо знаком и с разработкой, и с управлением, и с администрированием масштабных проектов. До недавней продажи SignalFx в Splunk он занимал должность Executive Vice President of Engineering в SignalFx. Всю свою карьеру он занимается онлайн-приложениями, начав её в одном из первых интернет-провайдеров Израиля. Первый опыт работы с масштабными приложениями на Java у него произошёл в 2002-м, когда он работал во втором по величине на тот момент доменном регистраторе.
. /*У вас в голове звучит музыка из вашего любимого сериала про Шерлока Холмса*/
— Шерлок, почему опять ничего не работает?
— Это элементарно, друг мой! Во-первых, вы пытаетесь запустить пятый Spring на Java 7. Во-вторых, после пары месяцев использования Groovy вы совершенно перестали уважать точки с запятой. Ну а в-третьих, в вашем ноутбуке сдохла батарея.
Да, это будет необычный доклад. В нем Холмс и Ватсон раскроют несколько загадок, с которыми вы сталкивались, сталкиваетесь или будете сталкиваться при каждодневной разработке. Кишок сборщиков мусора и байткода не будет, зато будут инструменты, библиотеки и фреймворки, которые озадачивают рядовых разработчиков в каждодневной рутине, приводят к простою, профукиванию дедлайнов и затяжным депрессиям. Практически, в этом докладе Шерлок и Ватсон спасают ваш лоб от фейспалмов и граблей, на которые кто-то уже наступал.
Сколько дизайн-паттернов вы знаете? 24? 36? 100? А сколько из них вы применяете в реальной жизни? 3? 5? 10?
В этом докладе Евгений покажет, как при помощи Spring можно легко и просто реализовывать наиболее популярные паттерны, с которыми мы сталкиваемся в повседневной жизни. Chain of responsibility, strategy, command, lazy initialization, scala traits, AOP, proxy, decorator, и прочие паттерны и концепции, внедренные при помощи Spring, сделают ваш код мягким и шелковистым. А перхоть вашего boilerplate в виде switch-ей, статических методов, наследования, и прочей устаревшей шелухи, посыпется с вашего проекта под радостные крики сонара. Код станет более читабельным, гибким и поддерживаемым. Такой код проще обкладывать тестами и, наконец, это просто красиво.
В этом докладе мы не будем ковырять внутренности Spring или пытаться его кастомизировать. Мы даже не напишем ни одного beanpost-процессора или стартера (разве что кастомный classloader). Только практические задачи и самый обычный, простой, добрый, пятый Spring.
.Итак, ты решил обновить софт у своих пользователей. Может быть, это 100500 микросервисов в их кластере Kubernetes, может быть, это очередной редактор на JavaScript у них на ноутбуке, может быть, это приложение для дипфейков в их смартфоне, а может быть, ты даже не побоялся обновить их автомобиль! Что уже может пойти не так, правда?!
В этом докладе мы проанализируем реальные фейлы, которые ежедневно и повсеместно происходят при обновлении софта. Мы посмотрим, как всевозможные DevOps-паттерны ложатся на эти сценарии и как правильное их применение смогло бы, возможно, спасти всех этих людей. И нет, хорошенько проверить всё ручками перед отправкой и попросить у пользователя еще раз хорошенько проверить всё ручками при приёмке не является одним из рекомендованных паттернов, несмотря на то, что так делает половина индустрии!
Послушайте полезные кошмарики про непрерывное обновление, и вы получите шанс познакомиться со множеством очевидных (и не таких уж и очевидных!) проверенных идей и практик, которые вы сможете начать применять сразу после доклада, и, может быть, ваши пользователи будут ненавидеть вас немножко меньше!
. *У вас в голове звучит музыка из вашего любимого сериала про Шерлока Холмса*
— Шерлок, почему опять ничего не работает?
— Это элементарно, друг мой! Во-первых, вы пытаетесь запустить пятый Spring на Java 7. Во-вторых, после пары месяцев использования Groovy вы совершенно перестали уважать точки с запятой. Ну а в-третьих, в вашем ноутбуке сдохла батарея.
Да, это будет необычный доклад. В нем Холмс и Ватсон раскроют несколько загадок, с которыми вы сталкивались, сталкиваетесь или будете сталкиваться при каждодневной разработке. Кишок сборщиков мусора и байткода не будет, зато будут инструменты, библиотеки и фреймворки, которые озадачивают рядовых разработчиков в каждодневной рутине, приводят к простою, профукиванию дедлайнов и затяжным депрессиям. Практически, в этом докладе Шерлок и Ватсон спасают ваш лоб от фейспалмов и граблей, на которые кто-то уже наступал.
[ Видели этот доклад на JPoint или онлайн? Не беспокойтесь, мы оставили зажигательный формат, но набрали нового материала! ]
. Java-конференция JPoint 2020 и другие наши конференции пройдут в онлайне.
Подробности и билеты: bit.ly/jugruconf
****
Спонсоры митапа
ALM Works
Ребята делают офигенный плагин Structure for JIRA: almworks.com/structure/overview.html
Узнать о карьерных возможностях в ALM Works:
careers@almworks.com
«То есть как это автоматизировать ВСЁ? — воскликнули тестировщики. — А как же ручное тестирование?!»
Да, коллеги, девопсники наступают, и эти люди хотят отобрать у нас наш кусок хлеба и автоматизировать нас вон из профессии. Звучит страшно? Давайте разбираться. Для этого мы пригласили на наш уютный Heisenbug Баруха Садогурского, того ещё популяризатора DevOps, и он нам честно расскажет, собираются ли такие, как он, уволить всех тестировщиков или всё-таки мы ещё повоюем.
. Казалось бы, зачем разработчику персональный бренд? Сидит, никого не трогает, примусы починяет (т.е. код пишет). Чем меньше его знают, тем меньше его трогают, ведь правда?
Но тут вот какое дело: согласно исследованиям, лучший способ повысить зарплату, это сменить работу. А при приёме на работу публичность и персональный бренд — половина дела! А уж когда дело доходит до найма, то хороший персональный бренд-менеджмент даст 100 очков вперед любым печенькам с пинг-понгом.
В этом докладе Барух расскажет вам как так получилось, что вы знаете, кто такой Барух, как это знание конвертируется в плюшки для Баруха, и как вы можете повторить его успех.
. Мы видели много докладов об улучшениях в свежих версиях Java. Модули, var, неизменяемые коллекции, switch-выражения достаточно популярны среди докладчиков. Большие улучшения производительности, будь то новые сборщики мусора или компактные строки, тоже освещались. Однако мало кто говорит о маленькой работе в стандартной библиотеке. Между тем эта работа идёт, и незаметно для пользователей Java становится немного быстрее тут или там.
В этом докладе поговорим о маленьких улучшениях производительности в самых базовых и вездесущих классах вроде String, ArrayList, HashSet, которые были реализованы после выхода Java 8 и делают нашу жизнь лучше.