📝 Zusammenfassung
openai-gpt-4o-mini
## HAUPTTHEMA
Das Video behandelt die Verwendung von Open Source Libraries in der Softwareentwicklung, um Projekte effizienter und schneller umzusetzen.
## KERNPUNKTE
• **Open Source Libraries** sind vorgefertigte Codepakete, die Problemlösungen anbieten und die Entwicklungszeit erheblich verkürzen.
• **Nummer 1: Open CV** – Eine Bibliothek für Computer Vision, die insbesondere für Anwendungen wie Gesichtserkennung eingesetzt wird.
• **Nummer 2: Media Pipe** – Ermöglicht die Verarbeitung von Medien, z.B. zur Handerkennung und -verfolgung in Echtzeit.
• **Nummer 3: Pygame** – Erlaubt die einfache Entwicklung von 2D- und 3D-Spielen in Python.
• **Nummer 5: Plotly und Heatmapolium** – Bibliotheken zur Datenvisualisierung und interaktiven Darstellung von Daten.
• **Nummer 9: TensorFlow und PyTorch** – Beliebte Frameworks für die Entwicklung von neuronalen Netzwerken und KI-Anwendungen.
• **Nummer 10: Django** – Ein Framework für den Aufbau von Backends für Webseiten, um komplexe Datenverarbeitungen zu erleichtern.
## FAZIT/POSITION
Das Video hebt die Vielseitigkeit und Leistungsfähigkeit von Open Source Libraries hervor, um Programmierern zu helfen, schneller und kreativer Lösungen zu entwickeln. Kevin ermutigt die Zuschauer, sich mit diesen Tools vertraut zu machen und ihre eigenen Projekte umzusetzen.
Hattest du schon mal so eine richtig geile Idee für ein Softwarepjekt und dachtest dir dann so, das dauert locker 10 Jahre? völlig normal und deswegen möchte ich dir heute einmal zeigen, was unsere Geheimwaffe dagegen ist und zwar Open Source Libraries. Open Source Libraries sind Codepakete, die du nutzen kannst, um deinen Code von 0 auf 90% vielleicht schon zu bringen und generell um einfach viel viel schneller zu sein, weil manche Probleme, die sind halt schon gelöst worden und deswegen kann man sich diesen Code dafür auch einfach ziehen und das macht uns natürlich deutlich schneller in dem, was wir tun wollen und so dauert es nicht 10 Jahre, sondern vielleicht nur noch ein paar Wochen. Und deswegen will ich dir heute einmal meine zehn Lieblingslibraries zeigen, die meines erchtens nach auf jeden Fall extrem viel auf dem Kasten haben und dich wahrscheinlich auch an der ein oder anderen Stelle etwas überraschen werden. Falls du mich noch nicht kennst, ich bin Kevin, arbeite als Mentor bei der Developerakademie und helfe dort Menschen ihren Quereinstieg in die IT zu finden. Gleich zum ersten etwas mit KI. Klingt spannend, ist auch so und zwar Open CV. CV steht hier für Computer Vision. Bedeutet, wir befassen uns mehr so mit den Bildern, aber das heißt ja nicht, dass es unspannend ist, denn eine Sache, die auf jeden Fall mega kracht, ist immer wieder und hier sieht man das Grundbild, Gesichtserkennung. Gesichtserkennung ist ein ziemlich spannendes Thema, würde ich sagen. Und von daher lass uns das direkt mal verarbeiten mit Open CV. Das funktioniert wie folgt. Der Code ist so aufgebaut, dass wir das natürlich importieren müssen. Dann laden wir diese Bilder natürlich auch rein, verarbeiten das Ganze und jetzt kommen wir zu dem spannenden Teil. Wir können dem Code jetzt dadurch sagen: "Hey, nimm dieses Modell von Gesichtern." Bedeutet, ganz viele Gesichter kann ich anlernen und dann weiß mein Code natürlich: "Hey, das so sieht ein Gesicht aus, ne? Das werde ich finden." Und ich würde sagen, das schauen wir uns nämlich einmal an gleich. Dann am Ende natürlich noch einmal das Ausführen selber und das hier ist sogar schon nur noch zum Zeichnen dessen, was wir gleich sehen werden. Und zwar führe ich das jetzt einmal aus. Der Code weiß Bescheid. Gesichter wurden gefunden und zwar direkt gleich alle. Natürlich abgeschnittenes Gesicht vielleicht nicht, aber der Rest mit sehr, sehr hoher Wahrscheinlichkeit sogar wurde relativ klar erkannt. Und das egal ob eine Frisur oder keine Frisur heller oder dunkler im Hautton ist völlig egal. Jedes Gesicht wurde erkannt und das mit so wenig Code ist sehr sehr beeindruckend würde ich sagen. Nummer 2, da bin ich schon sehr scharf drauf, denn tatsächlich habe ich beim Rumtesten damit auch ein unglaublich spannendes Projekt gemacht und zwar ist es Media Pipe. Media Pipe ist dazu da, dass du bzw. kurz erklärt eine Pipe ist in der Programmierung etwas, wo wir Daten durchschicken und dann diese Daten verarbeiten. Übersetzt ist es Rohr, also ne, durch ein Rohr fließt etwas durch. Ist soweit klar. Aber Media fließt dadurch und deswegen wird Media Pipe auch so genannt, denn wir verarbeiten damit Medien. Bedeutet Open CV kommt damit rein, wir verarbeiten Bilder, wir können mit Videos arbeiten und das ist super krass. Und was wir damit machen, zeige ich dir jetzt, denn man sieht mich hier. Moin. Man sieht sogar beide Hände. Man sieht, dass er die Hände erkennt und ich mache jetzt mal nur eine Hand und zeig das vorher noch einmal ganz kurz. Hier unten ist ein kleiner Counter, den einmal verfolgen. Jetzt wenn ich den Daumen hoch mache, geht der Counter weiter. Das heißt, der checkt alle keine Ahnung 200 Millisekunden, ob mein Daumen oben ist und setzt den Counter einen höher. Wenn ich ih runter mache, nicht. Und das ist ein relativ einfaches Prinzip, ne? Also, wenn ich das jetzt mal beiseite ziehe und wir gucken uns den Code mal an, natürlich brauchen wir Open CV, wir brauchen Media Pipe selbst, ist klar. Und dann können wir da einstellen. Wir wollen natürlich die Hand, wir wollen die Hand zeichnen und so weiter und so fort. Wir wollen das Video Capturen, das ist alles immer nur so ein Einzeiler und danach ist natürlich die Verarbeitung, ne, dass man das öfter macht und so weiter. Hier unten wird noch einmal angezeigt, ne? Dieser Counter natürlich muss hochgezählt werden und ausgegeben werden. Dann muss das Ganze nur noch angezeigt werden und schließbar sein, ne? Das heißt, ich drücke auf Q, dann ist das Ganze geschlossen und so funktioniert das Ganze. Das heißt, man sieht, es ist unglaublich wenig Code. H und das war's schon. Mehr Code brauchst du nicht, um so etwas umzusetzen. Und ich würde sagen, mehr als das geht ja schon gar nicht mit so wenig Code. Das zeigt einfach, wie mächtig Libraries sind. Und deswegen gleich zum nächsten. Mein Favorit ist die Nummer 3 und zwar P Game. P Game, da Name ist Programm. Als Oller Gamer ist es natürlich auch schön, dass wir mit einer Python Library relativ einfach Spiele produzieren können. Natürlich jetzt keine TripleA Spiele, ne, das neue Assassin's Creed oder whatever. Natürlich erstmal jetzt kleiner gedacht ein 2D Spiel, sowas wie Mario in die Richtung oder sogar auch mal in die 3D Richtung gedacht mit sowas ähnliches wie Minecraft. All das ist möglich mit Python und das möchte ich dir jetzt einmal ganz kurz in einem sehr sehr kleinen Rahmen zeigen. Bedeutet, wenn wir uns den Code, den ich dafür geschrieben habe, einmal angucken, wir importieren selbstverständlich P Game, das ist, denke ich, soweit klar. Dann initialisieren wir das Ganze ein bisschen. Wir haben hier noch mal so ein paar Elemente auf der Map natürlich hinzugefügt. Bedeutet einen Ball, einen Paddle, einen Player, all das muss drin sein. Die Namen verraten jetzt schon so ein bisschen, was es wird. Und äh dann sollte natürlich auch hier, da sieht man es ganz deutlich, etwas passieren, wenn ich irgendwo drauf drücke, ne? Also geten key pressed, dann passiert auch etwas. Und nach den paar Lines hier wird dann das Ganze gezeichnet und ich kann natürlich auch irgendwie muss es ja beenden können und so weiter. Das muss hinzugefügt werden. Gut, jetzt wollen wir das einfach mal starten und sehen, was wir gezaubert haben. In den paar Lines habe ich Hong gemacht. Eins der geilsten Games ever. Ja, nicht wirklich, weiß ich selber, aber aber len, Pong kann man tatsächlich auch noch erweitern und ich habe da was richtig geiles draus gemacht und deswegen musst du auf jeden Fall bis zum Ende dran bleiben, denn wie gesagt, ich habe das noch mal genutzt. Vielleicht hast du auch schon eine Idee, aber das werde ich dir erst am Ende verraten. An dieser Stelle möchte ich jetzt auch noch mal die super wichtigen Background Tänzer darstellen und zwar Mudplot Lip, Numpie, wir haben auch noch Panda, Saipi, Scientific Python bedeutet, ne? Wissenschaftliches Python. All das sind sehr, sehr wichtige auch meistens im Hintergrund arbeitenden Libraries. Nampai ist z.B. um riesige Matrizen, also riesige Zahlenmengen auch zu verarbeiten und bietet sehr viel mathematischen Hintergrund. All das klingt jetzt vielleicht im ersten Moment ja ist voll unspannend, stimmt aber gar nicht. Tatsächlich ist das auch sehr oft etwas, was man z.B. in Verbindung mit Excel benutzen kann. Video hier auch drunter, falls dich das genauso interessiert und all das ist damit tatsächlich möglich oder die Darstellung von Diagrammen und so weiter. All das ist super wichtig und ebenfalls muss das hier genannt werden, damit du auch, falls du mal ein bisschen was in diese Richtung machen möchtest, Statistik, Auswertung, Mathematik dergleichen, ist das etwas, was ich als Physiker natürlich jetzt hier an der Stelle auch einmal nennen muss. Let's go. Nummer 5 ist Plotly. Plotly, der Name sagte schon, Plotten ist Darstellung von z.B. Daten und so weiter. Das Ganze möchte man natürlich vielleicht auch in 3D machen, so dass du dein Game noch deutlich verbesserst, wenn du z.B. deinem Chef die neuesten Daten präsentieren möchtest. Das heißt, wir schauen rein. Ich habe natürlich damit auch schon ein kleines Programm vorgebaut und aufbauend aus dem, was ich dir vorhin erzählt habe, ne? Pandas, Verarbeitung von Bildern, Numpai, Verarbeitung von großen Datenmengen und dergleichen ist hier auch wieder drin zu finden. Genauso wie SciPI, das sind immer diese Grundlagenpakete. Von daher auch wichtig, dies einmal mit zu betrachten. Das heißt, wir haben hier mit Plotly, wir generieren ein paar Daten dazu, wir generieren ein Data Frame dazu, also die das ganze Datengebilde und natürlich eine Figur, die am Ende damit dargestellt werden soll. Und ganz am Ende natürlich wollen wir den auch einmal zeigen. Das heißt, ich werde das jetzt einmal ausführen und auf einem anderen Bildschirm öffnet sich das schon. Und wir sehen jetzt hier, wie meiner Meinung nach sehr sehr cool einmal dargestellt, ein Plot. Bedeutet, egal welche Daten du hast, du kannst sie mit Plotly auf jeden Fall extrem cool darstellen und tatsächlich genauso auch präsentieren. Das Ganze ist sogar sehr interaktiv. bedeutet, ne, das sind jetzt hier nur Dami Daten, aber stell dir vor, du hast keine Ahnung, eine riesige Auswertung zu machen und dann kannst du das Ganze hier sogar genauso nutzen und das finde ich sehr sehr stark. So, kommen wir zu Punkt Nummer 6. Wenn du denkst, ich bin durch mit Darstellungen, dann schief gewickelt, aber ich habe etwas cooles für dich, um dich natürlich jetzt nicht zu enttäuschen mit dieser Thematik und zwar Heatmapolium. Und das heißt, wir schauen direkt mal rein, damit das Ganze nicht zu langweilig wird. Ich habe Folium dann natürlich rausgezogen. Ich habe mir Heatmap hier gezogen. Random habe ich mir auch importiert. Liegt daran, dass ich ein paar random Daten generieren wollte und benutze dafür natürlich eine Map. Ich generiere auf dieser Map einfach mal irgendwelche Daten und lass mir das Ganze dann ausgeben einfach als HTML. Das heißt, auch dies kannst du einfach hochladen und dementsprechend benutzen, wenn wir das einmal durchführen. Und diese Heatmap werde ich jetzt einfach mal ganz kurz mit dem Live Server von VS Code öffnen, dass wir uns das hier anschauen können. Und es sind natürlich jetzt ein bisschen random, also zufällig verteilte Punkte, aber jetzt stell dir vor, du hast klare Daten von z.B. in Deutschland geschehenen neuen Webseiten, was auch immer, irgendwas in dieser Richtung und du kannst das hier tatsächlich so darstellen. Ich kann auch rauszoomen, man sieht, dass dann irgendwann natürlich nur ein Punkt auf Deutschland ist, weil sich das so ein bisschen zusammensammelt, aber mit einer Heatmap ist sehr viel möglich und auch das ist eine Darstellungsform, die dich auf jeden Fall deinen z.B. Präsentationen oder dergleichen auf jeden Fall noch mal ins nächste Level bringen wird. Das nächste, was ich dir zeigen möchte, ist Pillow. Pillow ist sehr, sehr stark. Damit kannst du unglaublich viele Sachen machen und vor allem ist es für die Bildbearbeitung gedacht. Pillow ist dafür da, dass du aus einem Bild tatsächlich die einzelnen Pixel ziehen kannst und mit diesen auch arbeiten kannst. Was kann man damit machen? Ich zeige es dir, denn ich habe tatsächlich eine Idee gehabt, wie man Geheimbotschaften in Bildern verstecken kann. Und deswegen gehen wir direkt mal rein, denn anhand der Bilder lässt es sich leichter erklären. Man sieht, der Code selber ist relativ lang und auch ein bisschen komplex. Deswegen habe ich viele Kommentare dazu gemacht. Ähm, wenn wir uns das genauer angucken, ist es nämlich so, dass wir ganz oben auch Numpe haben. Bedeutet, dass wir uns hier natürlich die Möglichkeit geben, dieses Bild auch in Zahlen darzustellen. Denn eine Sache muss klar sein, nicht nur bestehen die Bilder aus Pixeln, sondern jeder Pixel besteht aus einem RGB-Wert, also einem Rot, gelb blauwert. Diese drei Farben ergeben zusammen die Farbe des Pixels. Der hat ja nur eine einzige Farbe. Und wenn ich die Werte dessen nehme, zusammenrechne und sage, dann hat das ganze einen keine Ahnung, hier z.B. sieht man das ganz gut. 255 255 255 ist das größte, was es annehmen kann. Ähm, das Ganze wäre zusammengerechnet eine ungerade Zahl und diese Idee dahinter, die nutze ich jetzt. Bedeutet, ich werde mal ganz kurz diesen Code ausführen lassen und wir schauen uns einmal ganz kurz an, worum es geht. Das Content Bild selber, bisschen selbstverliebt an Bild von mir, als ich noch Haare hatte, ist dieses. Dann haben wir einen Precessed Image. Sieht genau gleich aus, aber ich habe jeden Pixel genommen, sodass in dem RGB Wert überall eine gerade Zahl drin steht. war das z.B. 24300, dann habe ich da 24200 draus gemacht. Wenn eine gerade Zahl da drin steht, ist dieser Pixel für uns uninteressant. Diese Änderung sieht man aber nicht und das ist der große Vorteil. Bedeutet, wenn ich jetzt z.B. das Encoded Image benutze, da ist es schon drinne. TXT Image. Das meine ich. Wenn ich jetzt z.B. einen Text drüber lege und jetzt noch mal über die ganzen Pixel drüber gehe und sage, da wo der Text drin ist, da mach aus diesem RGB Wert wieder eine ungerade Zahl. Heißt, dass wenn ich das tue, es ist wieder nicht sichtbar, ne? Wenn wir in das Precessed Image reingehen, da sieht man das oder in das Encoded Image besser noch. Das ist das, wo dieser Text jetzt drin steckt, ne? Jeder einzelne Pixel hat eine gerade Zahl, außer dort, wo hallo stand. Da habe ich eine ungerade Zahl draus gemacht aus dem Pixelwert. Und wenn wir das dann wieder visualisieren wollen, das geht mit dem Code dann genauso, dann sieht das so aus. Eine kleine Ungenauigkeit hat es natürlich, aber man kann das Hallo ziemlich deutlich lesen und so kannst du mit deinen Kollegen oder Kolleginnen dir auf jeden Fall auch geheime Botschaften hin und her schicken, ohne dass das jemals einer erkennen wird. So, ich habe noch eine Sache, die schon sehr stark und zwar TK Inter. Wofür ist TK Inter gut? Und zwar um Guis zu bauen. Was ist ein GUI? Gute Frage. Das ist ein Graphical User Interface. Das bedeutet, dass wir grafisch etwas darstellen können. Das habe ich heute schon 1000 mal gehört, ist richtig, aber es geht jetzt darum, das was du überall schon kennst, ne, diese Fenster, du öffnest ein Programm, da sind dann Buttons drin und so weiter und so fort. Du kannst damit interagieren und das ist der Trick an der Sache, weil das, was wir gerade geschrieben haben, indem wir Bilder mit Nachrichten versehen, ist es irgendwie ein bisschen uncool, wenn du das einem Kollegen schickst, der noch nie irgendwas mit Python gemacht hat und deswegen braucht der ein Gui und deswegen schauen wir uns das jetzt einmal an. bedeutet, ich habe das Ganze noch mal erweitert mit TK Inter. Wir führen das einmal aus und man sieht mit TK Inter kann ich so ein Fenster generieren, kann ich Inputfelder machen, ne? Ich gehe jetzt mal hier drauf auf das Inputfeld und lade jetzt hier einfach mal. Wir können das auch vielleicht mal löschen. Sieht man, das wird noch kreiert. Und wir können jetzt dieses Bild hier auswählen und ich kann dann Nachrichten drin verstecken, wie hallo Welt und sage Nachricht drin versteckt. Man sieht man, es hat hier unten gearbeitet, ne? Der Code, den wir vorher hatten, bleibt der gleiche und ich kann auch die Nachricht hier drinne sichtbar machen und das ist stark. Das heißt, ich kann mit ein paar Knopfdrücken Code ausführen. Ich kann das einem Menschen zur Verfügung stellen, der damit nicht umgehen kann, der einen Code nicht ausführen kann, indem man dann, ich sag mal, da drin auch noch was ändert, ne? Wir mussten ja eben z.B. das Bild da einfach eintragen. Das hätte dann jemand anders vielleicht nicht so einfach hingekriegt und so kannst du natürlich auch dir selber das Leben damit deutlich erleichtern. Das ist jetzt noch ein relativ einfaches. Stell dir vor, du hast damit eine riesige, ich sag mal, ein riesiges Interface gebraucht, was tausende Funktionen hat und das geht auch mit TK Enter. Von daher sehr, sehr starke Library. Nummer 9 ist extrem und zwar sind das zwei Frameworks. P Torch und Tensorflow. Beide sind in der Lage, dich zu bewegen, neuronale Netzwerke zu bauen, anzulernen und auch zu implementieren. Das heißt, wir reden hier von KI und zwar ohne, dass du dafür studiert haben musst. Du kannst da einfach Modelle runterladen von Google, die nutzen und das Ganze tatsächlich implementieren und das macht diese beiden Frameworks so unglaublich mächtig. Als kleines Beispiel habe ich natürlich etwas für dich mitgebracht, so ein Alltime Classic. Das heißt, ich habe ein Content Bild, ein Bild von, na wieder selbstverliebt mir mit Haaren und ein Bild, das den Style definiert. So möchte ich in diesem Nudelstyle das Bild links haben und das ist dann hier rechts über Tensorflow generiert worden. Das heißt, ich habe angelernt, wie man über gewisse Mittel, ich sage mal, einen Style implementiert, wie man diese Kunst nutzt. Und ich habe es jetzt ein paar mal gesehen und fand es halt schon sehr sehr witzig, dass man etwas mit Nudeln darstellen kann. Aber viel wichtiger in der ganzen Sache ist, würde ich sagen, der Code dazu, denn der ist relativ kurz, wenn man sich das anguckt. Ich habe natürlich ein paar Sachen runtergeladen. Tensorflow nutze ich hier in diesem Beispiel. Und dann habe ich so ich lade die Bilder natürlich, die brauche ich, ne? Ich lade das Modell. Bedeutet das Wissen, die ganzen Geschichten, die wir dazu benötigen, das Wissen, wie man das umwandelt. kann ich einfach runterladen von der Google API und danach klassifizieren wir das ganze, setzen den Style drauf und das hier unten ist tatsächlich nur noch Anzeige. Diese drei Bilder, die du nebeneinander gesehen hast, das hier ist nur noch ein Aufrufen dessen und das war's. Mehr ist das nicht. Das sind diese paar Zeilen da oben. Und jetzt stell dir vor, du möchtest damit noch viel größere Sachen machen. Du kannst damit viel größere Sachen machen, auch mit nicht ganz so viel Code, wie man es am Anfang vielleicht vermuten mag. und das macht diese beiden Frameworks so unglaublich mächtig. Meine letzte Library für dich ist Djengo. Wozu braucht man DJo? Ich selber natürlich als er Webentwickler muss da auch mal ein bisschen in die Bretche schlagen, denn wenn du ein Backend bauen möchtest, also wenn du eine Website siehst und da kommen Daten irgendwie aus einem anderen Server zu deiner Seite, dann liegt das meistens daran, dass wir ein Backend implementiert haben. Und das kann sehr sehr groß werden. Denkt z.B. Spiel mal an die ganzen großen Firmen jetzt einfach mal so Facebook, YouTube und so weiter. All die haben natürlich im Hintergrund eine Datenverarbeitung sitzen und das kann super kompliziert werden. Und da kommt Jengo ins Spiel. Jengo erleichtert dir das Bauen solcher Backends um ein Vielfaches. Denn eins ist ganz klar, Jengo bietet dir als Framework nicht nur so ein bisschen Codeilen, die dir, ich sag mal, ein paar Funktionalitäten bieten. Nein, es bietet dir eine komplette Struktur und das ist super praktisch. Das heißt, du hast direkt eine Projektstruktur, an der du dich lang hangeln kannst und selbst als Anfänger schon sehr, sehr einfach relativ schnell sehr, sehr coole Backends bauen kannst. Wenn dich das natürlich interessiert, ein Backend mit Djengo zu bauen, dann muss ich an der Stelle natürlich sagen, genau das tun wir bei uns in der Developer Akademie. Also melde dich hier auf jeden Fall gerne mal für ein kostenfreies Beratungsgespräch an und wir können schauen, ob wir das zusammen auf jeden Fall auf die Beine kriegen. Gut, dass du dran geblieben bist, denn ich habe, so wie mein Kollege sagen würde, noch das kleine Schman am Ende für dich, denn wir hatten Pong gemacht und es war jetzt ein bisschen lah, gebe ich zu. Aber wenn man Pong jetzt auch noch erweitert mit dem Handtracking, was wir schon gelernt haben, ist das schon wieder eine völlig andere Hausnummer. So, ich muss mich kurz konzentrieren. Sehr, sehr gut. Es funktioniert einwandfrei. Man sieht es hier. Ich kann dieses Padle genauso einfach mit meiner Hand steuern und das ist in wenigen Zeilen Code entstanden. Und jetzt stell dir vor, du hast nicht wie ich in der vor zappelt die ganze Zeit wie ich in der Vorbereitung ein zwe Stunden, sondern du hast Wochen, vielleicht sogar ein paar mehr Wochen, Monate, was dann alles möglich ist mit Tracking, mit Py Game, mit all dem ganzen Kram. Das ist extrem brutal. Und wenn du jetzt nicht genauso begeistert bist für Python Libraries wie ich, dann weiß ich auch nicht, denn das hier ist meines Erchts nach sehr sehr cool. So, ich würde sagen, das war schon krass. Also, viel ist möglich mit Python. Ich denke, du bist da jetzt auf jeden Fall auf dem neuesten Stand. Wenn du natürlich eine andere Library noch einmal sehen möchtest, die wir dir einmal vorstellen können oder du eine davon im Deep sehen möchtest, was damit alles möglich ist, dann schreib es mir gerne einmal runter. Sag mir auch gerne, was sind deine besten Libraries, die du vielleicht sogar schon verwendet hast. Ich bin da auf jeden Fall immer neugierig. Das ist aber tausende davon gibt, ist es natürlich auch so, dass ich nicht jeder einzelne kenne.