• Wettervorhersagen mit Daten des DWD – Teil [1/4]: Übersicht

    Wettervorhersagen mit Daten des DWD – Teil [1/4]: Übersicht

    Das Problem mit kommerziellen Wetter-APIs Wetter-Daten braucht man überraschend häufig. Irgendein Projekt, eine kleine App, ein Skript, das einem morgens die Jacken-Entscheidung abnimmt. Und fast immer landet man früher oder später bei derselben Frage: Welche API nutze ich? Die Antwort, die man überall findet, ist OpenWeatherMap. Manchmal auch Weather.com, AccuWeather oder den eingestellten DarkSky-Dienst von…

  • Wettervorhersagen mit Daten des DWD – Teil [2/4]: Die richtige Wetterstation finden

    Wettervorhersagen mit Daten des DWD – Teil [2/4]: Die richtige Wetterstation finden

    Wer mit MOSMIX-Daten arbeiten will, steht vor einer grundlegenden Frage: Welche Station ist die nächste zu einem gegebenen Ort? Wenn ein Nutzer „München“ eingibt, welche der 2.698 MOSMIX-Stationen liefert die treffendste Vorhersage? Das Problem ist, dass das DWD keinen maschinenlesbaren Katalog aller Stationen mit Koordinaten bereitstellt, um die richtige Wetterstation finden. Man muss sich die…

  • Wettervorhersagen mit Daten des DWD – Teil [3/4]: MOSMIX verstehen

    Wettervorhersagen mit Daten des DWD – Teil [3/4]: MOSMIX verstehen

    Wer mit DWD-Daten arbeiten will, muss sich mit KMZ (Keyhole Markup Language Zipped)-Dateien auseinandersetzen. Eine Binärdatei, die eine XML-Datei mit Hunderten von Zeitreihen enthält, in einem Schema, das man aus keiner npm-Paketbeschreibung errät. Dieser Artikel erklärt das MOSMIX-Format, warum es so aufgebaut ist, was es enthält und welche Fähigkeiten ein Programm braucht, das darauf zugreifen…

  • Wettervorhersagen mit Daten des DWD – Teil [4/4]: Die ganze Applikation

    Wettervorhersagen mit Daten des DWD – Teil [4/4]: Die ganze Applikation

    Nach der ganzen Theorie werden in diesem Artikel noch einmal alle Schritte zusammengefasst, damit man einen besseren Überblick über die notwendigen Elemente hat. Um den Code übersichtlich zu halten, wurden Eingabeüberprüfung, große Teile der Fehlerbehandlung und das Caching ausgelassen. Am Ende das Beitrags kann man zum einen ein Rumpfprogramm herunterladen, dass nur die westenlichen Elemente…

  • feedseeker – Ein robuster Feed-Discovery-Mechanismus für Node.js

    feedseeker – Ein robuster Feed-Discovery-Mechanismus für Node.js

    Die Identifizierung von Syndication-Feeds (RSS, Atom, JSON) stellt Entwickler oft vor Herausforderungen. Trotz Standards wie dem <link rel=“alternate“>-Tag ist die Implementierung im Web inkonsistent. Das Problem: Inkonsistente Metadaten Viele Webseiten verzichten auf korrekte Header-Deklarationen oder nutzen proprietäre Pfade für ihre Feeds. Ein einfacher GET-Request auf /rss reicht in der Produktion nicht aus. feedseeker löst dies…

  • Wegen Emil seine unanständ’ge Lust

    Wegen Emil seine unanständ’ge Lust

    Dieses Lied gegen den Schönheitswahn ist fast 100 Jahre alt. Respekt!

  • Wochenend-Projekt – RSS-Bridge für Tom’s Touché

    Wochenend-Projekt – RSS-Bridge für Tom’s Touché

    Dieses kleine Projekt entstand aus zwei Überlegungen: Leider bietet die taz keinen dedizierten Feed für den Touché an. Zum Glück gibt es aber eine Software namens RSS-Bridge, die Tools bereitstellt, um eine Website zu scrapen und einen RSS-Feed zu erstellen.

  • NodeJS: async.queue zeigt standardmäßig keine Fehlermeldungen an

    NodeJS: async.queue zeigt standardmäßig keine Fehlermeldungen an

    Derzeit erstelle ich einen benutzerdefinierten Web-Crawler und die einfachste Methode zur Implementierung von parallelen Funktionen ist die Verwendung des npm-Pakets „async“. Während des Programmierens stieß ich auf das Problem, dass das Programm nicht richtig funktionierte, aber das Terminal keine Fehler anzeigte. Also habe ich die Warteschlangenfunktion außerhalb von async getestet und sie hat wie erwartet…

  • Liste der Papers der Ig-Nobelpreis-Gewinner 2024

    Liste der Papers der Ig-Nobelpreis-Gewinner 2024

    Frieden An B.F. Skinner für Experimente zur Erprobung der Möglichkeit, lebende Tauben in Raketen unterzubringen, um die Flugbahnen der Raketen zu lenken Paper Botanik An Jacob White und Felipe Yamashita, die nachgewiesen haben, dass für den Nachweis, dass einige echte Pflanzen die Formen benachbarter künstlicher Plastikpflanzen nachahmen. Paper Anatomie An Marjolaine Willems, Quentin Hennoq, Sara…

  • Javascript – Fließkommazahlen runden

    Javascript – Fließkommazahlen runden

    In Javascripts Math-Bibliothek gibt es sechs unterschiedliche Funktionen, um Fließkommazahlen zu runden: Was ist der Unterschied zwischen diesen Funktionen? abs() abs() ist der Absolutwert einer Zahl. Mathematisch gesprochen ist es der Abstand einer Zahl zu Null. Da ein Abstand nicht negativ sein kann, ist der Absolutwert immer der positive Wert einer Zahl: Math.abs(7.89012) = 7.89012Math.abs(-7.89012)…