Friday, October 14, 2011

Java One 2011 Day 2 (3rd of October)

On the Conference second day JavaOne moved to it's own place. Oralce OpenWorld stayed at Moscone Center and JavaOne moved to Hilton San Francisco, Nikko and Parc 55.

1. JavaOne Technical Keynote

Could be found at http://medianetwork.oracle.com/video/player/1176404809001

You should watch it. No comments.

2. Best Practices for Migrating Spring Applications to Java EE 6 by Bert Ertman and Paul Bakker from Luminis Technologies

Quite a controversial topic, but quite interesting from the technical perspective. Starting from this particular talk I understand that JBoss started a war with SpringSource for the 1st place among JavaEE platforms.

 




 

Topics:

Spring is the proprietary framework developed by a vendor who is in virtualization business

Spring does not support JavaEE

Spring + Tomcat is slower not faster than modern JavaEE containers

AOP = Evil

Source code could be found here.

2. Continuous Integration with Jenkins by Kohsuke Kawaguchi
It's nice to see the Hudson/Jenkins creator. Great talk but the first part was quite abstract and targeted to prove that Jenkins it better than Hudson and that Eclipse is wrong by supporting the last one. Still could not find the slides.

Interesting topics:
Jenkins now is not only the CI server but the code reviewer and test system. Kohsuke showed a useful integration with Gerrit, when the tests are run against the local branch before the code is pushed to a server.
This could not be reproduced for the mercurial, but there is a workaround for SVN.


3. Apache Cassandra for Java Developers by Nate McCall @zznate
Nate quickly explained the Cassandra basics and jumped to the API (Hector). The presenter speed was quite high so I tried to do my best to be on the same page. As a result a could not remember most of the presentation :(

GitHub: https://github.com/zznate/cassandra-tutorial
https://github.com/zznate/hector-examples
Main topics and quotes:
Cassandra has no ACID transactions
Static/Dynamic column families
Pre-calculated query results
Column family templates - analogue of Spring JDBCTemplate
Take a look at Hector JPA (GitHub)

4. Project Jigsaw: Putting It Together by Mark Reinhold (Chief Architect, Java Platform Group)
Mark explained the problems his team faced while developing new packaging/module system for Java. Could not find the slides.

5. JVM Bytecode for Dummies (and the Rest of Us Too) by Charles Nutter (JRuby Architect Engine Yard)
Charles probably the first person who explained using simple examples what is bytecode actually is. I'll probably post more in this topic later on.
The first person who answered the question about finally block :)



6. Simplify Your JMS Code with Spring by Bruce Snyder (Senior Software Engineer SpringSource)
Bruce explained features and usage of JMS template in Spring. Some of the stuff I already knew, some of it I was not.
Slides.
GitHub: https://github.com/bsnyder/spring-jms-examples



General topics:
Pay attention to the Arquillian framework

Thursday, October 13, 2011

Java One 2011 Day 1 (2nd of October)

This was not actually the JavaOne first day. Some sort of training day :) Keynotes, main presentations as well as exhibition and demo are starting at Day 2.
Impressions:
Moscone center is really HUGE. I haven't seen anything that could be compared to this place. Probably the one of the biggest exhibition centers in the world.
Presentations:
1. MySQL: Don't Be a Rookie Forever—Be in Command (Line) by Giuseppe Maxia @datacharmer
Great talk. Quite technical. Found a lot of stiff for myself. Felt satisfied because I'm not the only one who are using MySQL command line. Recommended to watch the presentation, read the author books. Listed below. Topics and quotes:

Giuseppe recommends to use Unix pipes for query execution. Aliases is very useful (i.e. alias myself =mysql). There are batch mode and table mode for the query results. Functions usage with $(function).



2. Importing and Exporting Data Between Hadoop and MySQL by Sarah Sproehnle
Interesting talk. Found a lot of interesting about Hadoop and it's tools. Sqoop allows to import data from RDBMS to have some sort of general data storage in Hadoop. Hive is the SQL for NoSQL.
Now I know more about Cloudera products.
Slides are here.

