Showing posts with label conference. Show all posts
Showing posts with label conference. Show all posts

16 April 2016

Join me at GeeCON

GeeCON Conference SwagIn less than a month GeeCON is happening again. It is a great three day conference for Java and JVM developers. And you should go there! If you are from Vienna, Austria, it is especially easy and cheap to go there. But I am getting ahead of myself...

Why attending a conference?
Attending a conference has many benefits. Kevin Benore bas summarised some of them: Learning, networking, professional advancement and "Keeping the Flame Alive". Learning new things is a major reason to attend for many people. While you could watch all the content online at home, I have not met anybody who took two or three days off to do that. Also a conference gives you diverse content, sometimes you end in a talk about a topic you have no idea about. I bet that you would not watch such a talk online - why should you?. So the "change of scene" is a very important side effect of a conference. And of course there is swag - or how I call it - loot ;-). I consider swag less important and rather pay less for the conference, but the occasional shirt or mug are great mementos of past conferences.

GeeCON
GeeCON is my favourite conference and I go there every year since 2010. (I missed the first version in 2009 and I am still sad about it. But I have been to more GeeCONs that some of the organisers themselves.) I go there even when I am very busy. I am never disappointed by the content presented, see my extra short summary of GeeCON 2012. To make sure for yourself, I recommend checking out the GeeCON 2016 speaker line-up and the GeeCON Vimeo channel containing all past presentations since 2011. For this year I have the resolution to share the goodness and bring more people (from Vienna) with me, which is why I wrote this little advert.

Cost and Effort of Travelling
Some people like travelling, others do not. I am not fond of business trips and consider them a necessary evil. Kraków, the Polish city where GeeCON takes place, has an airport nearby. There are direct flights to different European airports, e.g. Berlin. From Vienna, where I live, it is even easier to reach using the night train. (I apologise for the following excessive details, but my main goal is to encourage developers from Vienna to join me.) The night train 406 leaves from Vienna Hauptbahnhof every day at 22:50 and arrives the following day at 7:00 in Kraków. When you book early, you might only pay 55 Euro for the special offer "Sparschiene". The night train is great because I can still be at work the day before the conference and I stay one night less at the hotel which saves me money again. The same is true for the return trip, train 402, which leaves Kraków each evening around 22:00.

Polish Night TrainFor the remaining two nights I usually book a cheap hotel next to the main railway station Kraków Glówny, e.g. ibis budget Krakow Stare Miasto, where I can stay for 40 Euro per night. I like the ibis because I can drop my luggage after arriving in the morning. Also one of the bus lines to the venue stops right before the ibis, reducing the hassle of travelling.

Value for Money
Depending on when I book, the total cost for a GeeCON visit (from Vienna) is between 380 and 440 Euro, excluding dinner. This is a ridiculous price for the value of a great three day conference. Because of the cheap travel, even other great community conferences like Devoxx cannot compete with GeeCON.

Training Budgets
The cheap total price enables several options.
  1. For employees now is the time to ask for your training budget. If you work for a reasonable company, there is some money for training and education for sure, however it may be small. The small cost might still make it possible to go to GeeCON on company expenses. Go, ask your manager now!
  2. In my experience money is less of a problem than the time not doing actual work. In such situations I offer to take the days off. As an employee, taking three days off is easier for me than paying 500 Euro from my wallet. This is also a fair approach as education is both the employer's and employee's obligation. So if your boss is unable to send you to GeeCON on company expenses, offer to take three days off to compensate and to show that you are serious about your continuing education. Taking the night train - while not very convenient - pays off again, because there are no extra days needed for travel.
  3. If you are independent, your training budget is exhausted or your boss is a moron, then just take the days off and pay for the whole conference on your own. I am very bad at bargaining and hate arguing with managers, so I took this option several times in the past. You might use your training budget to go to a really expensive conference like JavaOne and pay for cheaper ones yourself.
Come With Me!
As you can see - if you are from Vienna - it is easy and cheap to go to GeeCON. I would like to take you with me because I want more of us to participate and learn and have fun there. I am sad that there are only three participants from Austria attending a great international event with more than 1000 participants. So register for GeeCON now!. If you have any problems or doubts or if you need help in organising your trip, please get in touch with me.

28 September 2014

Advanced Personal Branding

This February I wrote three articles on personal branding for software developers. I discussed creating and strengthening your brand step by step: branding all your accounts and defining your motto, sharing and promoting yourself and maintaining a technical blog. I sorted these activities by difficulty into a kind of personal branding ladder, which will vary for different people depending on their personality. This is the final article covering advanced, that are more difficult and more time consuming branding activities.

