Programmieren mit Python; Taschenrechner Coca mit Parser; Corona Diagramm Bayern; Apps f. Windows, Android; Offizielle Musikvideos

Peter Sulzer
Fürth/Bayern

Zuletzt aktualisiert am: 24. Mai 2021
Corona Diagramm: 28. Juli 2021 19:30
Corona Informationen FÜ, N 28. Juli 2021 06:30

Geändert (Alle Änderungen):
24.05.2021: Neue Rubrik Events
21.03.2021: Zeichentabelle (Unicode) hinzgefügt (UnicodeClips)
19.10.2020: COVID-19: 7-Tage Inzidenz FÜ, FÜ Lkr., N
05.04.2020: Diagramm Verlauf Corona-Infizierte Bayern
01.01.2019: Offizielle Musikvideos 2000 hinzugefügt
14.11.2018: Live-Musik: Felicious, Bar (2002!)
06.08.2018: Locations: Michaelis-Rundblick
10.03.2018: Locations: Frieda Nachtclub/Bar/Disco
02.12.2017: Windows Datentypen: Handles demystifiziert :-)
19.11.2017: Python-Kurs: Syntax Hiliting :-)
02.08.2017: Python-Kurs: Tischrechner mit GUI (2)
10.08.2017: Python-Kurs: Klasse ExpressionParser
12.04.2017: Navigations-Spalte jetzt scrollbar falls zu klein
24.02.2017: Erstes Xamarin-Projekt selbst compiliert :-)
01.02.2017: Sinclair QL (Urvater von Linux) Seite hinzugefügt
16.12.2016: Programmieren in Python 3 offiziell hinzugefügt
05.11.2016: Neue Seite hinzugefügt: Offizielle Musikvideos
26.10.2016: Neues Programm charConvert hinzugefügt

MarkSelby With Me
Mark Selby (Weltmeister 2014, 2016, 2017 und 2021) nach dem Gewinn des Snooker Turniers "Paul Hunter" in Fürth 2011. Zu diesem Zeitpunkt war er der mit großem Abstand Führende der Snooker-Weltrangliste und war von 9. Februar 2015 bis Mitte/Ende 2018 der Führende der "W(G)elt(d)rangliste" (Die Unterschrift auf dem Foto habe ich natürlich auch auf Papier)

Wichtiger Hinweis: Alle Corona (COVID-19) Informationen ohne Gewähr!

COVID-19: 7-Tage Inzidenz Fürth, Fürth Lkr., Nürnberg (Grenzwerte: 35, 50, 100, 200 Quelle: RKI)

