Weave Scope and Weave Flux @Hacktoberfest

Long time no blog

It’s been a busy half a year since my last blog post. Immersing myself in the cloud native world and my non-work related training kept me quite busy. I learned quite a lot and it’s been a very rewarding experience, but whenever I thought “hey, I should blog about this”, something else came up which grabbed my attention.

This time I wanted to get the word out about a fun project I was involved in and reflect a bit on some aspects of these last six months.

Hacktoberfest

I wrote about it in the Weaveworks blog already: the Weave Scope and Weave Flux teams are participating in Hacktoberfest! ❤ If you haven’t heard about it yet: Hacktoberfest is a month-long celebration of getting involved in open source. It’s happening for the fifth time now and the general idea is: You sign up, and if you manage to contribute five pull requests on Github in October you win a Hacktoberfest t-shirt. To me it’s a very low-barrier initiative and fun way to get to know Open Source and new communities. I love how everybody benefits from this.

As a contributor, apart from getting a nice t-shirt, it’s your chance to learn more about open source, get in touch with a community of developers, learn about how they do things, learn about new tools, being welcomed with your view on a problem and maybe joining the team after all.

From my own experience I know how empowering it feels to be welcomed into a group of fellow contributors who all care about the project as much as you do. To learn from seasoned developers and have your work integrated into later releases and others benefit from your fix as well.

I still remember how quickly after joining the Ubuntu community about 13-14 years ago (yes, it’s really been that long) and after having been encouraged to get some of my work uploaded into Ubuntu, I realised that we could do a lot better at helping new contributors get started. I wanted others to benefit from my experience and what I had learned from the (quite busy) maintainers in the day. I started collecting links to helpful docs, code snippets and tasks to work on on the Wiki. It was a simple thing to do, and over time our whole developer team took the experience of new contributors on as a cornerstone of the project.

As a project member and maintainer, events like Hacktoberfest are your opportunity to reflect on questions like

  • How do we invite new contributors in the project? How high or low is the bar for entry?
  • Are our docs sufficient? Can new folks find their way around easily?
  • Is our use of tools and process well-defined and clear?
  • Are we good at identifying new issues and detailing where and how to fix them?

So apart from just finding new contributors or getting issues fixed in your code, you also get to learn about an outsider’s perspective and how your project is run. If you take the feedback seriously, it’s a good way to pave the way for others to come in.

Weave Scope and Weave Flux

Scope and Flux are two very important projects at Weaveworks and they both tell the GitOps story from different angles.

Weave Scope has a special place in my heart. When I demoed Weave Cloud at events in the past couple of months the Explore part of it (which uses Weave Scope internally) especially drew attention, because everyone immediately got how important observability is in a micro-services world. Scope can be used in very different scenarios and is written using modern languages. I’ve been part of the Weave Scope meetings in the past few weeks and it was great to see how people from different parts of the globe got together, front-enders, back-enders, designers and just generally interested folks who want to improve Scope for their particular use. I was glad that Satyam Zode brought up the idea of participating in Hacktoberfest and started by going through the list of issues to see which would be good for new contributors (thanks Bryan and Filip who helped out as well!).

If this sounds interesting check out the Weave Scope Hacktoberfest page.

Weave Flux is the Kubernetes GitOps operator, it’s what deploys new images and config to your cluster and makes sure that the state of the cluster matches the config in git. It’s easy to get up and running and very versatile. It’s what Weaveworks has been using for years now and many of our customers and general users rely on to go faster. In the past months I’ve seen an influx of new developers on Slack, drive-by contributions and new thoughts about where to take the project. I’m really pleased how friendly this community is and how keen to help each other out.

If you’re interested in helping out here, take a look at the Weave Flux Hacktoberfest page.

Leave a comment if you’re participating in Hacktoberfest too!

A month with Dell XPS 13 (9370)

After years of using Thinkpads, I went for a Dell XPS 13 with Ubuntu. Although I had bought devices with Linux pre-installed and laptops for friends as well, this  was going to be my first own laptop coming with Ubuntu straight from the factory.

 