Go Out!
Edge Conference at Google New YorkPersonal branding is - well - personal. So you need to meet people in person, interact with them. Find your local user groups or technology related meetups and attend regularly. Join the discussion and talk about the topics you are interested in. You do not need to present anything formally. Regular listeners who ask questions now and then are vital for the existence of any community. There is no way you can fail here. As long as you are authentic, people who share your enthusiasm will want to meet you and discuss your topics. You are interesting to like-minded developers, you just need to allow them to find you.

Present at a User Group
After attending the user group meetings regularly, it is time to take the next step and present something yourself. It it true that some people would rather face death than talk in front of a crowd, but the usual audience at community meetings is forgiving. Remember, most people in the audience are like you and already know you in person. They gave similar beginner talks or know that they should. First time speakers cannot be expected to give flawless talks, and that is the beauty of user groups, full of natural human beings, delivering refreshing and idiosyncratic presentations. Some communities are so successful in encouraging their members to talk, that they continuously breed world class speakers.

Nevertheless I am not saying that your talk does not need rigorous preparation and practice up front. There are several basic things that you can screw up in presentations in general, like giving a wall of text or death by power point. Do your research and read some articles on preparing content, creating slides, presentation techniques and such. There is also much content available on technical presentations in particular. In fact there is only one rule you need to keep in mind: Your presentation is not about you. It is not about you becoming a rock star speaker, it is about serving the audience. For example if you want the audience to read your code samples, make them easy to understand and write them in a large enough font. If the font is too small you are actually conveying the message that you do not care if people read it.

I gave my first presentation at the local Java user group five years ago. It worked out well and today, many presentations later, I still like to talk to smaller groups because these presentations often become conversations and large crowds make me nervous. If you have an extrovert character and like talking to people, giving regular presentations could be less cumbersome than maintaining a technical blog. Here you might change the order of steps. Anyway you need to do both!

Organise a User Group
Organising a local community is hard work. Meetings have to be scheduled, speakers contacted and so on. Usually the group leaders' work is not seen but vital for a thriving community. Step up and help the organisers, your help will be appreciated. Or maybe there is no local community for your favourite topic, then it is high time to create one. Creating new communities is easy using tools like Meetup or social media platforms. For example Aaron Cruz is a "community factory". Be created a new meetup for a topic that clearly has been missing, Clojure Vienna and organised a few meetups, which were a great success. Then he transferred the ownership of the group to the most enthusiastic member and went on to create another meetup.

Your group does not have to be local, there are good examples of virtual communities as well. For example Jonny Andersson runs a remote reading group, a small group of people sharing the interest to learn from books. Another, quite different example is the vJUG, the on-line Java User Group, which brings well known speakers on-line every month.

As I said above, being a community leader can be a lot of work. For example Peter Brachwitz of Clojure Vienna told me that he prepares a presentation if nobody else volunteers to do so. Now that is great leader spirit! Despite the effort, running an user group is a highly rewarding activity. You will be able to watch great presentations (if you organise them ;-) and have "exclusive" access to speakers and other community leaders. For example in the Java world there is an International JUG Leader's conference once a year.

Cydcor ConferencePresent at a Conference
Presenting at user groups is often informal, sometimes becoming a discussion rather than a polished presentation. The larger the audience gets, the more formal and professional your presentation needs to be. When submitting a talk to a large and well known conferences like Devoxx, you are competing with many other speakers to get accepted. Also your future talk needs much more practice. When facing 80 or 100 people for the first time, who are all looking at you in eager anticipation, your brain is likely to shut down, unless you are naturally gifted. At least mine did, and I did not even talk to really large crowds till now.

So your presentation needs more preparations, several dry runs, maybe even showing it to a colleague for feedback. This is much work, which keeps me from doing it too often, if at all. And I do not believe in talks with little or no preparation. Even if you do not mind making a fool of yourself, you are doing your audience a disservice. You are wasting their precious (and limited) learning time, when instead they could listen to great talks in parallel tracks.

At international events you might meet new people and grow your network beyond your local area. While this is already true for all attendees, the "magic" speaker badge lets you stand out. Other speakers will talk to you and regular attendees will stalk you to ask questions ;-) And speaking at international conferences can make you famous, really world-famous if you work hard. Working hard means attending at least one conference each month, all around the globe, besides your regular work. This is really tough, as veteran speakers like Dan North or Thomas Sundberg have assured me.

Organise a Conference
Did you spot the pattern? Find some event, attend, contribute and finally organise one yourself. What is true for local events is even more true for conferences. Again you can start small with local one-day conferences embedded in larger communities like Eclipse DemoCamp, Google DevFest or Code Retreat. Your event is likely relying on the infrastructure and help of a well running user group, because you cannot do everything by yourself. For example when we started Eclipse DemoCamp in Vienna five years ago, we did so with the help of the Java User Group Austria.

