November was a really good month in terms of strengthening the relationship with the Microsoft community, which is something that we’ve strived for. Grafana announced their first party service on the Azure platform at ObservabilityCON. And k6 - and other Grafana Labs products - featured in no less than 2 talks, and 1 workshop at NDC Oslo.
About NDC
Since its start-up in Oslo 2008, the Norwegian Developers Conference (NDC) quickly became one of Europe's largest conferences for .NET & Agile development. Today NDC Conferences are 5-day events with 2 days of pre-conference workshops and 3 days of conference sessions, and take place all over the globe.
What happened at NDC Oslo
In Building reliable services at NRK TV, Einar W. Høst (@einarwh on Twitter), talked about what reliability means for NRK TV, a Norwegian public streaming service, serving hundreds of thousands of users every day. Einar does domain modeling, API design and computer programming at NRK.
Best effort is insufficient, says Einar. We must define what we mean by reliability, and measure how well we are doing. In his session, Einar went over some practical examples of using SLOs, fault injection and load testing (with k6) to improve the reliability of services at NRK TV. Some of it has been described in Feature toggling transient errors in load tests, on the NRK TV blog.
Jose Luis Latorre is a .NET and Azure software engineer, and works at Swiss Life as a Developer Community Lead & Software Architect. A former Microsoft MVP, Jose enjoys sharing his knowledge at user groups, conferences, and training.
In Performance testing: from zero to hero with k6 & Azure, Jose explained why performance testing is important and went over the dos and don'ts. Starting at the basics, Jose took his audience on a journey implementing a full-fledged performance test, that checks a cloud web & service and verifies its compliance against some SLAs, using k6, Azure DevOps, and Grafana for displaying test results.
Shortly before his talk, Jose found his apartment’s bathroom in ruins. The ceiling had come down. Realizing the irony of it all, Jose used the anecdote in his story. The now exposed ceiling was a metaphor for increased observability, and the process of testing the pipelines became stress and soak testing.
In conversation, Jose celebrated the speaker experience. Amidst changing COVID-19 regulations, the organizers showed rapid and thorough response, seemingly without breaking a sweat.
Jose also asked me to mention the feedback k6 Developer advocate Nicole van der Hoeven, and Developer Advocate at Jetbrains, Matthias Koch, gave helped him improve his talk. “I’m a perfectionist, and I’m satisfied with how the session went.”
NDC Oslo will publish talk recordings shortly, in the meantime you can check out earlier iterations of Jose’s talk here and here.
The workshop Building and testing resilient services over HTTP, by Bjørn Einar and Roger Hoem-Martinsen, could go deep because of its intimate setting.
Bjørn Einar is a .NET developer and architect working at 4Subsea. Previously, working for NRK TV as a backend developer and architect, he developed a keen interest in resilient architecture.
Roger Hoem-Martinsen is an independent consultant with a broad background. In recent years he specialised in testing and takes a special interest in promoting and implementing DevOps.
Bjørn on the left, the group hard at work.With current trends of moving services to the cloud and building smaller and network-intensive services, meeting performance expectations can be challenging. With their workshop, Roger and Bjørn taught participants how to build services that run despite partial failures and outages.
The participants came from diverse backgrounds. Some were advanced in the .NET space, while others had less experience in that area and were curious about k6 and the JavaScript side of things. Participants caught on fast to the simulating of errors, and chaos engineering, while it’s a fairly complex concept, Bjørn tells me in conversation. “We tried to cover the whole thing, load testing, monitoring, testing culture, and chaos engineering. Meeting non-functional requirements was the overarching theme, and we dove in some elements to give participants something to work on hands-on.”
Roger: “We wanted to make them aware of the real struggles, this was not a get to ‘Hello, world’ in the shortest amount of time. The challenges were based on real world scenarios. Not trivial changes that break a build.”
The workshop elements are open source and documented here and here, and use GitHub Codespaces to provision the environments. Bjørn shared a recording of debugging an application during the workshop on Twitter:
I got a bit carried away now that I learned Camtasia and made a little insight into the workshop I did, running it in GitHub codespaces and all. pic.twitter.com/d7aIZHCpGu
— B.E. Bjartnes (@bjartnes) December 7, 2021
We're looking forward to NDC London, taking place January 24-28, in Queen Elizabeth II Centre and online!