3. Explaining the EXPLAIN in MySQL by Ronald Bradford
Everything about EXPLAIN that I didn't know and always tried to find out. Slides.

4. JCP members panel
A very disappointing talk for me because the JUG's are weak in Ukraine and in particular in Kyiv. JCP members explained the new JCP approach to the specification development. New approach means that JUG should should influence more on the expert groups. Because specs developed only by vendors expert groups are far away from the "trenches" and not useful on a real projects.

Books:
Unix power tools
Big data analysis with Hadoop MapReduce (article)

Monday, September 26, 2011

AgileEE 2011 Day two (September 24th)

That is my AgileEE conference second day impressions. First day article is here.

Presentations:

1. Jurgen Appelo “How to Change the World”


Jurgen presented some of the main ideas of his book "Management 3.0". Once again "it's all about the people". Jurgen described 4 main facets of social change. I'll try to get the book soon. Recommended.

2.  Danny (Danko) Kovatch @DankoAgile “Motivation 3.0 and Agile”


Danko told us about what does modern science think about the motivation and what companies are doing about it. The difference is HUGE. Recommended. Not a new topic for me, I was bored a little in the middle of the presentation.

3. Lasse Koskela “Agile Workflows for Version Control”

I liked the content of the presentation where two approaches to the Agile branching strategies was compared, but I don't get the why it was given so much time for arguing. Could not find the slides.

4. Lightning talks



Felix told us about how important is to have a Stories READY before implementation is started. We already practising this in our teams, but the very useful to the see that somebody summed up this. Recommended.

5. J.B. Rainsberger “The Extreme Decade: Progress, Pain, Paradox”


Probably the best Agile presentation EVER. Recommended. And the final slides about post-Agile is probably the best thing a I've ever seen. Thank you JB! The final video (on "What we've done with the Agile?"). Could not wait till I see the video.

Books:

Things to try or think about:

  • Get a web camera :)

  • Some ideas for my presentation about he Code Review problems in the teams

  • Try Reflection workshop's

  • Read more about PDCA cycles

  • Try to get live feedback from team members on my current project

  • Try Cucumber or JBehave

AgileEE 2011 Day one (September 23rd)

That's my third AgileEE conference and I must admit that conference organization becomes better year after year. Despite that I could not say same about the venue. Third year in a row conference venue is President Hotel.

Overall impression:

A lot of new faces (last year I can name at least one third of audience).  Same string quartet during conference opening coffee brake. Personally I don't get the issue with the badges... Peace of paper without the plastic cover. Till the end of the day most of the people had to repair them. QR code with the visitor contact data on the badge  - great stuff.  Good for possible employer and for meet-up.  Wi-fi quality is the same, means that if you want to have a stable connection  - use your own mobile Internet. Android app is quite useful. I must confess that I don't not fully understand the organizers PR move  "Agile is an adventure".

Let's  move forward to the presentations I participated:
1. Dr. Alistair Cockburn "Effective Software Development In The 21st Century: The New Face Of Software Engineering"




I found Alistar's talk very inspiring, but at the same time very abstract. The keynote basic idea is "it's all about people". That would not be Alistar if he would not talk about new certification, courses and stuff. It's all about the people of course but also it's all about the money :). Slides in here. Among the quotes: "Agile is the mind set"

2. Sven R?pstorff "The fast-tracked story point oracle"




I liked a workshop very much. I've learned a couple of new estimation techniques. The slides is on the Slideshare. Had a conversation with Sven and find out that we both know a couple of German Agile coaches :) small world.

3. Lightning talks

A new format for AgileEE. Presentation should take about 8 min, with- or without the slides. So to the talks:

Dmytro Mindra @dmytromindra “Software Craftsmanship Revealed”



Really great talk about the craftsmanship and why tthe SW development is craftsmanship. Dmytro's presentation is better and better time after time. That is a geed example of right approach to the things you do. I keep a wrist belt still because I REALLY promise not write a crappy code.

Dima Malenko @dmalenko “Just Do It”



Very inspiring talk. Recommended. The first step is the most important and the hardest among all future steps.