A much better example is GeeCON, my favourite Java conference which I attend every year. I believe its story is the following: Some guys of the Polish JUG met and complained about the lack of a great conference in Poland. They decided to create one. Already the first version of GeeCON was a huge success and over the years the conference became one of most awesome events I have ever attended. But GeeCON is also a perfect example of the hard work needed to run such an event. If the organisers are not in a hurry, e.g. to buy more wireless routers or fix some other problem, they are walking around the venue slowly, with tired, dark circled eyes. Lukasz Stachowiak, member of the GeeCON organisers, once told me that preparations for the next version of GeeCON start on the very next day after the previous one has ended. I am sure this is also true for Devoxx and all community-driven conferences.

Against Banned BooksWrite a Technical Book
Finally we reach the top of the food chain. Writing a book is probably the most time consuming activity. Tomek Kaczanowski told me that it took him two years to get his Practical Unit Testing book delivered. But the time was well spent. His book is getting more and more popular, which is nice in case of the little revenue each book gives, but much more important is the widespread reception of his book.

As I did not write any books myself, I can only refer to articles about doing so. For example Jack Shirazi's discussion if writing a technical book is worthwhile covers income vs. non-direct income vs. time spent of writing a book. It says "People are impressed by authors. If you have had a book published in a certain area, even if that book did not do particularly well, people are impressed." Since 2007 when he wrote the article, things have changed in publishing if you decide to self publish, as Tomek did. Jurgen Appelo recommends to read at least three books about self publishing before starting with it. And if you think about writing a book you should read Rand's excellent explanation how to write a book first.

It seems that writing a book is sort of making addicted. Many authors I know did write more than one book or at least think about writing another one, even if it would make their wives unhappy (again). Tomek decided to give his third book away for free. Bad Tests, Good Tests is a short book, nevertheless it took him some time to write it. Sure, giving the book away for free removes its direct income aspect, but increases its non-direct income, as more people will get it. Anyway, free or not, it is a great book and you should read it!

Thanks to all the people I used in this blog post as examples for successful branding activities, especially as I did not ask for their permission to do so.

5 December 2013

A Dozen Weeks

Gilded Rose, again
In the 12th week of my Software Craftsmanship tour I ran an in-house Coding Dojo for a team that wanted to improve their unit testing skills. After an introduction what constitutes (and what does not) a good unit test I wanted them to practice. Understanding the concept of unit tests and using the corresponding testing framework was no big deal, but applying all the principles in practice was harder than it looked. I asked them to write the Test Cases for the Gilded Rose Kata, an exercise designed by Emily Bache. Since I participated in Emily's session during this year's XP conference in Vienna, I just love this kata. Although creating test cases for a small piece of logic might seem trivial, there is so much one can learn here. I had run the same kata during one of my Dojos at Agile Testing Days before and got a lot of positive feedback. If you got curious about the kata, it is described in full detail in Emily's excellent Coding Dojo Handbook.

Vienna seen from the 34th floorQuality important is. Fight for it you must ;-)
Next I visited Gregor Riegler. I had not known Gregor before my tour, but his blog Be a Better Developer had attracted my attention. I really liked its subtitle "Quality important is". When I studied his blog I noticed that he was from Austria, even Vienna. I immediately sent him an email and Gregor was interested in my tour right away. Although it looked like we would not be able to pair, he managed to get approval from his management in the end. I spent three days in the office of EBCONT enterprise technologies, in the 34th floor of the Millennium City and enjoyed the view.

Gregor called himself a Restifarian and so we rightfully worked on a REST API for his current project. The Spring Web-MVC powered REST resources would just display data from the database, and first it looked that there would be no particular logic to put into the resource controllers. But we needed links to related resources, the so called hypertext. We had great discussions how to create and add these links to the response in a DRY way without messing up the domain model which we wanted to stay independent of any technology. I liked our session very much and learned a lot both about REST and learning in general. Thank you Gregor!

November is DemoCamp Time
Since the very first Eclipse DemoCamp in Vienna, November 30th 2009, we kept up the tradition of organizing an Eclipse DemoCamp twice a year. So Friday afternoon was demo time. For the ninth time the Vienna Eclipse enthusiasts met to see all the cool technology being built by the Eclipse community. There were great presentations by Tom Schindl, Gunnar Wagenknecht and Benjamin Cabé as well as some local people. The closing presentation was Flo's famous demo remote controlling Sharky. It was a pleasant event and socialising continued till late night. You should definitely attend our next DemoCamp in June. To keep updated about it, follow us on Twitter: @edcvienna. (Please note that the Twitter handle was changed recently.)