The hardware

The specs looked great (big SSD disk, enough memory to play around with VMs/containers, etc.), but I had to brush away some fond memories of old laptops, where I was able to easily replace parts (memory, screen, disk, power jack, keyboard and more for my x220). With the XPS this was not easily going to be possible anymore.

Anyway, the new machine arrived in the office. It looked great, it was light,  it was really well-built and whatever task I threw at the machine, it dealt with it nicely. In general I really liked the hardware and how the machine felt a lot. I knew I was going to be happy with this.

A few things bothered me somewhat though. The placement of the webcam simply does not make sense. It’s at the bottom of the screen, so you get an upwards-angle no matter what you do and people in calls with you will always see a close up of your fingers typing. Small face, huge fingers. It’s really awkward. I won’t go unmanicured into meetings anymore!

The software

It came with an old image of Ubuntu 16.04 LTS pre-installed and after pulling a lot of updates, I thought I was going to get a nice fresh start with everything just working out of the box. Not quite.

The super key was disabled. As 16.04 came with Unity, the super key is one of the key ingredients to starting apps or bringing up the dash. There was a package called supey-key-dell (or some such) installed which I had to find and remove and some gnome config I had to change to make it work again. Why oh why?

Hardware support. I thought this was going to be straight-forward. Unfortunately it wasn’t. In the process of the purchase Dell recommended I get a DA300, a USB-C mobility adapter. That looked like a great suggestion, ensuring I can still use all my Old World devices. Unfortunately the Ethernet port of it just didn’t work with 16.04.

The laptops’s own screen flickered in many circumstances and connecting to screens (even some Dell devices) flickered even more, sometimes screens went on and off.

I got a case with USB-C adapter for the SSD disk of my laptop and copied some data over only to find that some disk I/O load nearly brought the system to a grinding halt.

Palm detection of the touchpad was throwing me off again and again. I can’t count how many times I messed up documents or typed text in the wrong places. This was simply infuriating.

Enter Ubuntu 18.04 LTS

I took the plunge, wiped the disk and made a fresh install of Bionic and I’m not looking back. Palm detection is LOADS better, Disk I/O is better, screen flickering gone, Ethernet port over USB-C works. And I’m using a recent Ubuntu, which is just great! Nice work everyone involved at Ubuntu!

I hope Dell will reconsider shipping this new release to users with recent machines (and as an update) – the experience is dramatically different.

I’m really happy with this machine now, got to go now, got a manicure appointment…

I’m joining Weaveworks

Weaveworks

My sabbatical is over and today is my first day working at Weaveworks where I’m joining the Developer Experience team. I’m incredibly excited about this.

I got to know quite a few of my colleagues in the past weeks and they were without exception all incredibly likeable and smart people. The company believes in open source, is quite diverse and has an office in Berlin – also I’ll get to work with Cezzaine, Jonathan and Steve again.

Right from the start the technology really impressed me. Weave Cloud solves key problems many organisations and companies face today: being able to deploy services seamlessly, securely and easily and making monitoring and snapshots obvious and simple-to-use have an immediate impact on what you can do and what you spend your time on.

Here’s what it looks like in action:

If you’re on Google Cloud Platform, you can even use it for free or you can check out the tutorials to play around with it without having to install anything.

It’s going to be great to immerse myself and learn more about the underlying technologies and connect with the Cloud Native communities. It’s a big landscape with lots of activity and overlap, strong roots in the open source world and the passion to make modern workloads a more manageable problem.

At Weaveworks, I’ll be able to work on what I like best: talk to and work with devs, figure out what people need, look at docs and tools, connect people and make people’s lives easier.

One thing makes this experience even sweeter: I’ll get to reconnect with a lot of you folks! If you’re working in the space and I haven’t talked to you in a while, hit me up and let’s catch up soon again!

Alright, I need to start packing and off to the office for today… 🚲

Took a year off…