Artjom Serdyuk @ek_artem "Why do they leave? And how make them to stay"



Artjom focused in the "people and interactions" once again. Also recommended. Slides.

Alexander Lutsaevsky @AlexLuts “The Kama Sutra of Retrospectives”



Alexander answered to a question "what to do if something is going wrong during your retrospective". Recommended.

J.B. Rainsberger fired up a short talk about SW product complexity and TDD. No slides. Great!

4. Piotr Zolnierek @pzol "Holistic Deployment"



A very very strange talk. Now looking to the slides I could not remember what exactly Piotr tried to tell us about. The presentation is about deployment and production deployment strategies. Nothing new or inspiring.

5. Andrea Provaglio (http://www.beyondagile.com/)  “Overcoming Self-organization Blocks”



Really great talk. Andrea is explaining what really "self-organizing" means and why it is so important. Quotes and thoughts: "Educational system is not up to date with the industry", "Adult to Adult instead of Parent - Child interactions",  "Rowing against the tide", "if you change something inside  - something outside changes as well"

6.  Elisabeth Hendrickson @testobsessed “Agile Testing, Uncertainty, Risk, and Why It All Works”



Probably the best talk of the day. The purpose and the meaning if the therm "testing" is defined very clearly. And the triangle "Intentions  = Actual needs = Implementation" is great. Recommended!!!

Other topics:

I decoded to place a book list and "stuff to think about" at the end of the Day 2 report

Sunday, August 21, 2011

IT-Jam 2011, 20-е августа, Одесса

Ну начнем как говорится сначала. Когда отбирали доклады на конференцию, был в свадебном путешествии. Просто так ехать не хотел, но в последнюю минуту все де передумал. И вот с билетами на "Черноморец" и бутылкой пива в пятницу вечером поехал на вокзал.

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

Площадка для проведения оказалась и правда большой, такого размера в Киеве пожалуй только МВЦ, где проходил а этом году JEEConf. Порадовал wi-fi для такого количества людей работал достаточно хорошо. Я твитил с нового смартфона, получалось медленно с непривычки, но я старался :)

Кейтеринг подкачал, что было ожидаемо для такой толпы народа, удивило поведение коллег. Бутеры, воду и печеньки с кофе разметали так, что дым стоял. Напомнило SunTechDays 2010 в Питере, правда там были, наверное студенты всех технических ВУЗов города. Ну да ладно, наша повеcть не про печеньки.

Про доклады

Отчему, что общий уровень докладов не очень высокий. В этом не меньшая вина организаторов чем, самих докладчиков. Также временами было ощущение что если "сам себя не похвалишь ...". Я имею в виду что доклабы были переполнены скрытого и не очень пиара, компаний. Чтоб быть честным отчему что доклады сотрудников моей компании в этом не уступали.

Олег Кондратенко "10 years of Java Enterprise Architecture Design in Telecom"

Олег рассказал про эволюцию продукта выпускаемого Net Cracker и условиями успеха на рынке телекома. Меседж про то, что залог успеха в том чтоб разработчик был к тому же и бизнес аналитиком мной не понят. У меня на этот счет свое мнение.

Зеник Матчишин "Building Semantic Search Engine"

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

Игорь Хотинь  "Gradle – next generation of build tools"

Заставил задуматься о том стоит ли продолжать использовать Maven. Но ненадолго, аргументов было не так уж и много, НО обьязательно попробую  Gradle на досуге. Кроме того очередной звонок не пропустить Полиглот Мавен.

Сергей Маляров "Maintenance fun using Kanban"

Доклад Сергея я до конференции видел, кроме того речь идет о проекте в котором я работал. Для своего первого выступления, мне кажется что Сергей был очень неплох. Если говорить что состав презентации то Сергей попробовал ненавящево намекнуть что стоит попробовать Kanban :)

Открытая панель

Ничего особенного от открытой панели я не ожидал. Мои представления о шагах компаний-грандов в ответ на кадровый голод практически совпали с ответами участников. Правда столько внимания к вопросу "где взять джуниоров" на мой взгляд плохо закончиться. Ими же должен кто-то руководить...