27 November 2013

CodeCopTour Week 11

In the eleventh week of my Software Craftsmanship tour I visited the Austrian Lotteries gaming enterprise. I paired with Felix Kammerer and Stanka Gasic from the development team only one day each. In these days I learned that I am a keyboard hugger ;-) Usually I am dominating my pair. The situation is better if there is no second keyboard because it takes more energy to take it away actively from my pair than to just start typing on my own one. Maybe I will continue my tour without an extra keyboard from now on...

What a crowd at DevoxxDevoxx 2013
The manager of the Lotteries' development department had invited me for a longer visit, and I had planned my tour accordingly, but I had to change my plans on short notice. In a last-minute lottery the Vienna Scala User Group gave away a ticket for this year's Devoxx conference in Antwerp, Belgium. I have been to Devoxx before and it really is a great conference. I had not planned for it because I knew that I would be busy with my tour, but obviously I was supposed to go there after all. Luckily my JUG voucher was still valid after the conference had been sold out, which usually happens quite early. On my return I gave a short presentation at the Scala Vienna meetup about my impressions of Devoxx 2013. The short summary is that Devoxx is a great conference and you need to go there, at least once. I probably should write a long summary as well, as I did three years ago, but I rather continue with the findings from my current CodeCopTour. So if you want to know more about Devoxx 2013, please refer to posts other attendees have written, e.g. Bartosz Majsak, Peter Pilgrim or Steve Schols.

Conferences as part of a Journeyman Tour
My friend Manuel talking about Play FrameworkThis brings me to the topic of conferences. Conferences and other community related activities like Coding Dojos or Code Retreats are the perfect addition to a teaching and learning tour. For example Daniel Temme, who did a similar tour earlier this year, actually started his tour during the German SoCraTes conference and visited ALE conference in the middle of his tour. When you plan for a Journeyman tour, adding space for conferences and other technology related meet-ups is easy. Additional to learning something new, conferences provide you with opportunities to discuss your findings with other craftsmen and maybe even find new hosts for your continued tour. As you have no income commercial conferences are out of the question, unless you present something, like I did during Agile Testing Days.

30 June 2013

DemoCamp Help Wanted

Last Friday an Eclipse DemoCamp took place in Vienna. If you do not know, a DemoCamp is an "informal event for Eclipse enthusiasts to meet up and demo all the cool technology being built by the Eclipse community." (Eclipse Wiki) The Vienna DemoCamp is usually a mixture of product presentations, local companies sharing their experience of how they use Eclipse and pure demos of the newest and hottest stuff, usually delivered by our DemoCamp veteran speaker Tom. Roughly four hours of presentations are made perfect by additional two hours of space in between, filled with discussions, networking, food and free beer. And we make sure that there is enough beer. Once we ran out of beer and since then we are haunted by the fear that we might not have enough which usually ends that everybody has to take some bottles home in the end ;-)

T-Rex Help WantedThis was the 13th DemoCamp invitation by the Eclipse Foundation and the 8th DemoCamp held in Vienna. It went very well. In the last four years we have built a community of Eclipse enthusiasts and there are a few companies who actively support their employees in participating in the DemoCamp. The "word is spreading", and after two years I finally managed to bring a colleague to the DemoCamp, which is a huge success as people from my employer are usually not participating in any community activities.

We are organizing the DemoCamp in our free time and it is worth it but there are times when the tide is high and there is little time left for extra work involved in running an event for 60 to 80 people. Our Platinum sponsor agent°ex supports us a big deal, still there are many things which need to be done. And we would like to do more like invite more speakers from abroad, have some games, give away free T-shirts and so on. To do that we need help. If you are enthusiastic and want to be part of this, contact us. Your local Eclipse Community needs you!

26 May 2013

GeeCON #5 The Feedback

Last week the fifth edition of GeeCON took place. GeeCON is my favourite conference and I attended it every year since my first time in 2010. This year I successfully spread the word and brought some friends with me to Kraków. The conference was awesome as expected and I learned a lot of things. At the end of the conference I was asked at least three times to make sure I provide proper feedback to the organizers. Being an organizer of community events myself, I appreciate open feedback from attendees. After fulfilling my duty in completing the GeeCON satisfaction survey I want to comment on several aspects of GeeCON without any specific order of items.