Since many of you reached out to me in the past weeks to find out if I was still travelling the world and how things were going, I thought I’d reconnect with the online world and write a blog post again.

After a bit more than a year, my sabbatical is coming to an end now. I had a lot of time to reflect, recharge batteries, be curious again, travel and make new experiences.

In December ’16 I fled the winter in Germany and went to Ecuador. Curiosity was my guidebook, I slowed down, let nature sink in, enjoyed the food and hospitality of the country, met many simply beautiful people along the way, learned some Spanish, went scuba diving with hammerhead sharks and manta rays, sat on top of mountains, hiked, listened to stories from village elders in Kichwa around the fire, went paragliding, camped in the jungle with Shuar people, befriended a macaw in a hippie village and got inspired by many long conversations.

As always when I’m travelling, my list of recommended next destinations grew and I could easily have gone on. After some weeks, I decided to get back to Berlin though and venture new paths there.

When I first got involved in Ubuntu, I was finishing my studies in Computer Sciences. Last March, thirteen years later, I felt the urge to study again. To open myself up to new challenges, learn entirely new skills, exercise different parts of the brain and make way for a possible new career path in the future. I felt quite uncertain, I wasn’t sure if I was crazy to attempt it,  but I was going to try. I went back to square one and started training as a psychotherapist. This was, and still is, an incredibly exciting step for me and has been a very rewarding experience so far.

I wasn’t just looking for a new intellectual exercise – I was also looking for a way to work more closely with people. Although it’s quite different from what I did up until now, this decision still was very consistent with my beliefs, passions and personality in general. Supporting another human being on their path, helping to bring out their potential and working out new perspectives together have always deeply attracted me.

I had the privilege of learning about and witnessing the work of great therapists, counsellors and trainers in seminars, workshops, books, talks and groups, so I had some guidance which supported me and I chose body psychotherapy as the method I wanted to learn. It is part of the humanistic psychotherapy movement and at its core are (among others) the following ideals:

  • All people are inherently good.
  • People are driven towards self-actualisation: development of creativity, free will, and positive human potential.
  • It is based on present-tense experience as the main reference point.
  • It encourages self-awareness and mindfulness.
  • Wikipedia quotes an article, which describes the benefits as having a "crucial opportunity to lead our troubled culture back to its own healthy path. More than any other therapy, Humanistic-Existential therapy models democracy. It imposes ideologies of others upon the client less than other therapeutic practices. Freedom to choose is maximized."

If you know me just a little bit you can probably tell, that this all very much resonated with me. In a way, it’s what led me to the Ubuntu project in 2004 – there is a lot of “humanity towards others” and “I am what I am because of who we all are” in there.

Body psychotherapy was also specifically interesting to me, as it offers a very rich set of interventions and techniques, all experience-based and relying on the wisdom of our body. Furthermore it seeks to reconcile the body and mind split our culture so heavily promotes.

Since last March I immersed myself in this new world: took classes, read books, attended a congress and workshops and had quite a bit of self-experience. In November I took the required exams and became “Heilpraktiker für Psychotherapie”. The actual training in body psychotherapy I’m going to start this year in March. As this is going to take still several years, I’m not exactly sure when or how I will start working in this field. While it’s still quite some time off and right now only an option for some time in the future, I know that this process will encourage me to become more mindful, patient, empathic and a better listener, colleague, partner and friend.

Does this mean, I’m going to leave the tech world? No, absolutely not. My next steps in this domain I’m going to leave to another blog post though.

I feel very privileged having been able to take the time and embark on this adventure and add a new dimension to my coordinate system. All of this wouldn’t have been possible without close people around me who supported and encouraged me. I’m very grateful for this and feel quite lucky.

This has been a very exciting year, a very important experience and I’m very much looking forward to what’s yet to come.

Taking a break

It’s a bit strange to write this blog post in the same week as Martin Pitt is announcing moving on from Canonical. I remember many moments of Martin’s post very vividly and he was one of the first I ran into on my flight to Sydney for Ubuntu Down Under in 2005.

