Lungholm Slot castle

Coding in a castle

It’s been a busy year

2014 has been a very busy year for me:

  • Going to Cambodia for work earlier this year and all the preparation which was necessary before leaving.
  • Spending many weekends and sometimes whole weeks on conferences and barcamps in the US and Germany.
  • Travelling in Germany to visit family and friends I hadn’t seen for a while.
  • Having some vacations (Iceland, Southern France and Mallorca) because I didn’t have any real ones in 2013.

So because of work, preparations and travelling I wasn’t able to join the TYPO3 Neos code sprints including the one before the developer days in June and the one at the end of August in Kiel. I missed the team. I missed working on this awesome project.
The last chance before my next travel to Cambodia on October was to go to the big code sprint in Denmark on September 27th.

Daniel Lienert working in the train

Daniel very concentrated

After I heard that it will take place in an old castle and many members of the team and also new contributors will come I decided I had to be there. Even with the upcoming release of a big project in the week after at the T3Con.
Work is always there but chances to do awesome things with interesting people at cool places are not always available!

As newcomers to the Neos sprints are always welcome it was great that my friend and colleague Daniel Lienert from punkt.de decided to come and experience his first Neos code sprint.

Going there

Court of Langholm castle

Lungholm castle

The travel to our destination was easy. A flight to Copenhagen from Frankfurt (where we had to wait for more than an hour for the plane to start), then going to Rødby Færge by train and finally getting picked up by our Neos friends at the Rødby train station. This was also the first time I saw how a train goes on a ferry

Shortly after that we arrived at our destination Lungholm Slot.

On the first day not that many people were there yet but it was very nice to say hello to everyone including some people I hadn’t seen for quite a while. There were also some new faces I would get to know better in the following week.

The castle was just impressive.
So many rooms with pictures, libraries, pool tables, swimming pool, sauna, nice bedrooms, old furniture, a big park in the back, and more!

Getting inside Neos again

Master bedroom

One of the bedrooms

In 2013 I started to get more interested in Neos and joined two sprints including the 1.0 release sprint in December.
I’m still very thankful to Gina Steiner and Sebastian Kurfürst who encouraged me to go there.
But in 2014 I wasn’t able to do much work with Neos except a kickstart of this site (which isn’t nearly finalised and I’m currently rewriting most of it) and some consulting for projects at punkt.de.

So I needed some time to get my brain into the project again by doing lots of code reviews and reading through changes which happened in the last half year.
After a while I felt comfortable again and started to work on tickets related to finalising the 1.2 beta.

Organisation

Kitchen with a lot of food

Breakfast

The were different working groups for different topics. One was the before mentioned `finalising of Neos 1.2`.
Others were for example `editor experience`, `documentation` and more. See the official blog post for the code sprint for some more details about who worked on what

The groups were defined on the second day of the sprint by
the Neos core developer Aske Ertmann and everyone said what he or she would like to work on.
Also we were asked who wanted to be a leader for our four kitchen teams and then people were assigned to them. Each team responsible for preparing a certain meal of the day or to go shopping.
The schedule changed on a daily basis so nobody had to get up early every morning.

A big mix

3 Neos developers at work

Programmers having fun

There were developers from several countries: USA, Russia, Cambodia, Switzerland, Netherlands, Denmark and Germany.
It was really awesome because people from different countries and cultures often have different views on an issue which brings much more interesting conversations and better results

It was especially nice to see my friend Visay Keo from Cambodia again. I worked with him at Web Essentials when I was in Cambodia at the beginning of the year.
I had many very good conversations at the sprint including the ones with Dmitri Pisarev. He gave us some insights from his life in Russia. The political situation, working and living there and his view from the outside on what’s happening in the EU.

Another person I met for the first time and really liked was Henjo Hoeksma. Very inspiring and fun guy to play pool with ;)

In a code sprint you see that’s it’s actually not so hard for people from different countries to come together and have a good time. I hope there will be even a greater mix in future code sprints.

Work work work

The core team at the dinner table

Discussions after dinner

On my first two code sprints in 2013 I mainly worked on the Neos demo site with Aske Ertmann and Rasmus Skjoldan. It’s still so cool to see people playing with it or using it as a basis for their own project. This task was so rewarding that it’s also one of the reason my heart beats for Neos.

This was now my third code sprint and I always put a lot of pressure on myself to get some work done. But this time most new tasks or features were already done and my work involved reviewing, testing and moving/updating Jira/Forge tickets. So the results were less visible than the demo site but I still felt very good about what I’ve done at the end of the sprint. For example fixing bugs which helps editors to do their daily work or improving the typoscript structure in packages which helps integrators to better organise their code.

View out of a small window into the park

View to the park

For me the first few days of a sprint are always the hardest, because I have to get into the project again, find something I can work on and understand the code review system Gerrit. But after the first few changes pushed to the repository I find my Flow ;) again and it’s more fun than work.

By going through the code and trying to understand what a certain change could do and what the author meant to do I learnt a lot about the project. I had many new ideas how to improve my own Neos site and use this knowledge for future projects.

It’s really nice to see how Neos moves forward and evolves. All the input from the community, the developers and their own projects improve it constantly and every release is a major step forward.
From my perspective especially the version 1.2 and later the 1.3 will make it a content system which agencies, freelancers or any other developer can use for many projects of different sizes. This is related to the huge need for multi language sites, backend permissions and localised backend.

Few days ago I had a talk with a potential customer about how the new content dimensions feature in Neos could help with their A/B testing and SEO efforts. He immediately understood how it could work and was very interested.
A lot of things we can do with Neos need some time in our minds to grow and then show their true power.

Fun fun fun

Dmitri Pisarev playing pool

Dmitry giving his best shot

But a code sprint is not only about working all day, it’s also about having a great time with everyone.

Most days a group of people including me went for a walk which was really nice. It was necessary because we ate so much and often it was good to just get some fresh air after sitting in a room for so many hours.
The surroundings of the castle were also nice with small forests, fields, the ocean and little villages. A few times we saw deer and partridges crossing our paths.

In the evenings we heard (loud) music, talked with a glass of wine in our hands, had group discussions about specific topics, played pool or spent time in the swimming pool and the sauna.

Outdoor activities and the daily cooking sessions were a great opportunity to get to know the other developers.
We had interesting conversations about our current Neos tasks, personal stuff, our projects, the companies we work for and much more.

Time to say goodbye

Daniel looking out of the airport window

Daniel watching our plane arrive

After a whole week it was time to say goodbye again.
The way back was exciting because we had only a few minutes between catching the next train to arrive at the airport on time. But things worked out well and Daniel and me flew back to Frankfurt where we parted ways and I continued with the same plane to Berlin for the #T3Con14EU which started a few days later.

I will remember this code sprint for a long time.

If you haven't been to a code sprint yet and also want to contribute something to the TYPO3 world, just have a look here and join!