Google Docs for code: the best collaborative code editors in 2021

Collaborative code editors let developers write code together in real time, just like Google Docs. This article compares Microsoft Live Share, Code with me, Floobits, CodeTogether, GitDuck, and CodeInterview. I clearly demonstrate the limitations and benefits of each tool, including how it integrates into existing IDEs, end-to-end encryption and pricing. I’ll conclude with recommendations for … Read more

microsoft 365 groups

Myths of the Microsoft 365 cloud – Part IV – Microsoft 365 groups and scheduling events

Microsoft 365 groups are the foundation for managing users and permissions in many other applications, such as Teams and SharePoint. This article introduces the group’s other functionalities, group inbox and calendar, how to access them, and why they are sometimes difficult to find. I also explain different options that simplify scheduling of events in Outlook, … Read more

Myths of the Microsoft 365 cloud – Part III – Teams and its SharePoint integration

Teams is Microsoft’s communication platform that offers video meetings and text-based chats at work that happen in one or more team rooms. Learn how Teams integrates with SharePoint, how you can plan your team structure (including private channels), and discover several non-obvious features of the app. Introduction Microsoft Teams is a cloud application, which you … Read more

Microsoft 365 cloud SharePoint

Myths of the Microsoft 365 cloud – Part II – SharePoint features and membership management

SharePoint, which is part of the Microsoft 365 cloud, offers collaboration features for your team. I present the three main features of SharePoint, explain the difference between communication vs. team sites, and elaborate on how the membership management works. Finally, I discuss important caveats you should be aware of. Introduction SharePoint is a cloud application … Read more

python link collection

Advanced Python link collection

This article is a link collection for Python developers who want to go beyond the basics. It presents my personal favorite articles and libraries for various use cases. Introduction Whenever you fall in love with a programming language, you will wonder what you can do with it, beyond the basics. Most modern programming languages come … Read more

acoustic fingerprinting

Experimenting with acoustic fingerprinting for duplicate detection

This article describes an experiment where I apply acoustic fingerprinting and speech recognition to detect duplicates in my personal collection of episodes (mp3 files) of the German radio play “Philip Maloney”. I discuss the advantages and disadvantages of both approaches, and present the results of applying the Olaf acoustic fingerprinting implementation. Introduction Acoustic fingerprinting (Wikipedia) … Read more

PlantUML advanced features

PlantUML advanced features

With PlantUML you can create diagrams as plain text code. This article covers several advanced features, e.g. how to choose the right output file format, or using the include-mechanism effectively. I also explain how you can generate code from PlantUML diagrams (and vice versa), or how to work on a model-layer by extending PlantUML’s syntax. … Read more

PlantUML layout

PlantUML layout and styles tutorial

With PlantUML you can create diagrams as plain text code. PlantUML takes off the burden so that you don’t need to worry about the looks and layout of your diagram’s elements, by applying opinionated defaults. This article is both a PlantUML layout tutorial, which explains how you can customize the layout, and also explains how … Read more

PlantUML tutorial

PlantUML tutorial to create diagrams as code

PlantUML is one of the most feature-complete tools that lets you create diagrams as code, using plain text. It supports UML diagrams and beyond, and has a large ecosystem. In this basic PlantUML tutorial I present an introduction on what PlantUML is and how to learn it. I go into detail about the very useful … Read more