PKP trainLocation
I was told that GeeCON will stay in Kraków for the next event as well. This might have several reasons, like a better venue or preferences of the organizers but I heard that it is because the international speakers like Kraków more than Poznan. Content matters, so it is paramount for GeeCON to attract world class speakers - and it does - but the conference is for the community, the Polish Java community to be precise. Different locations of GeeCON give people around the country a better opportunity to attend the conference, at least every second year. Travelling to Poznan was more cumbersome for me than travelling to Kraków, but I accepted it without question.

Venue
Compared to Kraków, the venue in Poznan was better suited for socializing. In the evening, people just exited the cinema and walked to the next place in the old city for dinner, allowing groups that formed during the conference to stay together without much hassle. In Kraków, everyone needed to go to the city centre either by bus, taxi or his/her own car, which made it more difficult to stay together in groups.

Schedule (Paper)
Reducing the conference booklet to a single page was a good idea to safe money. First I was surprised when I did not see the nice booklet in my bag but then I was happy that it was much smaller and saved space in my pocket. But then it was not possible to select talks during the conference because the abstracts of the talks was missing.

Conference App
Devoxx has a great Conference Schedule app which I liked a lot. As far as I know it is possible to customize it for other conferences, so maybe you (organizers) want to have a look. It would provide the abstracts of the sessions as well which is handy from time to time.

Conference Bag
I love the conference bags issued by GeeCON. The cloth bags are useful long after the conference, and the material is very durable. Usually my wife takes them from me as soon as I return from the conference and I never see them again. (I managed to hide one of the previous three bags for my personal usage, but do not tell her.) But this time the cloth felt thin and the black design was not suitable for daily usage. I know that "the colour is not important as long as it is black" but my wife did not even look at it a second time, neither did I.

#geecon - Y U NO WiFiWi-Fi
The lack of Wi-Fi seems to be an usual problem on conferences. As local attendees just use their smart-phones, the load on Wi-Fi should be smaller than years ago. Still there were times when I wished for a working Wi-Fi at GeeCON, especially when I wanted to tweet something. On the other hand I lived fine without checking my emails all day. Nevertheless Wi-Fi should be working in all rooms of the conference all the time. Unreliable connections are just frustrating.

Sessions
Some sessions had a title that was creating wrong expectations. Probably it was the speaker's right to choose a title he or she saw fit for the talk, still I wished the titles of sessions would reflect the content. When a session was mainly about applying a tool or framework, then the name of that tool or framework should be part of the title of that session. It happened that I would switch session in the first minutes after realizing that my expectations of the presentation would not be met. Beside that I was happy with most sessions that I attended. I learned some new things and I agreed to most things that I heard. Some presentations were important and every developer should see them (unless he or she is already familiar with the topic and even then refreshing one's memory never hurts).

Selection of Topics
One organizer told me that this year they grouped the sessions into tracks because this was a main complaint from attendees of earlier versions. It was clearly visible, there was a Scala track, a NoSQL track, probably a mobile and a Cloud track and these tracks reflected the current popularity of topics. I visit conferences to enjoy a wide range of different sessions and I definitely missed more presentations on code quality and testing. Maybe there were less submissions in these areas because they were less popular.

"School Bell"
Between the sessions I had interesting chats with other attendees but then I was late for the next session. Maybe you (organizers) could install some audible sign that the next session is going to start in 30 seconds. This does not need to be something special, just a small bell that I would hear during the break.

Code instead of Beer?
The GeeCON beer sprint did not make me happy. I am not fond of beer and people did not end in the same place. After two days without any coding I felt itchy to write some code. A Coding Dojo styled evening would be a nice alternative to the beer sprint, of course people would still be able to drink beer there as well. Maybe we can make something up for next GeeCON?

Friend of GeeCON 2013Open Spaces
Open Spaces was like a cherry on a top the awesome GeeCON experience. I met cool people and made some new friends. Unfortunately it is not easy to keep in touch with people if you only know their first name. I would like to see a list of all registered attendees, just their full names and/or Twitter handles, so I could look up people I talked to and get in touch again.

Dear GeeCON organizers! Again you did a great job, thank you very much.

21 May 2012

GeeCON 2012

Poznan Old CityLast week one of my favourite Java conferences GeeCON took place in Poznan, Poland. I was there before and liked it a lot. Despite that it took me 13 hours train travel to Poznan, it was a very good conference. The organisers were caring for everything (even free beer ;-), the presentations were interesting and some of the attendees were really passionate about our craft.

