Online Workshops with Virtual Desktops in the Browser

Earlier this year, I started experimenting with how to make online talks and learning sessions online more interactive. Yes, after a year of conferences being online-only, I grew a bit tired of staring into a tiny camera lens and only getting little feedback. So I came up with cloud based virtual desktops for interactive online hands-on workshops, and I’ve held quite a number of them since then on topics such as Docker, Kubernetes and mobile network tracing. In addition to describing the setup in my blog post over here, I’ve recently given a talk about how to set up such a system. You can find the original talk in German here and with an English simultaneous translation here. And as I was hoping, I got interesting feedback after the talk on how to further improve the setup.

Continue reading Online Workshops with Virtual Desktops in the Browser

Tip of the Day: Line Numbers in Nano

For modifying config files and inspecting logs on remote servers, my tool of choice is the shell based nano editor. It’s a wonderful tool that is simple to use. But there is one feature that has seemingly been missing for many years: An easy way to activate line numbers on the left side of the text window. Recently, I have found out, only by accident, that there’s a shortcut to switch them on and off:

ESC + #

Strangely enough, the shortcut is not mentioned in the documentation and I can’t find any hints on the Internet either. Quite puzzling. Anyway, it works great and its so useful that I thought I needed to share this 🙂 !

SSH Tunnels, TCP Port 443 and Socat

In my private cloud setup, I use SSH tunnels a lot to create a redundant path from the Internet to services I host at home for times when my DSL line is down. It doesn’t happen a lot, but it does happen. The method is also ideal for hosting services at home in case the ISP does not assign a public IP address to the link. Have a look here and here for the details. When I recently wanted to add two new tunnels for port 80 and 443, which I did not forward so far, I was a bit baffled that this didn’t work out of the box.

Continue reading SSH Tunnels, TCP Port 443 and Socat

Keeping Track of Document Research Data

Today, I have an announcement about a quality time software project of mine:

Many years ago, I started helping a member of the family to better organize the qualitative research data that accumulated during a digital humanities research project. At first, using an Excel file to categorize document references, notes on books, etc., worked quite well. However, over time, the Excel file grew to thousands of cells and 2 MB of pure text data. Some cells suddenly contained several pages of text, and the research project became a multi-person endeavor in which several people needed to work on the data at the same time and from different places. This pretty quickly resulted in unsettling questions such as ‘which of those many Excel files contains the latest version of the data’. And, as in any research project that grows, finding and modifying data in the sheet became more and more difficult as well.

At this point, the situation became too chaotic for my taste so I decided to program a web-based Document Research Database project in my quality time to help out. As others in our circle of researcher friends have found the solution quite helpful for their work as well, I have now open-sourced the project to make it available to a wider audience. The source code is GPL-3 licensed, so anyone can now use it for free by setting up their own instances.

Continue reading Keeping Track of Document Research Data

Automating my Cloud Updates with Ansible

I’ve thoroughly dockerized the services I run in my cloud at home and in a data center over the past months. However, at last count, there are still over 25 servers and virtual machines running on which I run various services. I don’t have a problem with that, but keeping them all updated and rebooted is not a very exciting task. So perhaps Ansible is the tool for automating my cloud updates?

Continue reading Automating my Cloud Updates with Ansible

Playing with OpenStack – A Rather Unpleasant Experience

After exploring many new technical topics over the past few months, including Docker and Kubernetes, I ventured out over the weekend to have a look at OpenStack. I wanted to have a closer look because OpenStack is used to provide a private cloud infrastructure, i.e. virtual machines (compute), storage, and networking for many projects. OpenStack is also used by some public cloud providers such as Rackspace or OVH, who seems to run many data centers all around the world with it. With such a strong backing, I assumed that it should be fairly easy to get the necessary information to setup up a basic installation. What followed was a day of trial, error and frustration.

Continue reading Playing with OpenStack – A Rather Unpleasant Experience

History in 75 Racks – The Internet Archive Gives Insights

As the saying goes, ‘the cloud is just someone else’s computer’. Unfortunately, one usually does not see how big ‘that computer’ of a service in the cloud actually is. The Internet Archive has recently posted a video in which Jonah Edwards gave an interesting insight into the size of ‘their cloud’.

Continue reading History in 75 Racks – The Internet Archive Gives Insights

A Firewall for Online Workshops

Over the past months, I’ve been experimenting a lot with Docker and Kubernetes and decided to pass on the knowledge I have gained in occasional cloud-based hands-on workshops rather than doing presentations or videos. The advantage: Instead of talking ‘against a wall’ with virtually no feedback whatsoever during and after a presentation, hands-on workshops are much more interactive and fun to do in the virtual world for everybody involved. So while this is fun, it comes with a certain personal liability risk that can, however, be mitigated to a large degree with a firewall. So here’s the story:

Continue reading A Firewall for Online Workshops

My 6G-Kickoff

Since 2018, I’ve been working in the area of putting 5G into practice. Back then, early versions of the 3GPP Release 15 specification had become available and equipment vendors started shipping first hardware and software. The standards were not developed overnight, however, but were preceded by visions, ideas, studies, and trials by at least half a decade. In other words, 5G was envisioned while the 4G LTE rollout in the real world was just in its early stages at best. So going from one wireless network generation to the next is very much an overlapping process. And as far as 6G is concerned, this overlapping process is starting to gain speed again.

Continue reading My 6G-Kickoff

How To Choose Between 5G SA and NSA

At the moment, 5G networks in Europe are typically based on the Non-Standalone Architecture (NSA). This means that the LTE radio network and the LTE core network is used as the anchor for a connection, and 5G is added as a speed-booster when available. In the future, however, network operators will also roll out 5G SA, where the 5G radio network and the 5G core network will become the anchor for a connection. At this point, both SA and NSA will be on-air, and I was wondering how a mobile device in RRC-Idle state can be instructed which one to prefer.

Continue reading How To Choose Between 5G SA and NSA