Ну и как уже было сказано "сам себя не похвалишь ..."

Pecha-Kucha

Также вполне ожидаемо эта часть произвела хорошее впечатление, как и принесла массу положительных эмоций.

Николай Алименков, как всегда, был на уровне, достаточно интереный доклад про небольшие команды. Он, правда, забыл сказать что все это было придумано в армии очень очень давно. Сейчас такая команда называется "отделение". И отделение таки-да многофункционально.

Максим Вишневецкий понравился лаконичностью и оригинальностью повествования. Его идею стоит взять на заметку.

Тарас  Калапун рассказал про свое участие в Стартап уикенде в Копенгагене. Немного нервничал, сбивался, но тема была актуальная.

Владимир Железняк попробовал немного поработать в стиле stand-up comedy но на мой взгляд это ему не удалось. Также не очень получилось и обьяснить психологию простыми словами. У Владимира "тяжелая" дикция и он похоже пытается это обыграть.

Дмитрий Маленко задел за живое. Я сам каждый раз возращаясь на родину испытываю культурный шок. Много мыслей совпали :(

Дмитрий Миндра в характерной для него манере рассказал на примерах что такое хорошо и что такое плохо в современной архитектуре программных продуктов. Мне понравилось - хочу слайды.

Алекс Туманов - "известный человек в Одессе". Первый раз услышал про такого человека. Как я понял один их деятелей академии "Шаг", энтузиаст Майкрософтовского Imagine Cup. Как человек вышедший из спорта я позитивно отношусь ко всякого рода соревнованиям, поэтому думаю что инициативу стоит поддержать.

Лина Шишкина рассказала милую историю о своей пути "через тернии к звездам". Лина выступала первый раз и заметно переживала. Мое отношение к докладу противоречивое. С одной стороны он вроде как ни о чем, а с другой впечатление положительное.

 

Monday, May 23, 2011

Отчет о JEEConf (21 мая 2011 Киев)

В этом году JEEConf проводится в первый раз, кроме того это первое подобное мероприятие после долгого перерыва. На моей памяти последний раз киевский JUG собирался года три назад. Организатором как и в случае с SeleniumCamp выступил тренинговый центр XPInjection. Место проведения, МВЦ на Левобережной, на мой взгляд, было выбрано удачно. Достаточно места и непосредственно для докладов и для общения докладчиков. Кроме того близко от моего дома :). Побеседовав с организаторами я убедился что проблема в выборе места проведения для мероприй такого рода в Киеве по прежнему остается. Например принять мероприятия порядка 500 человек уже становится невозможным.

Притен также интерес спонсоров к конференции. Хотя при текущей ситуации на рынке труда он понятен. Наличие интересных призов при этом также радует ничуть не меньше.

Ну а теперь про доклады:

1. Claus Ibsen "What Riding the Camel can do to make integration easier for you "

Сlaus  является project lead  в компании FuseSource и основный контрибьютором в Apache Camel, а также одним из авторов Camel in Action. Camel позиционируется как Open Source Integration Framework, отсюда следует и характер задач, которые он призван решать. В очередной раз идет ссылка на книгу Enterprise Integration Patterns, думаю прочитаю полностью. По большому счету Camel делает routing сообщений от отправителся к получателю при этом позволяя производить с сообщениями разноображные манипуляции, кто выступит в качестве отправителя/получателся  как и в качестве среды передачи предлагается выбрать разработчику. Библиотека старается быть как можно более легковесней и гибче. До презентации думал что Apache Camel это SOA/ESB  для бедных -  это не так. Как я уже сказал это легковесный и гибкий инструмент. Библиотека тесно интегрирована с ActiveMQ и ServiceMix. Для начинающих Claus рекомендует прочесть вот эту статью. В общем могу сказать что доклад хорошо структурирован, докладчик несмотря на непривычный английский способен удержать внимание уадитории.

2.  Ренат Ахмеров "Использование Scala и GridGain для разработки распределенных систем с высокой производительностью"