I am too lazy to write a full round-up of all sessions that I attended, but at least I will give you a list of my favourite sentences heard during the sessions:
  • Maintenance starts with the first check-in. (Thomas Sundberg)
  • 40 errors, 38 warnings. That looks bad. Let's commit that. ;-) (Thomas Sundberg)
  • object null extends Nothing() (Ceylon Language)
  • Threads do not work. (Bruce Eckel)
  • It's not getting easier being a developer. [... because there is more and more we need to know.] (Ivar Jacobson)
  • An architecture without executable code is a hallucination, but code without architecture is shit. (Ivar Jacobson)
  • ... f*cking ... f*cking ... f*ck ... [He really does not like Java any more ;-)] (Gavin King)
  • I write crap on daily basis. ;-) (Tomek Kaczanowski)
  • @Seed("deadbeef") [This is a valid hex number.] (Dawid Weiss)
  • Every time you write a for loop, god kills a kitten. (Keith Braithwaite)
  • Simple design is for simple systems. [... making fun of overly complex solutions.] (Thomas Sundberg)
  • The more green it is, the more green it is. [... the build.] (Wojciech Seliga)
  • Heal or Kill. [... these flaky tests.] (Wojciech Seliga)
  • ... 50.000 LoC. - That are five operating systems. Does it do that much? (Kevlin Henney)
Thank you all for the great show!

26 November 2010

Devoxx 2010

From 17th to 19th of November 2010 was the Devoxx in Antwerp. Here are some random notes about the sessions that I attended. I should have tweeted them right away, but I didn't, so a post will have to do.

Devoxx 2010 NotebookDay 1
At the beginning Stephan gave us a warm welcome. He was motivated as ever. :-) The following keynote on SE 7 by Mark Reinhold was nice but he was telling the same story what would be shipped in Java 7. I'm tired of hearing it. Cut the crap! Ship it! Just ship anything!

The first session was held by Heinz Kabutz about mad reflection. After years of reading his newsletters it was nice to see him in person. The title of his talk was very proper: madness! Thank you Heinz for this "mad" talk. It was very informative.

Joshua Bloch's performance talk was so full that the organisers closed the room 15 minutes before the session started. I did not make it in :-( So I had to change my plans and went for the "new stuff in Scala 2.8" presentation. Bill Venners gave many real code examples, but I didn't comprehend most of them. That's probably my fault. It's been some time since I had a look in their book. (@Devoxx Team: Maybe you could organise some kind of dynamic overflow room for sessions of well known speakers the next time, just to be safe?)

In the evening I wanted to attend the BOF about the state of Java SE 7. But the room was totally full and there was no fresh air. I started growing a headache and had to leave. Later that evening I did my first steps in Android development during the Visage BOF. Visage turned out to be cool stuff. Unfortunately the setup of the development environment took too much time. In the end Stephen Chin went through a working example in only a few minutes.

Day 2
The second day started with a presentation about the future of Java EE: "Bla bla cloud bla bla virtualisation bla bla service lookup bla bla more flexible bla bla specification bla bla". Hell this talk was boring! Fortunately the following talk by Kito Mann about GTD made it all up.

Later George Reese talked about how to operate at the cloud scale. His talk was a bit abstract, but contained nice slides. Just my style of presentation :-)

During lunch break I listened to a quickie by Costin Leau about @inject. He made it very fast paced. It was a good overview when one already knew dependency injection. I wish more presentations about technologies would be that compact. Well done!

Devoxx 2010 crowded main hall
After lunch Kirk Pepperdine showed how to extend visual VM. It seemed easy. It would be great to use it for a combined view of all our monitored applications. Maybe I will give it a try.

Then there was the JavaPosse. It was horribly boring. I've never listened to them before. It's just not my style of humour. So I left the room to hear a presentation about HBase at Facebook by Jonathan Gray, who gave insights into a very large system. Especially the questions (in fact the answers) revealed interesting details: Distribution using bit torrent and deploying to a cluster of self-made app servers which are all monitored with JMX. Cool, cool, cool.

William Pugh, the creator of Findbugs presented some valid points about defects, e.g. "finding defects in code is so easy". He told interesting war stories about bugs at Google making it a practical presentation.

I had not made it into Joshua Bloch's first talk but at least managed to get a decent seat for his puzzler talk. And I got the first puzzler right! Oops, I hadn't known that EnumMap's entrySet() is that weird. Again, I hadn't anticipated the regular expression backtracking, although the pattern had looked weird to me. No - 1:3 for the puzzler brothers. Finally I got one right, well, most people did. And I got the last one right, too. Only few people noticed the lowercase el. Final score 3:3!

In the evening I attended the NoSQL BOF, my first real BOF. Everybody was very friendly and it I enjoyed listening to real world users of NoSQL. But in my opinion the committers and heavy users were unfair complaining about JVM memory management problems. It's obvious that data stores need a lot of memory. Thank you guys for sharing some thoughts with me NoSQL newbie.