Alle folgenden Werte Stand: 28.7.2021. Hochgerechneter (inoffizieller[!]) de facto 7-Tage Inzidenzwert Fürth Stadt: 6,3
Inzidenzwert morgen falls keine Fälle in den letzten 6 Tagen und heute hinzukommen oder wegfallen: 4,7
Maximale Anzahl neuer Fälle in den letzten 6 Tagen und heute, damit Inzidenz morgen unter 50 bleibt: 58
Mindestens/höchstens wegzufallende/hinzuzukommenende Fälle in den letzten 6 Tagen und heute, damit Inzidenz morgen unter 35 liegt: 38
(Diese Werte dürfen mit Hinweis auf die Quelle „http://peter-sulzer.bplaced.net” in andere Publikationen übernommen werden.)

Der letzte Tag wird für Fürth Stadt seit Anfang Dezember nicht mehr angegeben (d. h. für die Berechnung werden nur 6 Tage gewertet, der Tag ohne Meldung wird als 0 gezählt[!]), falls doch ist er fast immer deutlich zu niedrig. Daher wird, falls der Wert kleiner ist, als 1/3 des durchschnittlichen Werts der letzten 7 Tage (beginnend beim vorherigen Tag!), für den letzten Tag der des durchschnittlichen Werts der letzten 7 Tage verwendet. D. h. der hochgerechnete Wert (siehe oben) ist niemals kleiner als der offizielle Wert vom RKI (entspricht aber eher dem tatsächlichen Wert).

DatumNeue F.FÜ Lkr.NN Land
28.7. 6,2 1 8,5 16,2 3,5
21.7. 8,6 6 8,5 10,8 4,1
27.7. 9,3 2 10,2 17,7 4,7
20.7. 6,2 0 9,3 10,2 2,3
26.7. 8,6 0 11,9 16,8 5,3
19.7. 6,2 0 8,5 10,0 2,3
25.7. 7,0 2 8,5 12,0 2,9
18.7. 6,2 2 8,5 9,8 4,1
24.7. 8,6 1 9,3 12,3 3,5
17.7. 6,2 1 8,5 11,2 4,7
23.7. 7,8 0 8,5 12,2 3,5
16.7. 7,0 1 8,5 10,2 5,9
22.7. 8,6 2 9,3 14,1 3,5
15.7. 7,8 1 6,8 9,5 6,4
[Quelle: RKI] Bei grau hinterlegten Zellen wurden für den
betreffenden Tag keine Fälle übermittelt. Das RKI ändert
die Werte nachträglich nicht; d. h. diese Werte sind zu
niedrig.

geaendert.png Die geltende 13. BayIfSMV wird bis einschl. 25.08.21 verlängert. Ab 28.07. gelten unter anderem folgende Änderungen: Präsenzveranstaltungen an Hochschulen bei 7-Tage-Inzidenz unter 100 auch möglich wenn Mindestabstand von 1,5 m nicht zwischen allen Studierenden eingehalten werden kann; FFP2-Maskenpflicht bleibt aber bestehen. Für den Betrieb von reinen Schankwirtschaften (und Bars, Anm. des Verf.) – jetzt erlaubt – gilt: Bedienung muss am Tisch erfolgen, Abgabe und Verzehr am Tresen verboten. In der gesamten Gastronomie gilt für das Personal weiterhin, auch unter freiem Himmel(!), Maskenpflicht, falls es in Kontakt mit Gästen kommt. In Kulturstätten (z. B. Museen) besteht weiterhin FFP2-Maskenpflicht. Alle Änderungen siehe hier.

Mi, 26. Mai, Fürth 5 Tage in Folge unter 50 Neuinfizierte/100.000 in 7 Tagen

Bei einer Einwohnerzahl von 128.496 (Wikipedia) beträgt die Anzahl, um den Wert in 7 Tagen zu unterschreiten 128’496 * 50 / 100’000 = 64,248. Die offiziellen Zahlen für den Grenzwert kommen vom RKI, das Diagramm mit den Fällen für Fürth habe ich mittlerweile gefunden (erreichbar über folgenden Link, leider kein Direkt-Link, ist etwas tricky das Diagramm zu finden). Um dauerhaft unter 50 zu bleiben, muss die tägliche Anzahl von Neuinfizierten unter 18,357 liegen. Die Grenzwerte für (35) und (100) sind 44,9736/6,4248 und 128,496/18,357. Eventuelle Beschräkung (für 100/50/35) werden aber erst aufgehoben, wenn die Werte 5 Tage in Folge unterschritten werden(!),. (Neue Fälle in Spalte „Neue F.” für Fürth Stadt vom Vortag.) Copyright © 2020, Peter Sulzer, Fürth (früher Berlin), Verwendung nur mit schriftlichem Einverständnis.
Hinweis: Corona-Informationen werden z. T. mehrmals pro Tag aktualisiert.

Anzahl neu gemeldete Fälle Fürth Stadt in den letzten 7 Tagen: 8

Corona Diagramm Bayern

Ab sofort hier mein Diagramm mit der Entwicklung der Corona-Infizierten-Zahl in Bayern. Ich hoffe ich schaffe es, dieses Diagramm täglich (gegen Abend) zu aktualisieren:

Diagramm Corona-Infizierte in Bayern nicht gefunden

Diagramm mit den täglichen Fallzahlen siehe hier.

Bemerkungen:

Erfahrungsmäßig erhöhen sich die Werte für die letzten paar Tage aus der LGL-Tabelle noch (teilweise deutlich). Daher sind die Werte für die letzten paar Tage (sind im Diagramm angegeben) aus dem ARD-Videotext des nächsten Tages (Quelle ist das Robert Koch-Institut) entnommen, die sich nur noch geringfügig ändern. Der aktuelle Tag wird weggelassen, da er immer völlig falsch (nahe Null) ist.

Warum habe ich das gemacht? Weil die Diagramme auf der LGL-Seite (Quelle siehe im Diagramm), IMHO sch... sind! Hätte ich solche Diagramme während meines Studiums abgegeben, hätte ich es vermutlich nicht geschafft. Dieses Diagramm zeigt die lineare Entwicklung über die Tage. Bei den Diagrammen auf der LGL-Seite werden die Tage (am Anfang) an denen keine neuen Fälle auftraten einfach weggelassen, was die Kurve IMHO verfälscht.

Die Kurve im Diagramm zeigt für jeden Tag (seit 17. Januar, da gab es noch keinen Fall) die Anzahl der Infizierten in Bayern an. Die roten senkrechten Striche in der Kurve zeigen die Tage an, an denen Fallzahlen gemeldet wurden. Die Fallzahlen wurden der Tabelle "Tabellarische Darstellung der Fälle nach Meldedatum" entnommen (Quelle ist im Diagramm angegeben). ACHTUNG DIESE TABELLE IST AUF DER SEITE VERSTECKT (eingeklappt, man muss die erst aufklappen).

Anscheinend wird die Tabelle vom LGL für dieses Diagramm nicht automatisch erstellt. Das Fomat der Tabelle ändert sich häufig. Manchmal endet sie am aktuellen Tag (mit völlig unbrauchbarem, weil viel zu niedrigem Wert), manchmal am Tag zuvor, was die automatische Auswertung erschwert. Man könnte fast meinen, das LGL will nicht, dass man diese Tabelle automatisch auswertet.

Ansteckungsrisiko in verschiedenen Innenräumen

Guter Artikel von der TU Berlin zur Covid-19 Ansteckung über Aerosolpartikel in verschiedenen Innenräumen:

Covid-19 Ansteckung über Aerosolpartikel
Vergleichende Bewertung von Innenräumen hinsichtlich des situationsbedingten R-Wertes

Ein guter Artikel (Dank an MMaz):
Corona-Epidemie: Die Effekte der Einschnitte


Schon lange geplant, jetzt ist es soweit: Es gibt eine weitere "Offizielle Musikvideos"-Seite :-) Offizielle Musikvideos 2000 für (Musik) Videos nach 2000. Es ist auch ein Clip von einer Sendung mit der Maus dabei, bei der „unser” Astronaut Alexander Gerst erklärt, wie das mit Erde und Sonne ist.