С этим докладом я немного прогадал - пришел поздно и смог месть где-то в последних рядах. После 5ти минут доклада в аудиторию рассчитаную на 120 человек набилось человек 150. Ренат является одним из разработчиков GridGain. Обьяснение "сухой" теории заняло у докладчика минут 15 от силы. Но наверное на один из самых интересных для меня вопросов ответа я так и не получил. Как ноды находят друг друга - было сказано только что это "auto-discovering". Как он работает я не услышал. Презентация предполагала "живое" написание кода в IDE с использованием slalar библиотеки Scala, разработанной для поддержки GridGain. Код на Scala из последнего ряда мне видно не было поэтому со второй части доклада сбежал на GC.

3. Владимир Иванов "Диагностирование проблем и настройка GC в HotSpot Java VM"

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

4.  Евгений Компаниец "Быть в 10 раз эффективнее благодаря Groovy"

Евгений рассказал о своем текущем проекте. Это система управления рекламными блоками в эфире некоторый телеканалов. Достаточно классический для Java стек. С однним НО. Вместо Java кода используется Groovy :). На Java написан только клиентский код для GWT.  На примерах Евгений красноречиво показал как Groovy может быть эффектиыней для решения ряда бизнес задач. На самом деле очень интересный посыл, но мой вывод такой что Groovy пока не тянет на то, чтобы стать основным языком для разработки мало мальски крупных проектов - что собственно косвенно и доказывает презентация. Еще очень спорный момент с читаемостью груви-кода... Слайдов пока не нашел.

5.  Павел Яскевич "Cassandra как распределенная NoSQL база данных"

Павел является одним из разработчиков Cassandra. Презентация по своему содержанию была интересной, но многое портила подача докладчика. Я честно не понял и половины - пришло потом после прочтения интернета :). По всей видимости Павел очень сильно волновался и это подпортило общее впечатление от такой интересной темы.

6.  Dejan Bosanac "Advanced Messaging with ActiveMQ"

Dejan также как и Claus Ibsen работает на FuseSource, автор ActiveMQ in Action. Один из комитеров ActiveMQ, конечно. По словам самого докладчика организаторы попросили не делать обзорного доклада, а сосредоточиться скорее на нетривиальный ситуациях при использовании ActiveMQ. Доклад интересный, единственное что подпортило впечатление это то, что докладчик как видно из имени не носитель английского языка пытался говорить достаточно быстро и временами надо было очень напрячься чтобы понять о чем идет речь. Слайдов пока не раздобыл.

7. Николай Алименков "Особенности разработки масштабируемых приложений на Java и AWS"

Николай в обычной для него непринужденной манере рассказал о своем опыте работы с AWS на реальном проекте. Несмотря на то, что доклад обзорный из него можно получить необходимую базу для принятия решения работать с AWS или нет. Сделаю акцент что речь НЕ шла о такой интересной теме как Elastic Beanstalk, которая на мой взгляд наиболее сейчас интересна для Java разработчика. Слайды доклада тут.

PS. Организаторы обещали собраться слайды всех докладов здесь.

Sunday, May 15, 2011

GeeCON Community Day (Saturday 14th May)

Conference organizers planned Community day a informal meet-up for developers. But there still was some presentations.

1. Anton Arhipov "Binary patching of Java classes for fun (and profit)"

I've missed Anton's presentation on the Conference Day II, so I visited another one on the Community Day. There were not so many people out there we could freely talk and ask questions. Anton explained how the code transformer works and the Java built-in tools. Than some examples of JavaAssist from JBoss and than the JRebel examples. I decided to try free 3-month license for the conference attendees. I hope that Anton will have time to present in Ukraine.

2. Piotr Dziubecki "Miing Groovy, Java and BlazeDs/Flex in HPC portals"

I've missed the word "portal" in the presentation title. Just wanted to hear about Groovy and BlaseDS + Java mix. Nevertheless guys presented their framework to build portlets for Hign Performace Portals. The technology stack is described. Some interesting ideas but generally  - not my field of interest.