---
layout: post
title: eurucamp 2014
date: 04.08.2014 14:15
---
{::options parse_block_html="true" /}
[![eurucamp chalk](//tmp.fnordig.de/eurucamp2014/th-2014-08-01_09.58.46.jpg)](//tmp.fnordig.de/eurucamp2014/2014-08-01_09.58.46.jpg)
{::options parse_block_html="false" /}
I'm just heading back to Aachen from [eurucamp 2014][eurucamp].
And all I can say is: What an awesome conference!
I met a lot of great people, had nice chats with a lot of new people, heard a lot of great and inspiring talks
and had a lot of fun.
Besides the usual stuff you expected at a tech conference. there were also a lot activities happening.
It started with the [conference party][confparty] Friday evening.
Saturday noon was reserved for lots of activities, [kayaking on the Griebnitzsee][kayaking], with a jump into the sea afterwards of course,
a [slip'n'slide][slipnslide] on the venue's lawn and some [football][] there as well.
During the talks I took some notes, just to remember things for myself, but I think it's also a good idea to write these down publicly.
There was also the [Camp Compressor][camp-compressor], the eurucamp's own podcast, with interviews of speakers and attendees.
Listen to it to get even more cool discussions and information.
_(Hint: I was interviewed for Episode 3 ;))_
### Workshop: How to do Static Analysis Driven Refactoring
Friday afternoon I went to the Workshop [How to do Static Analysis Driven Refactoring][static-analysis].
Christophe showed us how a few tools can help to improve and refactor your existing code base. The whole list of tools is listed [in a Gist][gist-static-analysis].
He made it clear how these tools lead to better code quality, especially if you're a small team or even working alone. I will definitely try to use some of them.
### Keynote
In the evening the real conference began with [nusco's][nusco] keynote.
He told us about how to be a really great developer. There are 3 stages in most things:
1. Simple, most of the time you can automate this away.
2. Complicated. You have to think about the problem, but if you're good you find a solution
3. Complex. These are the hard and most interesting problems. If you want to be a great developer you need to tackle these. For this you have to always learn.
But it is especially important to don't just work on problems in one category. No one is a great developer from day one.
Learn everyday. Be a _great_ developer at the end of the day.
### Culture Eats Products For Breakfast
Saturday started early. [Laura](https://twitter.com/laura_nobilis) told us how Culture influences your product.
If you already have a project it's not that easy to get it into a new market in a new country with a complete different culture.
The audience for your product has completely different expectations, the country may have different laws. All these things need to be considered to be successfull.
{::options parse_block_html="true" /}
[![rin live-coding a game](/th-2014-08-02_10.21.40.jpg)](/2014-08-02_10.21.40.jpg)
{::options parse_block_html="false" /}
### Let's build a game with Ruby
Right after that, [Rin][] gave a short live coding session in which she created a
[small side-scroller game](https://github.com/rin/eurucamp) using Gosu, a 2D game development library.
Quite fun and easy it seems.
### It Takes a Village to Make a Programmer
After a short coffee break [Michele](https://twitter.com/sheley) told us her story. She attended eurucamp last year and
with the help of some great people from the community she managed to switch careers in less than a year.
She encouraged all of us to give back to the community, help other people, mentor people or help people in otherways.
### Internet of Dusty Things
[Daniel](http://twitter.com/bovensiepen) talked about his DIY air purifier. Unhappy with the available proprietary and expensive products he sat down,
purchased the necessary hardware and built a remote-controlled air purifier using
[mruby](http://www.mruby.org/), a lightweight implementation of the Ruby language and some stripped-down libaries.
### RubyMotion and Accessibility
One of the best talks for me was the one about Accessibility held by [Austin](https://github.com/austinseraphin), a blind developer.
He's using both an iPhone and a Mac, because all of these Apple systems have built-in accessibility features, like Voice Over, the screen reader in iOS and OS X.
He also wrote software for [RubyMotion](http://www.rubymotion.com/) to make accessibility-testing even easier and
showed how easy it is to make iPhone apps more accessible. It's build in by default anyway,
adding information and labels is already a great improvement for every app. Test these things!
{::options parse_block_html="true" /}
[![taking a brake in the shadow](//tmp.fnordig.de/eurucamp2014/th-2014-08-01_16.56.27.jpg)](//tmp.fnordig.de/eurucamp2014/2014-08-01_16.56.27.jpg)
{::options parse_block_html="false" /}
{::options parse_block_html="true" /}
[![Griebnitzsee](//tmp.fnordig.de/eurucamp2014/th-2014-08-02_15.23.05.jpg)](//tmp.fnordig.de/eurucamp2014/2014-08-02_15.23.05.jpg)
{::options parse_block_html="false" /}
### Refactoring Ruby with Monads (or, Monads: The Good Parts)
[Tom](https://twitter.com/tomstuart) gave one of the funniest and simplest introduction to Monads I heard.
With just a few lines of Ruby code it's possible to implement Monads, which are just an "abstract data type".
The code is available as a [gem and on GitHub](https://github.com/tomstuart/monads).
### Lightning Talks
> @benlovell: Eurucamp is so awesome that actual lightning ended the lightning talks #ec14
> _([Twitter, 10:52 PM - 2 Aug 2014](https://twitter.com/benlovell/status/495673640713977857))_
_(That's all it needs as a comment)_
{::options parse_block_html="true" /}
[![Beautfiul sunset over the venue's lawn](//tmp.fnordig.de/eurucamp2014/th-2014-08-02_20.28.48.jpg)](//tmp.fnordig.de/eurucamp2014/2014-08-02_20.28.48.jpg)
{::options parse_block_html="false" /}
### Utils is a Junk Drawer!
Day 2 once again started early. [Frank](https://twitter.com/franklinwebber) took a look at what's in the project's utils folder, often it's junk.
The speaker was interviewed in the Camp Compressor, Day One. As I heard that on the train ride to the venue I didn't listen too much in the talk, sorry!
### The Scientific Method of Troubleshooting
[Blithe](https://twitter.com/blithe) explained how the Scientific Method of Troubleshooting will help in software development as well.
When troubleshooting, sometimes take a step back. Solving each and every problem by googling or looking at StackOverflow won't help.
Instead think about the problem, try to understand why it happened, how it can be fixed correctly and how to avoid it to happen again.
Document your troubleshooting, improve the documentation of your project so problems that were fixed won't happen again. And get help!
If you can't solve the problem alone, talk to others. Sometimes that is all it needs.
### Take note!
[Såndra](https://twitter.com/pippidot) gave a short introduction how visual note taking can help to efficiently take notes and later also actually remember
what you meant. Now if I could just draw better, but maybe with some practice I can do this better.
[Oh, and she had the most awesome slides of all talks!](https://twitter.com/badboy_/status/495866118884827137)
### Decentralize ALL THE THINGS
The last talk I (really) heard was by [Jan](https://twitter.com/halfbyte). He talked about how all these centralized services are bad in nearly every aspect.
But it's not only about self-hosting all your stuff (because that's **not** an option ever),
it's also about decentralising our organisations and businesses to make the internet resilient against any kinds of threats again.
## …and that's it.
The whole weekend ended with some beers at the [eurucamp after party][pratergarten], again talking to a lot of different people, and a lot of different topics.
I hope there will be a eurucamp 2015, because we're already [planning things for next year](https://twitter.com/eurucampcamp).
Thanks to the whole [eurucamp team](http://2014.eurucamp.org/team/), thanks to all [speakers](http://2014.eurucamp.org/speakers)
and thanks to all the great attendees!
Hope to see some of you at [RedFrog Conf](http://ruby.froscon.org/) in just 2 weeks or at [RailsCamp Germany](2014.railscamp.de) in September.
[nusco]: http://twitter.com/nusco
[rin]: http://twitter.com/rinpaku
[eurucamp]: http://2014.eurucamp.org/
[gist-static-analysis]: https://gist.github.com/toch/ac3ca5d7e565ee3dc375
[static-analysis]: http://activities.eurucamp.org/activities/3
[git-monads]: https://github.com/tomstuart/monads
[bovensiepen]: http://twitter.com/bovensiepen
[camp-compressor]: http://2014.eurucamp.org/podcast/
[slipnslide]: http://activities.eurucamp.org/activities/13
[confparty]: http://activities.eurucamp.org/activities/25
[kayaking]: http://activities.eurucamp.org/activities/35
[football]: http://activities.eurucamp.org/activities/39
[pratergarten]: http://activities.eurucamp.org/activities/28