Michaelis-Rundblick Panorama-Fotos mit Rundblick über Fürth vom Turm der Michaeliskirche. Die Fotos können vergrößert und verkleinert werden und wenn sie nicht vollständig dargestellt werden können, kann man den dargestellten Auschnitt mit der Maus verschieben.

Zweite (und zumindest vorerst finale) Version vom Tischrechner-Programm (Grafische Version 2) unter Programmieren mit Python 3 wurde hinzugefügt. Hinzugekommen sind Variablen (z. B. Mwst=1.19 und anschließend z. B. Brutto=147.98*Mwst), das automatische Einfügen des Ergebnisses in die Zwischenablage (mittels Checkbox abschaltbar) und die (optionale) Verwendung des Dezimalkommas statt des Dezimalpunkts.

Auf dieser Seite gibt es (leider) nicht viel, sie wurde vor allem angelegt, damit ich meine (selbst geschriebenen) Anwendungen veröffentlichen kann. Klicken Sie einfach auf die Bilder unten, oder wählen Sie meine Download-Seite.

Yeah! Mein erstes Xamarin-Projekt erfolgreich (im Android-SDK-Emulator) zum Laufen gebracht :-) und mittlerweile auch auf dem Phone :-) Siehe Screenshots unten
Xamarin: Obwohl App installiert ist, ist kein App-Icon sichtbar (Xamarin: App-Icon missing for installed App). Dieses Problem scheint bei mehreren Nutzern und neueren Android-Versionen aufzutreten. Lösung siehe unten.

Gut gefallen aber leider weggefallen ist die Anzeige der verbrachten Zeit in der Navigationsspalte. Das ist mit CSS nicht so einfach zu realisieren, falls es überhaupt geht. Ich werde aber versuchen, das wieder einzubauen. Ist mit CSS unglücklicherweise nicht so einfach wie mit Frames.


Meine Interessen/Steckenpferde sind:

Programmierung (C/C++, C#, Java, Python, Fortran 77)
Sport (Schwimmen, Fitness-Studio, Rennrad fahren)
Gitarre spielen (aber leider ziemlich schlecht)

Letzte Entdeckungen (14.02.2021):

Firefox (wahrscheinlich alle Versionen): Markiert man in Firefox Text, der ein hartes (nicht umbrechendes) Leerzeichen enhält in die Zwischenablage (Clipboard), wird das harte Leerzeichen durch ein normales Leerzeichen ersetzt. Dadurch können dann so unschöne Sachen wie in „nach 10
km rechts abbiegen” entstehen (am Ende einer Zeile). Korrekt ist: „Nach
10 km rechts abbiegen”. Siehe hier und hier.

Chrome (PC/Android) (02.05.2017): Lädt Bilder nicht neu. Die Unterschrift auf dem Selby Bild (Bild ist neu, aber mit gleichem Namen) sieht man unter Chrome erst, wenn man in den Einstellung bei der Chronik die gespeicherten Webseiten und Bilder löscht. Außerdem stellt Chrome auf Android einige Seiten im Python-Kurs nicht richtig dar, und hat auch ein paar andere Fehler. Der über 5 Jahre alte Opera-Browser stellt sie dagegen richtig dar, auch der normale Android Browser.

Oops, Unschönheit im Firefox (Version 49.0.1): Wenn man einstellt, dass man beim Beenden eine Warnung bekommt, wenn mehr als ein Tab geöffnet ist, funktioniert das nicht, wenn man in den Einstellungen unter: Allgemein die Option Wenn Firefox gestartet wird Fenster und Tabs der letzten Sitzung anzeigen auswählt :-(


Mark Selby

Folgende Programme biete ich derzeit an:
(Klicken Sie auf die Bilder, um zur Beschreibung auf der Download-Seite zu kommen.)

Coca
Coca - ein Taschenrechner der ganze mathematische Ausdrücke berechnet, meiner Meinung nach viel besser als der mitgelieferte Windows Taschenrechner.


charConvertFileSelect charConvertFinishedAbaout
charConvertTooltip
charConvert - Zeichen (z. B. Buchstaben) in allen Dateien mit bestimmten Dateitypen (z. B. *.htm, *.html, *.php, ...) in einem Verzeichnis (Dateien in Unterverzeichnissen werden zur Zeit noch nicht berücksichtigt) ersetzen. Mit Hilfe dieses Programms habe ich unter anderem meine Webseite auf CSS umgestellt. Da ich jetzt viel "Inhalt" mittels PHP-Scripts importiere, mussten alle Umlaute/Sonderzeichen in die entsprechenden "HTML-Namen" umgewandelt werden, sonst werden sie nicht richtig dargestellt. Dank charConvert war das in weniger als 5 Minuten erledigt :-)

Foreign reader: This program has (currently) an Englisch (Default) and German user interface (it automatically uses the language of the Windows version, but this can be "overwritten" with an *.ini-file).


addnew
addnew - ein Kommandozeilen-Programm um Verzeichnisse zu synchronisieren


Aliza01
Aliza - eine Portierung von Joseph Weizenbaums ELIZA für Android (Aliza.apk, 204 KBytes). Ich habe aber nur die Android-Oberfläche geschrieben und ansonsten nur die ausgezeichnete Java-Implementation von Charles Hayden minimal geändert, damit sie mit Android kompatibel ist.
Wichtig: Auf der Downloadseite wird die Möglichkeit angeboten, das Programm aus dem Google Playstore zu installieren. Falls Sie in der Lage sind, Android-Installationsdateien (*.apk) runterzuladen und auf Ihrem Android-Gerät zu installieren, laden Sie sich besser die Version von der Webseite herunter und installieren diese. Die Version im Playstore wurde mit der neuen Entwicklungsumgebung (basierend auf "intellij IDEA") erstellt. Die erzeugt leider wesentlich größere Programmdateien (Faktor 10). Die von der Webseite ist wesentlich kleiner (benötigt viel weniger Speicher), weil sie mit der alten Android Entwicklungsumgebung (basierend auf Eclipse) erstellt wurde. Leider kann ich die alte Version nicht in den Playstore hochladen (habe sie nicht mal mehr installiert hier).


Java-Package utils.casts (under development, but fully working tryParse-method as in C# for int) welches Basis-Typen "boxt"/wrapped. Das Wichtigste: Es wird eine Klasse IntBox mit der statischen Methode public static boolean IntBox.tryParse(String numberString, IntBox intBoxObject) zur Verfügung gestellt, die wie die entsprechenden C#-Methoden ein boolean zurückeben (True wenn der übergebene String zu einem int umgewandelt werden konnte) und in einem IntBox-Referenz-Argument der Methode den Wert des umgewandelten Strings. Die Klasse wirft KEINE Exceptions und enthält IMMER, solange sie ein IntBox-Objekt nicht selbst auf "null" setzen, einen GÜLTIGEN int-Wert(!). Die Methode parst den String selbst und ist geringfügig schneller als die statische Java Standard-Methode Integer.parseInt(...).



Screenshots von meinem ersten erfolgreichen (selbst erstellten) Xamarin-Projekt für Android (unter Visual Studio mit C# und Xamarin erstellt). Die Nummer vom Phone Screenshot ist die Meldestelle im Bürgeramt Fürth für Reisepässe, Personalausweise usw. Es ist leider gar nicht so einfach, in Deutschland eine Nummer zu finden, die man mit Buchstaben angeben kann. Sobald eine 1 oder die 0 darin vorkommt, hat man verloren. Sonst hätte ich "Reklame" für den Keimling gemacht. Links Phoneword im Android-Emulator, rechts auf dem Phone:

Screenshot Xamarin in Android Emulator Screenshot Xamarin App auf Phone

Wer das selbst mal testen möchte, ich habe es nicht selbst entwickelt, diese Einführung findet man hier (Part 1: Quickstart). Vorher sollte man aber sein Android SDK aktualisieren. Mit meiner älteren, installierten Version gab es erst mal Fehler. Das tolle ist, dass man (auch auf dem Phone, wenn USB-Debugging eingeschaltet ist) mit dem Debugger von Visual Studio arbeiten kann :-). Ich hatte zunächst vergessen der App die Berechtigung zum Telefonieren zu geben, war mit dem Debugger schnell gefunden.

Wichtiger Hinweis: Bei neueren Android-Versionen (auf meinem alten Gerät mit Android 4.1 ging es auch ohne) müssen Sie in der Manifest-Datei (AndroidManifest.xml) noch eine zusätzliche „Permission” setzen mit:

<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>

Ansonsten wird zwar die App beim bereitstellen installiert (sie erscheint bei den Einstellungen unter „Apps”). Man kann sie auch vom Visual Studio aus starten, aber es wird im App-Drawer kein Icon dafür installiert. D. h. man kann sie auf dem Gerät selbst nicht starten. Sollte die App bereits ohne diese Permission installiert sein (App-Icon fehlt), so müssen Sie die App zunächst auf dem Gerät deinstallieren und danach nochmals über Visual Studio bereitstellen(!).

Wichtiger Hinweis zu Xamarin (es hat mich "Nerven ohne Ende" gekostet): Die genaue Fehlermeldung weiß ich leider nicht mehr. Jedenfalls gab es beim Übersetzen zunächst Fehler. Daraufhin hatte ich das Android SDK "upgedatet" und Phoneworks wurde anstandslos übersetzt. Allerdings lief dann der Designer in Visual Studio nicht mehr (kam eine ganz blöde Fehlermeldung, zu der es jede Menge Beiträge gab, wenn man sie auf Google suchte). Man konnte dann nur das .axml (im Layout Tab im Solution Explorer von Visual Studio) als Source editieren. Bei mir kam jedes mal, wenn ich ein Xamarin-Projekt lud, ein Update-Hinweis von Windows, dass eine neue Version verfügbar sei. Wenn ich aber darauf geklickt habe, wurde kein Installer gestartet.

Ich bin dann ins Setup-Programm von Visual Studio:

Windows-Einstellungen->System->Apps & Features dort den Eintrag "Visual Studio..." (bei mir "Visual Studio Community Edition 2015) anklicken und auf "Ändern" klicken. Bestätigen dass man Änderungen zulassen will und dann im Setup-Programm "Anpassen" wählen. Dort zeigte er mir dann an, dass Xamarin 4.1.x installiert ist aber noch einen Eintrag darüber, dass 4.2.x verfügbar ist. Das habe ich dann angeklickt und installieren lassen (dauert sehr lange). Als ich danach Visual Studio startete, kam aber wieder ein Hinweis, das ein Xamarin Update verfügbar ist. Ich wollte es schon wegklicken, habe dann doch darauf geklickt und diesmal kam ein Update-Dialog, in dem Version 4.3.x angeboten wurde. Habe das dann installiert. Visual Studio gestartet Xamarin-Projekt geladen und wieder kam ein Update-Hinweis (arrggghhh). Noch mal draufgeklickt und es wurde noch ein Zusatz (irgendwas mit Docs und Profiling oder so nachinstalliert). Dann noch mal VS gestartet, Xamarin-Projekt geladen, Main.axml (unter Resources->layout) doppelt angeklickt, und jetzt endlich startete der Designer. Dies nur als Warnung, denn alle Vorschläge (in den Microsoft-Foren, auf StackOverflow, ...) haben nicht geholfen und dieses Problem haben sehr viele Xamarin-Nutzer. Es scheint so zu sein, das sowohl das Android-SDK und Xamarin auf dem aktuellsten Stand sein müssen und außerdem wurde in den Beiträgen erwähnt, dass man auch unbedingt Java 8 (64 Bit) nutzen soll.