Day 3
The third day started with a discussion panel about the future of Java. It was quite informative. The Paris JUG leader said that Java user groups are in fact JVM user groups That is true and it indicates the change in the Java ecosystem. Another interesting bit was the notion of comprehending <? super T> being a dividing line between journeymen and experts. This reminds me of Joel Spolsky's old post about the "pointers business". Are bounded wildcards Java's "pointers"?

Then we had a very fast paced vanilla Adam Bien. He demoed all the good things one is able to do with Glassfish in J2EE. He did some "no risk no fun"-styled live coding with a cinematic version of the Java pet store including aliens and predators. He had almost no slides. It was hilarious :-).

Last but not least my favourite session were the "boilerplate busters", i.e. project Lombok. Thank you guys for your work to get rid of ugly code. I will definitely start using Lombok at once. And thank you for making it such an entertaining presentation. You guys are great! It's a pity that there are no pictures of this talk.

Conclusion
Devoxx 2010 was a great conference. 12 out of 17 talks were excellent and I managed to loot some t-shirts from the exhibition. It was just a bit too full, but Stephan promised that they would close registration sooner next year. So I will definitely visit Devoxx again in 2011.

Disclaimer
This post kinda sucks because I wrote it on my Android on the plane during the flight home, and on the train, and on the subway ...

18 June 2010

GeeCON 2010 in Poznan

I'm quite late with this post. Most people have already commented about GeeCON. Well my posts are never real time. The fact that I was working on my "Code-Cop's Codes" project, converting all my repositories to Mercurial and writing a presentation on knowledge management tools used in software development meant I couldn't get it done earlier. ;-) Still, I definitely want to share my experience of visiting GeeCON 2010, which took place in Poznan over a month ago.
GeeCON 2010 in PoznanThe quality of the presentations was excellent. I really liked all of them. This was the most important thing to me because I went there to see the presentations. I didn't care whether the Wi-Fi was slow or if the food was not particularly tasty. I attend conferences to see new things. (Well the food was nothing special, but who cares?) I have attended other conferences before and there were usually a few presentations that were boring or not very good. However, this was not the case with GeeCON! I was pleasantly surprised. Kudos to the GeeCON team and all the speakers. You did a great job.

Presentations
I will not go into detail about the presentations, but there are some things that are definitely worth mentioning:Bruno Bossola's UML Crash Course: Class, Object, Link ;-)
  • Stephan Herrmann talked about Object Teams. It looked interesting, and seemed to be a mixture of anaemic service graphs, rich domain models and aspects. (Stephan, please forgive me for that noob explanation :-)) Fortunately, Stephan is able to attend our upcoming Eclipse DemoCamp. I am looking forward to hearing a more in-depth explanation and getting hands-on experience.

  • Staffan Nöteberg explained the Pomodoro Technique. Despite the fact that it was about a technique that can be used to cope with interruptions, his presentation was hilarious. I was roaring with laugher when he pulled a Teletubby out off his rucksack to represent the project manager. Unfortunately I haven't been able to find a pomodoro kitchen timer...

  • Dawid Weiss from Poznan University of Technology gave us an insights into Java in high-performance computing. Instead of slides he used one huge image to show all his content and moved, panned and zoomed around the entire presentation. This was quite a dynamic way to do a presentation.

  • Towards the end of GeeCON, Bruno Bossola talked about object orientation for non-believers. Why for non-believers? This was because he was mocking us (the audience) all the time, which earned him a few laughs. He was really funny, and he was right: Persistence and frameworks are not that important. However, requirements and domain models are. In a nutshell, proper object oriented analysis and design are relevant. We have forgotten what OO really stands for.

18 May 2010

Upcoming Eclipse DemoCamp

Proud Dirty HandsAfter all the work I put into last year's DemoCamp, I promised myself I wouldn't organise another one in the near future. Well, it didn't work out like that. Michael persuaded me to organise another one. So, the second Vienna Eclipse DemoCamp will be at the end of June.

Show Me Code - No Slides - No Suits ;-)
We plan to have a different style this year and want to create a more in depth and personal experience. Instead of fancy slides we want to do some live coding, guided by the presenter's vast knowledge of the topic. Hopefully things will run as smoothly as they did last year.

6 December 2009

First Eclipse DemoCamp Vienna

It all started when my buddy and Eclipse Xtext committer Michael Clay told me about the Eclipse DemoCamp idea with so much enthusiasm that I agreed to help him organising the first Eclipse DemoCamp in Vienna.

