Multi-step Refactoring Pains in C++

Titus Winters talks about maintaining and refactoring large C++ code bases (i.e. code bodies that require multi-step refactoring). He describes how “higher-level” language features effectively make refactoring harder (e.g. functions, classes, templates, concepts).

Aktivieren Sie JavaScript um das Video zu sehen.
https://www.youtube.com/watch?v=v_yzLe-wnfk

Zu Gast in Jena

Unser Eintrag ins Gästebuch für eine paar schöne Tage in Jena. 😀

Den durchreisenden Gästen
Die da kommen vom Westen
Zuerst die Stadt von oben gezeigt
Dann die Pracht des Allmächt’gen bezeugt

Zusammen aßen wir in kleiner Runde
und heiter saßen noch zu später Stunde
Bei Tee und viel zu vielen Kalorien
schwadronierten über Dys- und Utopien

Vom in die Esoterik entgleisen
Von Schwarzkümmel, es nachzuweisen
Von Kulturen und vom Reisen
und den Herrn auf deutsch zu preisen

Ein Abend mit Herz, Vertand und Sinn
Hurra auf unsre Gastgeberin
“fi aman-il-Lah” und auch “Ade!”
Vom Gartenkönig und seiner Wasserfee

Usefulness of Swap Explained

Chris Down explains how swap’s main role is being the missing backing store for anonymous (i.e. allocated by malloc) pages. While all other kinds of data (e.g. paged-in files) can be reclaimed easily and later reloaded, because their “source of truth” is elsewhere. There’s no such source for anonymous pages hence these pages can “never” be reclaimed unless there’s swap space available (even if those pages aren’t “hot”).

Linux has historically had poor swap (and by extension OOM) handling with few and imprecise means for configuration. Chris describes the behavior of a machine with and without swap in different scenarios of memory contention. He thinks that poor swap performance is caused by having a poor measure of “memory pressure.” He explains how work on cgroups v2 might give the kernel (and thus admins) better measures for memory pressure and knobs for dealing with it.

Naïvité FTW

Daniele Procida explores how a certain naivety (being unsophisticated) can lead to beautiful and useful things.

Update 2021-08-15: the original video from DjangoCon 2018 is not available any more. It seems Daniele gave a similar talk at EuroPython 2018 also.

Aktivieren Sie JavaScript um das Video zu sehen.
https://www.youtube.com/watch?v=JNGNuiXLAcY