Fast forward to today: 2016 was a year full of change – my personal life was no exception there. In the last weeks I had to realise more and more that I need a long break from everything. I therefore decided to move on from Canonical, take some time off, wander the world, recharge my batteries, come back and surprise you all with what’s next.

I’m very much leaving on good terms and I could imagine I won’t be too far away (I’d miss all you great people who became good friends way too much). Having been with Canonical for 11 years and 12 years in the Ubuntu community, it has been an incredibly hard decision to take. Still it’s necessary now and it’ll be good open myself up again to new challenges, new ways of working and new sets of problems.

It was a great privilege to work with you all and be able to add my humble contribution to this crazy undertaking called Ubuntu. I’m extremely grateful for the great moments with you all, the opportunities to learn, your guidance, the friends I made around the world, the laughs, the discussions, the excellent work we did together. This was a very important time of my life.

In the coming weeks I will be without internet, I haven’t quite decided yet, which part of the world I’m going to go to, but maybe I’ll post a picture or two somewhere. 🙂

I also haven’t lined up a new job yet (it’s a question many already asked me). If you have crazy new ideas of what I should work on next, I’m obviously all ears. Drop me a comment or drop me a mail, just note that I might be unresponsive for some time as I’m going to sit on top of a mountain, get lost in the jungle or the desert somewhere.

(My last day at Canonical is Dec 15, so if you have anything to sort out and discuss, let me know and we’ll figure it out.)

Ubuntu Community Appreciation Day

ucaday-64pxIt’s 20th November 2016, so today marks another Ubuntu Community Appreciation Day. The idea for the event was put together by Ahmed Shams in 2011 and it’s simple but brilliant: once a year (at least), take the time to thank some specific people for their work in Ubuntu.

As I’m at UbuCon Europe this weekend, it’s incredibly easy to pick somebody whose work I’m grateful for. Today I’d like to thank all the event organisers in the Ubuntu world. Without people like Sujeevan Vijayakumaran (in the case of UbuCon Europe), we as a community, wouldn’t be able to get together, learn from each other and have fun together. It takes a set of special skills to organise big and small events, plan ahead, talk to various people and companies, organise sponsors and helpers and it’s something we often take too much for granted.

Thank you everyone who organised the Ubuntu events I’ve been to over the years, no matter if it’s the small meetings in a bar or the crazy big events, like UDSes (thanks Claire, Marianna and Michelle!). You are incredible rockstars and I had some of my best times thanks to you!

Ubuntu Online Summit from a snap perspective

Ubuntu Online SummitEarlier this week the Ubuntu community was busy with the Ubuntu Online Summit. If you head to the schedule page, you can watch all the sessions which happened.

As I’m interested in snaps a lot, I’d like to highlight some of the sessions which happened there, so if you missed them, you can go back and see what happened there:

  • Intro and keynote by Gustavo Niemeyer
    Gustavo (amongst others projects he is involved with) is one of the lead developers of snapd. During his keynote he gives an overview over what the team has been working on in the last time and explains which features all landed in the snap world recently. It quickly gives you an idea of the pace of development and the breadth of new features which landed.
  • Creating your first snap
    This is a session I gave. Unfortunately Didier couldn’t make it as he had lost his voice in the days before. We both worked together on the content for this. Basically, if you’re new to using and creating snaps, watch this. It’s a series of very simple steps you can follow along and gives you enough background to see the bigger picture.
  • Snap roadmap and Q&A
    This was a fun session with Michael Vogt and Zygmunt Krynicki. They are also both lead developers of snapd and they share a lot of their thoughts in their own very fun and very interesting way. After some discussion of the roadmap, they dived right into the almost endless stream of questions. If you want to get an idea of what’s coming up and some of the more general decisions behind snaps, watch this one.
  • Building snaps in Launchpad
    Colin Watson gave this demo of a beautiful new feature in Launchpad. Starting from a github repo (the source could live elsewhere too), the source is pulled into Launchpad, snaps are built for selected releases of Ubuntu and selected architectures and directly pushed to the store. It’s incredibly easy to set up, complements your CI process and makes building on various architectures and publishing the snaps trivial. Thanks a lot for everybody’s work on this!