DemoCamp 2009 Title We lined up with the local Java Student User Group and started inviting speakers. To our surprise there was absolutely no problem to find speakers and even sponsors. 200 emails later we ended up with 10 presentations and 8 sponsors (beside the Eclipse Foundation which sponsors all demo camps).

When Jeff and Chris of EclipseSource offered a presentation, we were delighted but had to drop our own talks about Free Quality and Code Metric Plugins and Xtext NG to provide some space for these well known Eclipse veterans. (So, as usually there was no time for code quality topics ;-) Interest of people to attend as well as give a speech was quite high. I'm sure we could have added a second track but did not want to because of Bjorn Freeman-Benson's recommendation for Eclipse X Days.

JSUG had organised the room and infrastructure for us. The enthusiasts of the core team helped the speakers prepare their stuff while I was giving them our Eclipse DemoCamp shirts. When the presentation started there were more than 80 people in the room. I had the pleasure to welcome them and present the agenda. Although I only had ten slides I was very nervous. It was the first time I spoke in front of that many people.

Werner Keil on STEM (© Markus Musil) Werner Keil started with an introduction of the Spatio-Temporal Epidemiological Modeler (STEM). He talked about its general application and importance. In the end he played an interesting video showing simulated infection rates throughout the world.

Robert Baumgartner on Lixto Visual Developer (© Markus Musil) Next the Lixto development team presented some features of their RCP based screen scraper and how they used JFace components to render the different GUIs of the Lixto Visual Developer application.

Christoph Mayerhofer on ReviewClipse (© Markus Musil) The Eclipse plugin ReviewClipse was presented by Christoph Mayerhofer. It's a useful tool to make code reviews easier and thus more likely to be done. Obviously a code cop has to love it. Currently I'm reading all diffs from junior developers every morning. So I'll give it a try.

Chris Aniszczyk and Jeff McAffer on Toast (© Markus Musil) Chris Aniszczyk and Jeff McAffer are both seasoned speakers and furthermore good entertainers. In a whirlwind tour of the Toast demo application they showed what you can do with EclipseRT technologies. Believe me, it's cool stuff.

Tom Schindl on e4 (© Markus Musil) The last presentation of the first block was about e4, the future platform of Eclipse, given by well known Eclipse committer Tom Schindl. Tom is probably one of the most motivated Eclipse enthusiasts. You can feel the fire burning in him when he's talking about his work, very stimulating. And he hates singletons as much as I do. Good boy.

Half an hour planned break was way too short to eat 400 sandwiches together with water, Red Bull and smoothies. Michael even went to fetch some beer because Chris had written that he is looking forward to Austria and the Austrian Stiegl Bier. People were enjoying the sandwiches, standing together in small groups and chatting away. Unfortunately I didn't have time to talk to everybody I knew.

Robert Handschmann on Serapis (© Markus Musil) Our "modelling track" was opened by Robert Handschmann's demo of the Serapis language workbench. It looked mature and makes model driven development quite easy. I liked most that Robert was able to answer all questions regarding additional features by simply showing the feature in the workbench.

Maximilian Weißböck on Xtext (© Markus Musil) After that Maximilian Weißböck explained the basics of Model Driven Software Development and showed how easy it's to add stuff when you have a working modelling solution. He finished with the advice to always use a modelling approach because the tools (read Xtext) are mature enough to pay off even for small projects.

Karl Hönninger on OpenXMA (© Markus Musil) Next Karl Hönninger gave a short demo of openXMA, a RIA technology based on EMF and SWT. Now XMA is not your 'new and sexy' technology, but it's 'improving'. The new openXMA DSL is based on Xtext and combines domain and presentation layer modelling. Karl used a series of one minute screencasts to demo the XMA Eclipse tool chain. That's a good idea to make sure that the demos work and still to be flexible enough to skip parts of the demo.

Florian Pirchner on Redview (© Markus Musil) Then Florian Pirchner showed how they had created dynamic RCP Views enriched with Riena Ridgets that interpret their EMF model and update in real-time: Riena-EMF-Dynamic-Views. Redview seemed like magic to me (either that or I was already getting tired ;-).

Philip Langer on Model Refactorings (© Markus Musil) Unfortunately I was not able to attend the last presentation given by Philip Langer about model refactoring by example. Michael and I were busy preparing to move on to the chosen "beer place". In the end approx. 30 people made it there. In the nice atmosphere of our own room we had some beer and vivid discussions. For example I have some (blurred) memories of Michael showing slides of some Xtext presentation on his notebook. The evening ended when the waiter threw us out half an hour past closing time (midnight).

Organising a demo camp is work. But it's also fun. And obviously it paid off. It was great. Thank you everybody for making it such a nice evening. Maybe we'll see each other again next year.