Showing posts with label GeeCON. Show all posts
Showing posts with label GeeCON. 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.

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!

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.