Skip to content

Commit

Permalink
2023: Fix the URL IDs
Browse files Browse the repository at this point in the history
Python's lstrip() method takes a **set** of characters to be removed
from the left side of the sting and therefore unsuitable for removing
prefixes. The documentation even explicitly mentions this [0]:
> The chars argument is not a prefix; rather, all combinations of its
> values are stripped
> See str.removeprefix() for a method that will remove a single prefix
> string rather than all of a set of characters.

Oh well...

Unfortunately, we repaired this way too late so we should definitely not
break the old links. Therefore, I came up with this quick and dirty
approach... (a better solution would be to generate redirects but that
can also be done later).

We also need to generate better URL IDs in the future as the new ones
are still problematic (especially due to the missing umlauts). I added a
note to convert_from_pretalx.py for a potential solution that gives us
the most flexibility (since the talk IDs from Pretalx are definitely
stable).
Anyway, let's use this quick fix for now.

[0]: https://docs.python.org/3.11/library/stdtypes.html#str.lstrip
  • Loading branch information
primeos committed Jul 11, 2023
1 parent f8cd39f commit 5fcc542
Show file tree
Hide file tree
Showing 16 changed files with 513 additions and 12 deletions.
20 changes: 10 additions & 10 deletions 2023/programm2.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,17 +19,17 @@ Alternativ kann das Program auch über pretalx angesehen werden: [cfp.tuebix.org
<table>
<tr><td></td><td></td><td></td><td></td><td>Raum W1</td></tr>
<tr><td>10:00</td><td>bis</td><td>11:50</td><td><a class="work"></a></td><td><a href="../programm/5-git-annex-dateien-synchronisieren-sichern-und-verwalten-fr-poweruser">Git&nbsp;Annex:&nbsp;Dateien&nbsp;synchronisieren,&nbsp;sichern&nbsp;und&nbsp;verwalten&nbsp;für&nbsp;Poweruser</a></td><td>Yann&nbsp;Büchau</td></tr>
<tr><td>12:00</td><td>bis</td><td>13:50</td><td><a class="work"></a></td><td><a href="../programm/latex-fr-einsteiger">LaTeX&nbsp;für&nbsp;Einsteiger</a></td><td>Philipp&nbsp;Kammerer</td></tr>
<tr><td>12:00</td><td>bis</td><td>13:50</td><td><a class="work"></a></td><td><a href="../programm/20-latex-fr-einsteiger">LaTeX&nbsp;für&nbsp;Einsteiger</a></td><td>Philipp&nbsp;Kammerer</td></tr>
<tr><td>14:00</td><td>bis</td><td>15:50</td><td><a class="work"></a></td><td><a href="../programm/48-same-procedure-as-every-year-kommandozeilen-sprechstunde-n-">Same&nbsp;Procedure&nbsp;as&nbsp;Every&nbsp;Year:&nbsp;Kommandozeilen-Sprechstunde(n)</a></td><td>Harald&nbsp;König</td></tr>
<tr><td>&nbsp;</td></tr>
<tr><td></td><td></td><td></td><td></td><td>Raum V1</td></tr>
<tr><td>09:30</td><td>bis</td><td>09:50</td><td><a class="talk2"></a></td><td><a href="../programm/tuebix-init">Tübix&nbsp;Init</a></td><td>Tübix&nbsp;Orga&nbsp;Team</td></tr>
<tr><td>10:00</td><td>bis</td><td>10:50</td><td><a class="talk"></a></td><td><a href="../programm/8-einstieg-in-linux-kernel-debugging">Einstieg&nbsp;in&nbsp;Linux&nbsp;Kernel&nbsp;Debugging</a></td><td>Stefan&nbsp;Walter</td></tr>
<tr><td>10:00</td><td>bis</td><td>10:50</td><td><a class="talk"></a></td><td><a href="../programm/38-einstieg-in-linux-kernel-debugging">Einstieg&nbsp;in&nbsp;Linux&nbsp;Kernel&nbsp;Debugging</a></td><td>Stefan&nbsp;Walter</td></tr>
<tr><td>11:00</td><td>bis</td><td>11:50</td><td><a class="talk"></a></td><td><a href="../programm/58-die-wirre-welt-der-kleinen-computer">Die&nbsp;wirre&nbsp;Welt&nbsp;der&nbsp;kleinen&nbsp;Computer</a></td><td>Daniel&nbsp;Maslowski</td></tr>
<tr><td>12:00</td><td>bis</td><td>12:50</td><td><a class="talk"></a></td><td><a href="../programm/ldungssysteme-nachhaltig-digitalisieren">Bildungssysteme&nbsp;nachhaltig&nbsp;digitalisieren</a></td><td>Frank&nbsp;Schiebel&nbsp;&&nbsp;Andreas&nbsp;Grupp&nbsp;&&nbsp;Andi&nbsp;Mundt</td></tr>
<tr><td>12:00</td><td>bis</td><td>12:50</td><td><a class="talk"></a></td><td><a href="../programm/23-bildungssysteme-nachhaltig-digitalisieren">Bildungssysteme&nbsp;nachhaltig&nbsp;digitalisieren</a></td><td>Frank&nbsp;Schiebel&nbsp;&&nbsp;Andreas&nbsp;Grupp&nbsp;&&nbsp;Andi&nbsp;Mundt</td></tr>
<tr><td>14:00</td><td>bis</td><td>14:50</td><td><a class="talk"></a></td><td><a href="../programm/43-so-vermittelst-du-technische-inhalte-verstndlich">So&nbsp;vermittelst&nbsp;du&nbsp;technische&nbsp;Inhalte&nbsp;verständlich</a></td><td>Frank&nbsp;Hofmann</td></tr>
<tr><td>15:00</td><td>bis</td><td>15:50</td><td><a class="talk"></a></td><td><a href="../programm/hacking-von-sicheren-usb-sticks-und-usb-festplatten">Hacking&nbsp;von&nbsp;sicheren&nbsp;USB-Sticks&nbsp;und&nbsp;USB-Festplatten</a></td><td>Gerhard&nbsp;Klostermeier</td></tr>
<tr><td>16:00</td><td>bis</td><td>16:50</td><td><a class="talk"></a></td><td><a href="../programm/1-typische-schwachstellen-von-heimnetz-routern">Typische&nbsp;Schwachstellen&nbsp;von&nbsp;Heimnetz-Routern</a></td><td>Gerhard&nbsp;Klostermeier</td></tr>
<tr><td>15:00</td><td>bis</td><td>15:50</td><td><a class="talk"></a></td><td><a href="../programm/32-hacking-von-sicheren-usb-sticks-und-usb-festplatten">Hacking&nbsp;von&nbsp;sicheren&nbsp;USB-Sticks&nbsp;und&nbsp;USB-Festplatten</a></td><td>Gerhard&nbsp;Klostermeier</td></tr>
<tr><td>16:00</td><td>bis</td><td>16:50</td><td><a class="talk"></a></td><td><a href="../programm/31-typische-schwachstellen-von-heimnetz-routern">Typische&nbsp;Schwachstellen&nbsp;von&nbsp;Heimnetz-Routern</a></td><td>Gerhard&nbsp;Klostermeier</td></tr>
<tr><td>18:00</td><td>bis</td><td>18:20</td><td><a class="talk2"></a></td><td><a href="../programm/tuebix-exit">Tübix&nbsp;Exit</a></td><td>Tübix&nbsp;Orga&nbsp;Team</td></tr>
<tr><td>18:30</td><td>bis</td><td>18:50</td><td><a class="talk"></a></td><td><a href="../programm/41-open-source-ist-fr-viele-informatik-studierende-ein-mysterium">Open&nbsp;Source&nbsp;ist&nbsp;für&nbsp;viele&nbsp;Informatik-Studierende&nbsp;ein&nbsp;Mysterium</a></td><td>Daniel&nbsp;Kulesz</td></tr>
<tr><td>&nbsp;</td></tr>
Expand All @@ -41,17 +41,17 @@ Alternativ kann das Program auch über pretalx angesehen werden: [cfp.tuebix.org
<tr><td>15:00</td><td>bis</td><td>15:20</td><td><a class="talk"></a></td><td><a href="../programm/42-docker-build-alternativen">Docker&nbsp;build&nbsp;Alternativen</a></td><td>Gabriel&nbsp;Wustmann</td></tr>
<tr><td>15:30</td><td>bis</td><td>15:50</td><td><a class="talk"></a></td><td><a href="../programm/56-identity-management-mit-keycloak">Identity&nbsp;Management&nbsp;mit&nbsp;Keycloak</a></td><td>Roland&nbsp;Alton-Scheidl&nbsp;&&nbsp;Jonas&nbsp;Liebst</td></tr>
<tr><td>16:00</td><td>bis</td><td>16:50</td><td><a class="talk"></a></td><td><a href="../programm/53-ordnung-im-chaos-finden-microservices-observability">Ordnung&nbsp;im&nbsp;Chaos&nbsp;finden:&nbsp;Microservices&nbsp;Observability</a></td><td>Finn&nbsp;Rayk&nbsp;Gärtner</td></tr>
<tr><td>17:00</td><td>bis</td><td>17:20</td><td><a class="talk"></a></td><td><a href="../programm/6-embeded-mastodon-datenschutzfreundliches-marketing-arbeiten-an-fderierten-gitea-forgejo">Embeded&nbsp;Mastodon&nbsp;-&nbsp;Datenschutzfreundliches&nbsp;Marketing&nbsp;&&nbsp;arbeiten&nbsp;an&nbsp;föderierten&nbsp;gitea/forgejo</a></td><td>Michael&nbsp;Jerger</td></tr>
<tr><td>17:30</td><td>bis</td><td>17:40</td><td><a class="talk"></a></td><td><a href="../programm/7-lightningc4k">LightningC4k</a></td><td>Michael&nbsp;Jerger</td></tr>
<tr><td>17:00</td><td>bis</td><td>17:20</td><td><a class="talk"></a></td><td><a href="../programm/36-embeded-mastodon-datenschutzfreundliches-marketing-arbeiten-an-fderierten-gitea-forgejo">Embeded&nbsp;Mastodon&nbsp;-&nbsp;Datenschutzfreundliches&nbsp;Marketing&nbsp;&&nbsp;arbeiten&nbsp;an&nbsp;föderierten&nbsp;gitea/forgejo</a></td><td>Michael&nbsp;Jerger</td></tr>
<tr><td>17:30</td><td>bis</td><td>17:40</td><td><a class="talk"></a></td><td><a href="../programm/37-lightningc4k">LightningC4k</a></td><td>Michael&nbsp;Jerger</td></tr>
<tr><td>&nbsp;</td></tr>
<tr><td></td><td></td><td></td><td></td><td>Raum V3</td></tr>
<tr><td>10:00</td><td>bis</td><td>10:50</td><td><a class="talk"></a></td><td><a href="../programm/13-howto-mein-erstes-paket-im-arch-user-repository">Howto:&nbsp;Mein&nbsp;erstes&nbsp;Paket&nbsp;im&nbsp;Arch&nbsp;User&nbsp;Repository</a></td><td>Christian&nbsp;Heusel</td></tr>
<tr><td>11:00</td><td>bis</td><td>11:50</td><td><a class="talk"></a></td><td><a href="../programm/6-ein-freies-schulnetz-">Ein&nbsp;freies&nbsp;Schulnetz!</a></td><td>Frank&nbsp;Schiebel</td></tr>
<tr><td>12:00</td><td>bis</td><td>12:50</td><td><a class="talk"></a></td><td><a href="../programm/4-kamerawagen-fr-h0-modelleisenbahn-mit-linux">Kamerawagen&nbsp;für&nbsp;H0-Modelleisenbahn&nbsp;mit&nbsp;Linux</a></td><td>Roland&nbsp;Imme</td></tr>
<tr><td>12:00</td><td>bis</td><td>12:50</td><td><a class="talk"></a></td><td><a href="../programm/34-kamerawagen-fr-h0-modelleisenbahn-mit-linux">Kamerawagen&nbsp;für&nbsp;H0-Modelleisenbahn&nbsp;mit&nbsp;Linux</a></td><td>Roland&nbsp;Imme</td></tr>
<tr><td>13:00</td><td>bis</td><td>13:50</td><td><a class="talk"></a></td><td><a href="../programm/14-picodoom-a-fork-of-gba-doom">PicoDoom,&nbsp;a&nbsp;fork&nbsp;of&nbsp;GBA&nbsp;Doom</a></td><td>Olaf&nbsp;Flebbe</td></tr>
<tr><td>14:00</td><td>bis</td><td>14:20</td><td><a class="talk"></a></td><td><a href="../programm/57-platzsparend-automatisierung-testen">Platzsparend&nbsp;Automatisierung&nbsp;testen</a></td><td>André&nbsp;Niemann</td></tr>
<tr><td>14:30</td><td>bis</td><td>14:50</td><td><a class="talk"></a></td><td><a href="../programm/hacking-eines-funkthermostats">Hacking&nbsp;eines&nbsp;Funkthermostats</a></td><td>Gerhard&nbsp;Klostermeier</td></tr>
<tr><td>15:00</td><td>bis</td><td>15:20</td><td><a class="talk"></a></td><td><a href="../programm/9-vom-leben-und-sterben-einer-software">Vom&nbsp;Leben&nbsp;und&nbsp;Sterben&nbsp;einer&nbsp;Software</a></td><td>Lukas&nbsp;Kallies</td></tr>
<tr><td>14:30</td><td>bis</td><td>14:50</td><td><a class="talk"></a></td><td><a href="../programm/33-hacking-eines-funkthermostats">Hacking&nbsp;eines&nbsp;Funkthermostats</a></td><td>Gerhard&nbsp;Klostermeier</td></tr>
<tr><td>15:00</td><td>bis</td><td>15:20</td><td><a class="talk"></a></td><td><a href="../programm/39-vom-leben-und-sterben-einer-software">Vom&nbsp;Leben&nbsp;und&nbsp;Sterben&nbsp;einer&nbsp;Software</a></td><td>Lukas&nbsp;Kallies</td></tr>
<tr><td>15:30</td><td>bis</td><td>15:35</td><td><a class="light"></a></td><td><a href="../programm/102-vorstellung-fablab">Vorstellung&nbsp;Fablab</a></td><td>Paul&nbsp;Rosset</td></tr>
<tr><td>15:35</td><td>bis</td><td>15:40</td><td><a class="light"></a></td><td><a href="../programm/16-plaintextaccounting-mit-hledger">PlainTextAccounting&nbsp;mit&nbsp;hledger</a></td><td>Yann&nbsp;Büchau</td></tr>
<tr><td>15:40</td><td>bis</td><td>15:45</td><td><a class="light"></a></td><td><a href="../programm/47-das-grannophone-ein-videotelefon-fr-senioren-und-demenzpatienten">Das&nbsp;Grannophone&nbsp;-&nbsp;ein&nbsp;Videotelefon&nbsp;für&nbsp;Senioren&nbsp;und&nbsp;Demenzpatienten</a></td><td>Stefan&nbsp;Baur</td></tr>
Expand Down
Loading

0 comments on commit 5fcc542

Please sign in to comment.