Lots of things happened in 2016. Probably way too much as I cannot really recall what I did in which month.
It hasn’t been easy all the time, and being under pressure I also made certain mistakes or acted differently than I demand it from myself.
I’m not really a fan of “1.1.2017 – leave all things behind and start over”. Reality is different and so I am taking a moment to breathe and reflect what really happened in 2016. Things I want to improve, things I loved but also things which went not so good.
Things which I would do different
At some point in late 2016 I realised that I am doing a) core development fixing bugs b) first level support c) community support. This isn’t essentially bad, but b) should be done by co-workers and c) requires a lot of effort to train community members and share knowledge.
Together with a), the actual majority of my daily work, this literally exploded at some point. I’m not proud of the way how it went (story for real life conversation) but I couldn’t help myself in this situation. In the end changes and workflows have been adopted and I am looking forward to see progress here.
Dealing with important bugs, not knowing which one comes first isn’t easy. If the support channels rely on your answer to problems, this has a huge impact on your work load. You can’t focus on the important problems anymore but need to take the chance to analyse the problems by yourself. You loose track of the important bug you’ve been looking into before getting disturbed. Finally you’ll end up with lots of ping-pong and accusations who did it wrong. Many things not even so-called project managers could solve, we’re not big enough for that even.
When your issue dashboard says 400, like 30 urgent and a lot of possible duplicates .. well. I helped myself with getting pen and paper, writing the problems down and pinning them on the wall.
There are still some issues, even many, but one also needs a better voting mechanism than Redmine provides. I am eagerly waiting for the tags and +1 capabilities we’ll be using on GitHub.
After all I consider some situations where my mind said “fix it now” being plain wrong. I should’ve waited and not rushed for solutions. There’s no guarantee for a fix anyhow. Still a problem with freeing your mind in the evening. That’ll be a deal breaker when you’re part of an open source project for many years. You sometimes just cannot stop, or the burnout stops you.
One thing I also learned the hard way – if you help others by accidentally doing their job, they’ll always rely on you. Help them in a way that they learn from you, but are able to take notes and probably never ask again.
The good stuff
Dashing turned from a fun project into an official Icinga 2 integration. I learned a lot about Ruby and Coffeescript and received overwhelming community feedback. I even wrote some development guides to help others.
The Icinga Vagrant Boxes are still on the run, and make my life even more easy. Lately I kept working on an Icinga 1x release but didn’t want to locally install the dev environment. Or by having a FreeBSD test box.
A while back I have forked the Manubulon SNMP plugins because I needed them for my own projects. It gained more attraction and I also added community contributed patches. OpenBSD is already using it, and
Debian is probably going to replace the old project as well.Debian is using them already . In order to help everyone, I decided to tag and release v2.0.0.
One of my interests after learning about Graphite, InfluxDB, Grafana as well as Puppet was to gain knowledge about the Elastic Stack. I know Graylog already but getting things done with Elastic being the primary tool at work fascinated me. And of course the Elastic Beats concept. So I went for an Elastic Vagrant box and also looked into the new 5.x release.
I’ve also finally attended the Puppet training courses. I don’t use it on a daily basis, but now can better imagine how monitoring fits into config management. That made PuppetConf 2016 even more joy for me. Since the Icinga 2 Puppet module is currently rewritten I’m waiting for its final release to integrate it inside the Vagrant boxes. I’ve also contributed a small patch for the InfluxDB Puppet module this year and am hoping to contribute even more.
I did write the Git training courses from scratch this year, and have provided 3 trainings already. In mid 2017 we’ll be adding GitLab to it and focus on even more integration possibilities. It is a “new” playground for me and before writing the training material I thought I would know everything about Git. I was wrong – I only know some of the magic practical examples, but there are so many others. And the feedback and questions during the training were also helpful to just try things out and update the training material.
I have a lot of fun doing social media during events. That’s mainly twitter with introductions and topics which interest me, be it with Icinga or NETWAYS. One thing I really love – sharing that knowledge and motivation to colleagues. I am also retweeting interesting tweets, like Icinga regularly got some Grafana stuff, or NETWAYS posts about Elastic, Puppet and so on. Twitter is what >50% of my co-workers are using for also interacting with work stuff, and it has become even more important being part of the “twitter family” – just to know what’s funny or cool these days 😉
NETWAYS also now has its own event location namely “Kesselhaus“. Primarily used for training sessions this has been opened up for employees to host their own parties. And so I did with the generous help of Georg, giving a party for my 33th birthday. Including some firemen, a blonde transformation and lots of G&T (the Saffron Gin is really tasty).
Birthday presents were lots of Lego too 😉 I did not build so many Lego this year, but then decided to go for Big Ben instead of the rather expensive Lego Technic Porsche model. Building a model piece by piece really is more enjoyable than using pre-defined bricks for that. Turns out that 2017 might bring a new addition to that – the Lego Creator Expert series is celebrating their 10th birthday with a new exclusive model, 1,5 of the size of the normal buildings. Hmmmm 😉
Speaking of Lego – we do have a yearly meeting in March where Bernd and Julian are recapping the last year. It is our own pleasure to find enjoyable presents for all their hard work. This year I came up with the idea of creating a NETWAYS logo with Lego. Everyone was excited 🙂
monitoring-portal.org has a new home, generously hosted by NETWAYS. Even HTTPS was possible. The migration from the old WBB3 platform was pretty rough in early 2016, but we made it happen with an upgrade to WBB4. There still is work to do (more categories, better theme) but it is not yet clear if we stick with Woltlab or turn into Discourse. What I really want to improve is that users who help others will get a reward. Similar to Stackoverflow.
I have improved my spoken English and the way I keep presenting Icinga in my talks. Berlin, Amsterdam, Belgrade, San Diego – in the end I already knew what to talk about next. Well, the workshop at Devopsdays wasn’t good but I learned what else to prepare (just use the Vagrant-Boxes and skip the install for example). I also brought a lot of Dragee Keksi with me. They even landed in Australia 😉
— Jan-Piet Mens (@jpmens) April 27, 2016
I had a lot of fun finding and creating demos for the Icinga 2 API. Depending on the audience I then decided which demos to show. For instance the AWS EC2 demo isn’t that spectacular when you are in Europe. But the Clippy demo did not need any words to make people laugh and smile.
2016 also told that I should focus on more community activities. I do have some ideas like hangouts or webinars. One I already realised was to create the “monthly snap” blog post series. This one collects positive karma and gives insights into current developments. I do see that in a 2 way benefit – users see what’s fresh and new, and developers get positive feedback and motivation.
OSMC was lovely and top notch. Really enjoyed meeting with “Gin tasting crew” on Tuesday after my Git workshop. I was really tired after the 2 days conference … but that’s also the reason when you meet a former colleague from Austria and just keep talking. I also finally met Stéphane Bortzmeyer, one of those people knowing literally everything about DNS (my former workplace). The hackathon was really good, we made a lot of improvements and I finally met Steffen from Elastic, being the Go and Beats guru.
Last but not least I have to admit that road trip #2 in California was really a pleasure and freed my mind from such a hard year. Dirk and I went for Grand Canyon, driving 2000 miles in 7 days. There was a plan to have at least Las Vegas and Death Valley on the track but we changed that a bit. Going from South Rim to North Rim wasn’t planned but hey – a thunderstorm over Grand Canyon and just you in that little car. In the end we’ve also visited spots in Death Valley I haven’t been before, and also decided to visit Sequoia National Park. Just because there was time and we were free. Last but not least – Venice Beach jumping into Tom and a revival at Venice Whaler with Julian 🙂
I took those memories with me and ended up in getting myself a CX-5 with the help of Markus and Nicole. Now I have a similar feeling when driving – free and independent. A mind changer after all.
Wishes for 2017
Don’t rush things. Let others do their job and wait for them to finish.
Turn email conversations into meetings or hangouts. If something pisses you off, do it face to face. Take notes what’s good and bad, and leave things for a day. Re-iterate problems then with a different mindset.
Deal with problems in a relaxed fashion, propose a workaround or hotfix and then focus on realising a bugfix and a software release.
Try to understand what the other one is really thinking. Imagine a real life discussion if it’s online. Don’t push your own opinion as the most important one. Try to rephrase things from “Your attempt isn’t good” to “Think of this in a different way – how would this look like …”.
Share knowledge. At some point you’re the only one knowing about cool things. Write them down and encourage others to improve and add their experience. This also includes enhancing the docs and howtos.
Look for events and talks you’d like to give. Combine it with some days off and explore the cities and surroundings.
Look into a good mix of things you like to work on. It is not only C++ with Icinga 2 or documentation. That could be …
- RT and extensions (Perl)
- Icinga Web 2 Modules (PHP)
- Things with Go (icingabeat, etc.)
- Development trainings (Git, etc.)
- Community demos (recordings, hangouts)
- Enhance monitoring-portal.org and move to a new platform (evaluate Discourse)
- Contribute documentation and howtos (I still owe Michael Medin one for NSCP)
- Discover the possibilities of GitHub and GitLab
- Embedded hardware programming (things I used to learn during my studies)
40 hours a week are enough. Social media such as Icinga twitter might work in the evening, but prefer spare time over it. If there’s no time at work to answer questions in the community channels, do it the next day but not in the evening.
Read Perry Rhodan. Build Lego models. Play board games. Do workout and free your mind. Be offline.
Go for a ride with the new CX-5, explore the world.