The other sessions were great too, this is just what I picked up from the world of snaps.

Enjoy watching the videos and share them please!

Thanks a lot to all the session leads as well!

Ubuntu Online Summit coming up 15-16 Nov

Ubuntu Online Summit

Ubuntu Online Summit is here again! 15th and 16th November 2016 we are talking about the great stuff which landed in Ubuntu 16.10 and we talk about our plans for 17.04.

Now is the last call for adding sessions, find out how to do that here.

See you all next week!

Writing snaps together

Working with a new technology often brings you to see things in a new light and re-think previous habits. Especially when it challenges the status quo and expectations of years of traditional use. Snaps are no exception in this regard. As one example twenty years ago we simply didn’t have today’s confinement technologies.

Luckily is using snapcraft a real joy: you write one declarative file, define your snap’s parts, make use of snapcraft‘s many plugins and if really necessary, you write a quick and simple plugin using Python to run your custom build.

Many of the first issues new snaps ran into were solved by improvements and new features in snapd and snapcraft. If you are still seeing a problem with your snap, we want you to get in touch. We are all interested in seeing more software as snaps, so let’s work together on them!

Enter the Sandpit

I mentioned it in my last announcement of the last Snappy Playpen event already, but as we saw many new snaps being added there in the last days, I wanted to mention it again. We started a new initiative called the Sandpit.

It’s a place where you can easily

  • list a snap you are working on and are looking for some help
  • find out at a glance if your favourite piece of software is already being snapped

It’s a very light-weight process: simply edit a wiki and get in touch with whoever’s working on the snap. The list grew quite quickly, so there’s loads of opportunities to find like-minded snap authors and get snaps online together.

You can find many of the people listed on the Sandpit wiki either in #snappy on Freenode or on Gitter. Just ask around and somebody will help.

Happy snapping everyone!

Get your software snapped tomorrow!

For a few weeks we have been running the Snappy Playpen as a pet/research project already. Many great things have happened since then:

  • With the Playpen we now have a repository of great best-practice examples.
  • We brought together a lot of people who are excited about snaps, who worked together, collaborated, wrote plugins together and improved snapcraft and friends.
  • A number of cloud parts were put together by the team as well.
  • We landed quite a few high-quality snaps in the store.
  • We had lots of fun.

Opening the Sandpit

With our next Snappy Playpen event tomorrow, 20th September 2016, we want to extend the scheme. We are opening the Sandpit part of the Playpen!

One thing we realised in the last weeks is that we treated the Playpen more and more like a place where well-working, tested and well-understood snaps go to inspire people who are new to snapping software. What we saw as well was that lots of fellow snappers kept their half-done snaps on their hard-disk instead of sharing them and giving others the chance to finish them or get involved in fixing. Time to change that, time for the Sandpit!

In the Sandpit things can get messy, but you get to explore and play around. It’s fun. Naturally things need to be light-weight, which is why we organise the Sandpit on just a simple wiki page. The way it works is that if you have a half-finished snap, you simply push it to a repo, add your name and the link to the wiki, so others get a chance to take a look and work together with you on it.

Tomorrow, 20th September 2016, we are going to get together again and help each other snapping, clean up old bits, fix things, explain, hang out and have a good time. If you want to join, you’re welcome. We’re on Gitter and on IRC.

  • WHEN: 2016-09-20
  • WHAT: Snappy Playpen event – opening the Sandpit
  • WHERE: Gitter and on IRC

Added bonus

As an added bonus, we are going to invite Michael Vogt, one of the core developers of snapd to the Ubuntu Community Q&A tomorrow. Join us at 15:00 UTC tomorrow on http://ubuntuonair.com and ask all the questions you always had!

See you tomorrow!