Transkript: Live von der DjangoCon Europe 2025 in Dublin - Tag 3
Vollständiges Transkript der Episode. Zeitstempel beziehen sich auf die Audiowiedergabe.
Ja, hallo höher, liebe Hörerinnen und Hörer.
Willkommen beim Python Podcast.
Episode 65.
Heute den dritten Tag von der Djungocon Europe aus Dublin.
Hi Johan!
Ja, herzlich willkommen Dominik, herzlich willkommen Johannes.
Hallo zusammen mal wieder dabei und Sebastian.
Hallo zusammen.
Ja, wir skippen wieder die News, ihr kennt das ja schon aus den letzten zwei Tagen und erzählen einfach was von der Dungeon.
Wir müssen noch mit gestern Abend weitermachen.
Ja.
Und die Lightning Talks und heute.
Genau, wann haben wir denn gestern aufgehört?
Mittagstick.
Also genau.
Die Parking-Tickets hatten wir noch.
Ich glaube, wir haben einen Talk von Sebastian verpasst.
Ja, das war am ersten Tag, genau.
Aber den müssen wir auf jeden Fall nachholen.
Konnten wir gar nichts zu sagen.
Ja, das ist ein kleines bisschen.
Ja, dann fangen wir doch vielleicht einfach da mit an.
So, Brief Summary.
Klar, also ich kann es versuchen, genau.
Also war ja auch nach dem Mittag, und das dazu zu sagen.
Also im Wesentlichen, genau, das neue Django 5.2 Long-Term Release ist rausgekommen.
Und ich habe das zum Anlass genommen, so ein bisschen zurückzugucken durch den Changelog, vor allem von 5.2, aber so ein bisschen alles zwischen 4.2 und 5.2, weil viele Leute upgraden ja von Long-Term-Release zu Long-Term-Release.
Was für vielleicht kleine Features sind, die den Code besser machen können.
Also nicht
die großen wichtigen, sondern das, was.
Also ich würde sagen, die sind auch wichtig, aber nicht die, die, sag ich mal, derjenige, der den Release verantwortet, als Major-Features gepickt hat, sondern da gibt es ja dann eine Riesenliste Admin, Models und so weiter.
Wo durchaus auch sehr wichtige Verbesserungen sind, aber halt nicht die super Highlights.
Genau, davon habe ich ein paar rausgesucht und halt gezeigt, auch so an unseren, also sind teilweise wirklich aus echten Kundenprojekten auch gewesen.
So vorher 20 Lines of Code, man hat ein bisschen das Gefühl, man kämpft gegen den Admin zum Beispiel.
Jetzt ist es irgendwie die eine Property, die man setzen kann.
Weniger Code.
Schön.
Genau, ja.
Was ist deine Lieblingsänderung?
Haha, das ist die Frage, habe ich auch bekommen.
Das ist schwierig, weil irgendwie, ich habe die ja auch rausgesucht und so.
Also eine wirklich ist das, ähm, und jetzt habe ich es nicht vor mir, ich glaube, es ist schon aus 5.1, ist den Query-Set-Template-Tag, was halt erlaubt, ich weiß, ich kann es ja kurz zusammenschreiben, halt sozusagen.
Also man hat halt Query-Set-Parameter, also Fragezeichen oder halt und, ja, so, je nachdem.
Man musste die früher halt immer selber zusammenbasteln in den Template und hat so String-Manipulationen, viele Ifs, viel komplizierter, insbesondere, genau.
Bei Pagination, man hat schon und dann, man hat jetzt schon, weiß ich nicht, Filter-Query-Sets und dann hat man noch Page equals 2 oder so.
Das bedeutet, man möchte jetzt halt irgendwie alle behalten, aber für den vorher nach vorher oder eine weiterseite halt die 2 durch eine 1 oder eine 3 ersetzen.
Da brauchte man dann immer so, wir hatten so HERPA-Funktionen, so 10 Zeilen-Code.
Das hat schon mal geschrieben.
Genau, hat jeder schon mal geschrieben.
Jetzt kann man halt das komplett löschen, einfach im Template sagen, Query Set Page equals to Previous Page oder halt dann 1 oder so.
Fertig, ja.
Wenn es klingt angenehm,
ist es, genau, also ja, das war eigentlich schon ein ganz gutes Beispiel.
Das waren genauso meine Beispiel.
Ich habe mir vorher gezeigt, so vorher 20 Zeilen Code, jetzt nichts mehr.
Und dann halt auch mal, muss man nicht testen, kann keine Fehler mehr machen.
Genau, cool.
Coole Sache, voll gut.
Ja.
Also, wenn ich eins aussuchen müsste, glaube ich das, ja.
Ja, das ist ja so ein bisschen die Sache mit Django, oder?
Die großen Dinge erfährt man ja schon irgendwie so, das, was sich so tut.
Aber die kleinen Sachen, die ja auch immer weiter besser werden,
muss das schon ein bisschen unterlesen und das eigentlich auch ausprobieren und dann auch machen, damit man also dann noch einen
Blogpost drüber schreiben und einen Podcast aufnimmt.
Ja, okay.
Ja, oder, also, also ja auch, also Django ist halt sehr nett, weil, also jetzt in dem Fall nicht, aber häufig die alten Sachen werden halt nicht deprecated.
Also und wenn, schreien alle so ungefähr, grob gesagt, oder sehr, sehr langsam.
Aber das heißt halt, niemand ist, also es wird, man wird nicht gepusht in die Richtung, die neuen, besseren Sachen zu benutzen.
Und deswegen gehen die, glaube ich, manchmal so ein bisschen.
Sind solche Sachen
auch bei Django Upgrade drin?
Wahrscheinlich nicht, weil das nicht einfach migrierbar ist durch eine Funktion.
Also das war, also weiß ich nicht, ehrlich gesagt jetzt.
Muss ja irgendwie erkennen, es gibt watch.
Also das nicht, glaube ich.
Also das wäre schon sehr faszinierend, aber ja.
Okay, cool.
Wollen wir einfach die Liste uns durchhangeln und so ein bisschen gucken, was wir machen.
Ja, ich weiß nicht.
Wenn wir da wollen wir jeden genau besprechen, ist ja ganz schön viel.
Ja, vielleicht nur die uns angefangen sind und in Erinnerung geblieben sind, weil wir haben, wenn wir jetzt insbesondere habt ihr eben eventuell, ihr habt besonders viele Hunger heute.
Richtig.
Jetzt ist die
Konferenz ist vorbei, wir müssen jetzt essen gehen und Party machen.
Genau.
Das machen wir auch, davon wollten wir auch nicht mehr berichten.
Wir machen auch keine.
Aber wir haben gestern beim Januar.
January war da jemand Break.
Ja, ja, ich war da drin.
Das war tatsächlich ganz unterhaltsam, aber ich weiß jetzt nicht, ob ich da irgendwie.
Das von heute?
Nee, das war gestern.
Also Paskis war gestern viel.
Heute war auch ein bisschen.
Ach der, ja, doch.
Ja, okay.
Genau.
Ja, wir haben das ein paar andere Sachen verpasst, glaube ich, vorher.
Ja, das genau, wenn ihr da drin wart, ich war, glaube ich, sonst gar nichts, weil.
Dynamic Models without dynamic models, war.
Ja, da war ich drin.
Das war ja eine sehr verrückte Idee.
Warst du denn nicht auch da damit?
Nein.
Der hat im Wesentlichen gesagt, also auf seiner Seite ist es so, dass die Benutzer eigene Modelle anlegen können.
Also eigene Schemas für Modelle und dann auch eigene Instanzen von den Modellen.
Das heißt, er hat quasi so ein bisschen den ORM nachgebaut.
JSON-Tube-Model.
Okay.
Und das war ganz interessant, aber es war auch so, hatte so ein bisschen den Anschein von verrückter Wissenschaftler, ja, der so.
Ja, also was ich da ganz spannend fand, ich habe es auch gesehen, was ich ganz spannend fand, ist, ja, wobei er ja schon sehr geschickt, also GetQuery-Set überschrieben hat.
Also so, dass man quasi, also das war sehr clever, sozusagen.
Also er hat jetzt nicht irgendwie alles über den Haufen geworfen, sondern hat das ORM, also schon eben so Private-Methoden, die ein oder andere überschrieben, aber das schon sehr behutsam irgendwie und sehr geschickt.
Also so minimal, also an zwei Stellen war es schon ein bisschen waghalsig, war so mein Eindruck.
Aber dafür konnte er dann komplett quasi normale Query Sets schreiben, sodass es mit REST API Framework funktioniert und so.
Ich fand das schon sehr cool, also so von dem Ansatz her.
Ja, es war schon eine coole Sache und eine coole Idee und cool, dass er es hingekriegt hat, aber wie gesagt, ich würde es niemandem empfehlen.
Also hört sich so an, als mit großer Macht kommt großer Verantwortung den Nutzern Modelle in die Hand zu geben, die Datenbank geschrieben hat da, okay.
Ja, und das war halt schon auch auf den Use Case zugeschnitten.
Also der hatte halt wirklich die Notwendigkeit, dass die Benutzer eigene Modelle anlegen können und wenn man das vermeiden kann, ist es leicht besser.
Ja, von außen, ne?
Dann kommt man nicht an den Server selber dran.
Ja, okay.
Ja.
Nette Idee.
Okay, Passkys haben wir schon gesagt.
Steering Council haben wir noch nicht gesagt.
Aber wir haben noch nicht mit.
Wir haben ja gesagt, dass wir unsere Zeit.
Also, ich meine, die Frage ist, für mich ist die Frage, oben Plätze ja um die Zeit, also ein bisschen früher mal intensiver mit Passkys beschäftigt und dachte so, das wäre doch mal ganz nett, das könnte man vielleicht mal implementieren.
Oder dann habe ich auch gesehen, dass da schon was gibt im Grunde.
Und dann aber irgendwie sind doch viele Leute dann auch wieder abgesprungen.
Es gab auch, es gibt auch eine Implementation, ich weiß gar nicht, ob die fertig geworden ist, in Jungle All aus.
Ich glaube, ja.
Ja.
Also die haben da auch irgendeine Förderung für gekriegt und konnten das dann irgendwie umsetzen, aber ich weiß nicht, ob es schon fertig ist oder nicht.
Das hört sich so ein bisschen anders wärst du nicht der gleichen Meinung wie Tom, der sagte, hey, Pars hieß eine voll die coole Idee.
Also vor allen Dingen, ich bin jetzt gar kein Experte dafür oder so, aber was ich dann halt von Leuten, die sich damit dann auch beschäftigt habe, gehört habe, ist halt, dass sie sagen, naja, es lässt sich an Apple und Google und dass die das
Wir machen eure Passwörter sicher, indem wir sie alle
zu Apple und Google geben.
Ja, und das will wir ja vielleicht dann auch nicht.
Also man kann einen Passwortmanager da auch nicht mehr sagen.
Genau, du kannst auch irgendwie Bitwarden, also ich bin total der Bitwarden-Fan, weil irgendwie so halb Open Source, also ich meine, ich zahle das, aber es ist halt komplett Open Source.
Du kannst, also was dann zwar diesen Sicherheitsaspekt, weil es ist dann plötzlich nicht mehr in deinem Gerät, sondern nur in Bitwarden, also so Teile der Argumentation brechen da zusammen, aber du kannst die Passkeys einfach in Bitwarden speichern.
Dann ist es zwar einfach nur ein cooles Passwort, würde ich sagen, weil, also ich meine, du hast zwar so am Endeffekt, ob das jetzt Public-Private-Key ist, der in dem Manager ist, oder halt ein gehaschtes Passwort.
Sehr, sehr kleiner, semantischer Unterschied, würde ich sagen.
Genau, ich spreche.
Aber dann hast du das Apple-Problem, nicht wollte ich.
Das ist richtig,
aber wenn du es halt nur auf dem Gerät hast, dann ist es halt viel zu einfach, dass man sich selbst aussperrt oder halt nicht weiß, mit welchem Gerät man sich denn jetzt da irgendwie einloggen kann?
Du kannst es ja synchronisieren, dann geht es mit allen deinen Geräten.
Ja, aber dann ist es halt die Frage dann, wo ist der Vorteil gegenüber?
Genau, dann ist halt das Hauptargument, das ist halt weg dann, ja.
Also das ist
raus, ihr seid noch ein bisschen ambivalent was halt.
Passwortmanager, da sind starke Passwörter drin für jeden Account ein anderes, also für mich ist der Gewinn
nicht riesig.
Eine Frage, benutzt du denn auch irgendwie kommerziellen Service sozusagen für das Synchronisieren?
Oder da gibt es ja auch so Voltwarden oder so, glaube ich, was man selber verwenden.
Also du benutzt.
Ich zahle die, also genau, und ich benutze, also es ist zwar Open Source, also aber genau, ich zahle die halt, damit die das Synchronisieren machen, weil ich finde die eigentlich, ich glaube, die sind auch immer noch okay.
Ich weiß, hier gab es schon Gerüchte, dass sie gekauft oder irgendwie auch Venture Capital, aber also vergleichsweise, also zumindest von der Usability her, ich habe das nicht beim Weiterverfragt, kann ich sehr empfehlen, dass es funktioniert.
Prinzipiell ist es ja eine sehr gute Idee, Firmen zu unterstützen, die Open Source Software machen das.
Absolut.
Finde ich gut.
Okay.
Bei jemand
bei der Steering Council Introduction?
Ja, ja.
Und was kam daraus?
Hätte ich gesagt, ich kann mich nicht mehr so genau daran erinnern.
Es war irgendwie interessant zu hören, dass der alte ist zurückgetreten, genau, und dann haben sie jetzt ein bisschen mehr Zeit.
Und ja, es war so ein bisschen, was so die Herausforderungen gerade sind.
Sie haben ein bisschen gesagt, was im neuen Django-Version kommt.
Also Django-Tasks sollen integriert werden.
Ja, die wollten sie, aber was mich so ein bisschen daran verwundert hat, also ich hätte gedacht, die sind schon weiter damit.
Und das heißt halt, dass es so ein bisschen nochmal nach sechs verschoben worden ist, wohl, was halt heißt halt, ist irgendwas noch offen oder so.
Habe ich jetzt so interpretiert.
Habt ihr es mal ausprobiert?
Nee, ich freue mich nur die ganze Zeit drauf und komme ich mal vorhin.
Also wir haben es in der Tat in einem Produktionsprojekt von einem, also es ist jetzt aber auch schon ein paar Monate her, ein halbes Jahr oder sowas her.
Und da hatte es noch so einen, also ich verstehe, sowieso, ich verstehe, warum es nicht in 5-2 gekommen ist.
Also ich glaube, es soll ja eh nur das Interface reinkommen, das ist schon okay, aber so von der, also man merkt die Sachen halt dann am Ende auch wirklich nur, wenn es implementiert ist.
Und da, ich kann jetzt kein Beispiel mehr nennen, weil es lange her ist, aber es hatte noch so ein paar Rough Edges, so Upgrade auf die nächste Version, hätte etwas smoother sein können.
Ganz normal für sowas Frühes, aber ich glaube, das sind so mit die Gründe.
Und Django ist halt konservativ, lieber nichts kaputt machen.
Ja, gut, also hätte ich auch gerne.
Wenn ich das so nutzen will, dann soll das ja schon relativ sanft sein.
Ja, aber wir warten die ganze Zeit auf den Moment, wo wir Salary endlich wutzt werden, also gerade für die kleineren Projekte.
Auf jeden Fall.
Also ich glaube, Salary wirst du nicht loswerden.
War gestern schon drüber gesprochen.
Ja, es gibt ja eine Menge.
Okay, also wir sind Salary schon vor ein paar Jahren losgeworden.
Aber ich würde dem widersprechen.
Eine Geheimlösung, da müssen wir gleich nochmal drüber reden.
Okay, je nach Anforderungen und so, aber wenn du halt kompliziertere Anforderungen hast, dann gibt es nicht so viele, die du dazu machen könnt.
Oh, jetzt hat er dich gerade gediszt.
Ihr habt keine richtigen Anforderungen.
Ich meine, wenn man das nicht braucht, ist das ja sehr netter Versuch.
Ich darf jetzt auch nicht irgendwie für alles Salary nehmen, sondern.
Ich könnte da, glaube ich, eine Stunde drüber reden.
Wir haben Salary.
Das ist ein bisschen, weil wir dedizierte Anforderungen haben, aber auch ein gutes Thema.
Das hört sich nach einem guten Termin für einen Podcast.
Das wollte ich auch gerade sagen, das steht nach einer neuen Folge.
Ich bin bei den Lightning Talks fast eingeschlafen, Johannes.
Ja, ich habe nicht so richtig viel mitgekriegt von den Lightning Talks gestern, weil ich vorne on the edge of my seat saß und auf meinen Talk gewartet habe, wo ich dem Publikum beigebracht habe, wie man in fünf Minuten einschläft.
Ja, der Dominik hat den vorher in seinem Hotelzimmer schon ausprobiert.
In einem Monat, wenn die Folgen, wenn die Vorträge dann live sind, dann sind die sicherlich auch in den Shownotes drin.
Gut?
Mehr kann man jetzt im Moment nicht.
Du wolltest nicht spoilern.
Na gut.
Wie fandet ihr es denn?
Ich war ja, äh, ich hab's ja selber nicht mitgemacht.
Nö, ich fand's gut.
Ich hab's dann ausprobiert und es hat funktioniert.
Ja, super.
Aber ich habe auch die wichtigste Voraussetzung durchaus erfüllt, nämlich ich war echt müde, weil das schon echt spät wurde.
Da ist doch in der Folge gearbeitet gestern.
Ja, genau.
Also darf ich es spoilern?
Ja, natürlich.
Ja, das waren kleine Schritte.
Also du musst müde sein.
Ja, das ist Schritt Null, das vergessen jemanden.
Kaffee trinken, oder?
Ja, Kaffee ist tatsächlich was sehr Schlechtes zum Einstänken.
Und dann muss man seinen Geist entspannt.
Johannes hat gesagt, man muss sich ein ruhiges Bild vorstellen.
Mit wenig Bewegung ist wichtig.
Du sagtest, du liegst gerne in einem Boot und guckst in den Sterne hinein.
Also das stellst du
dir vor.
Ja, aber andere Leute liegen dann am Strand oder in einer Hängematte oder auf dem Feld oder wo auch immer irgendwas, wo man sich nicht viel bezahlen kann.
Tatsächlich auch nach meinem Bild gesucht.
Ich habe das Bild noch nicht gefunden.
Es ist zwar eingeschlafen, aber.
Genau, und dann nach und nach dem Körper entspannen.
Das fand ich sehr interessant.
Von oben nach unten beginnen wir.
Ganz bewusst im Gesicht sind viele, viele Muskeln drin und die einmal fühlen und loslassen und dann von oben nach unten durch den Körper gehen, immer die Muskeln fühlen und loslassen.
Man merkt es gar nicht selber so, aber die spannen sich automatisch an.
Auch gerade so im Gesicht, ja, wenn man so normal sitzt, dann hat man ja doch.
Jetzt müssen wir gleich doch die Leute gerade eingestarfen.
Ja, liebe Hörer, jetzt sind hier alle.
Nein.
Ja, genau.
Es ist einfach progressive Entspannung und wenn es nicht beim ersten Mal klappt, macht man es halt nochmal und irgendwann schläft man dann ein.
Das hat bei mir gut funktioniert, beim Jochen offenbar auch.
Und kann jeder mal ausprobieren.
Noch einen Lightning-Talk, den du.
Ja, also wenn, äh, ich fand den von John Wool ganz, ganz interessant, der so Django-Recruiter ist und halt viele Leute in Jobs vermittelt und viele Projekte hat und der
eigentlich gar nicht so erfreulich für viele Menschen.
Ich habe die Erfahrung tatsächlich gemacht und das ist jetzt eine Erklärung.
Also ich hatte bisher immer die Akku, also ich hab
Also ganz kurz, er ist ein Recruiter und er macht ganz viel Recruiting, der bekommt relativ viele Sachen.
Oh, ein spannendes, Entschuldigung, ich habe nicht unterbrochen, aber ein spannendes Detail davon war, ähm, er hat einen kleinen Talk auch dazu gemacht.
Er wurde nämlich mit AI-Agents konfrontiert, die sich bei ihm beworben haben.
Also echte, also Video-AI-Agents, die dann versucht haben, mit ihm Videocalls zu machen und so.
Spannend, ja.
Er hat das
YouTube-Video verlinkt, wir können das sagen.
Genau, ja.
Genau, das kann man gerade sagen.
Genau, aber seine Message?
Ja, ist halt, ja, ist schwierig, wenn man jetzt seinen CV irgendwo hinschickt.
Es funktioniert.
Und ich habe da jetzt zwischen den Jahren und dann Anfang des Jahres auch nochmal auf Projektsuche und zum ersten Mal seit Jahren, keine Ahnung, weil mich niemand angerufen hat, sowas.
Und da habe ich dann auch die Erfahrung gemacht, dass ich halt relativ viel Bewerbung und so losgeschickt habe und da ist wenig zurückgekommen, bis gar nichts.
Also da kam ein Interview bei raus, auch tatsächlich über Foxy Talent, also über ihm.
Aber ansonsten halt nicht.
Und ich dachte mir mal, so, was ist denn los mit den Leuten?
Das passt doch eigentlich gut, das ist doch komisch.
Bin ich zu teuer?
Irgendwie, ähm, was ist, was ist das?
Die Antwort ist ja auch kaputt.
Ja, vielleicht auch das, aber tatsächlich, sehr gut.
Er meint so, naja, also sie hat so eine durchschnittliche irgendwie Django-Entwicklerstelle, sie bekommen da halt irgendwie über 1000 CVs halt, wenn sie das irgendwie veröffentlichen irgendwo oder auf LinkedIn bewerben.
Und er meinte halt einfach sehr schwer, das alles zu lesen und man muss irgendwie eigentlich, wenn man da nicht so schön machen kann.
Ja, er meint Network, Network, Network und Visibility, du musst das nicht mehr.
Aber wenn man Leute nicht schon sehr schwer da aufzufallen, weil ja.
Und menschlich sein und nicht wie eine AI aussehen.
Ja, das ist blöd, weil manche Leute sehen, wie eine AI aussehen, klingen wie eine AI, sind aber keine AI.
Wen meinst du denn?
Das klassische Problem.
Ja.
Ja.
Okay.
Genau, ansonsten erinnere ich mich aber nicht mehr genau, was das ist und so war.
Ja, Lightning Trox sind immer, was sehr schön ist, aber dann, wenn sie vorbei sind, sind sie auch irgendwie.
Ja, ich war
die ganze Zeit so gespannt auf Johannes Talk.
Ja, selbstverständlich.
Publikum in meinen Bann gezogen.
Aber dann sind wir doch schon bei heute, oder?
Ja.
Den Tag habe ich verschlafen.
Ich habe heute sehr viele Sachen angeguckt.
Ja, nein, ich war das erste heute früh war Django for Data Science.
Ja, da war ich
auch drin von William Vincent.
Hast du eigentlich noch mit dem gesprochen, Johann?
Ich hab mit dem dann noch besprochen.
Das möchten wir gleich wissen, weil sein Talkis eigentlich Deploying vom Machine Learning Modelet.
Aber es ging nicht so wirklich um.
Was er vorgetragen hat, war eher Django for Data Scientists.
Ja, so Beginner, also Django ist auch cool, wenn man Data Science machen will, wo er recht hat.
Also ich würde das auch gerne empfehlen.
Aber das wird es halt nicht auf Verlust an eher Fahrstap hier.
Der hat halt so einen Grund genommen und so einen kleinen Haken, wie man ganz schnell als Data Scientist ankommt und auch da seine Sachen machen kann.
Ich weiß jetzt nicht, ob die Data Scientists jetzt für den Django-Talk jetzt hören.
Aber große Erzählung.
An der Stelle.
Nur das mit Teufelmaschinen bei den Hodels war jetzt nicht so wirklich geklärt.
Das war der Grund, warum ich früher aufgestanden habe.
Ja, er hat schon Job File erwähnt.
JobLip, Upload und Dump.
Das schafft er mit Pickel.
Aber das ist halt Pickel.
Genau, also was jetzt auch vielleicht nicht die aller allerbeste Wahl ist, aber es ist natürlich ein Weg, schnell zu machen.
Ja, er hat
jetzt das Petal-Setter, das kann man ja vielleicht schon pickeln, aber Iris heißt es.
Du kannst ja beliebte Dinge pickeln.
Du kannst eine komplette Pipeline-Pickeln.
Normalerweise deployst du ja auch nicht nur das Modell selber, sondern halt irgendwie auch quasi die Datentransformations-Pipelines und so, die Dingen-Geschichten, die du
hast auch.
Was hast du ihm denn gefragt?
Ich hab nur gesagt, hallo, ich bin der, also das ist auch sehr lustig, weil ich sag immer irgendwie, ja, ich mache halt zur Hälfte Webentwicklung und Hälfte Data Science-Zeugs und so.
Und er fragte halt, ja, wer sieht sich als Webdeveloper?
Das waren, na gut, wenig erstaunlich auf der auf der DjangoCon halt irgendwie fast alle.
Und dann, ja, wer ist Data Science, Data Science, waren da nicht mehr so viele und wer ist beides?
Und dann, ja, war, glaube ich, weiß ich nicht, ob ich der Einzige, der da richtig geblieben ist.
Nein, drei, vier.
Ich habe einfach so halb aufgezeigt, ich mache das ja nicht so viel, aber ich komme ja aus der Verwaltung.
Aber viele waren das dann nicht mehr.
Und genau, das, ich meinte halt, oh, ja, ich bin einer von denen, die da zum Schluss aufgezeigt hatten, weil er sagte dann, er würde dann mal gerne mit denen reden.
Und weil er findet nämlich, dass es eigentlich eine interessante Geschichte ist.
Ich auch, deswegen weiß ich es ja.
Aber genau, es gibt es nicht so häufig und offenbar.
Und er glaubt, dass halt da Django ein großes Marketingproblem hat, was ich auch so sehe.
Ich denke ja, das ist auch richtig.
Also, ich sehe da draußen zum Beispiel auch jetzt in dem Projekt, in dem ich bin, wird halt, also die verwenden deswegen Django, weil ich da bin, aber ansonsten wären die da nicht unbedingt auf die Idee gekommen, sondern hätten tatsächlich wahrscheinlich eher so etwas.
Der wird scheiße, weil der schnell verfügbar wird.
Da könnte man jetzt Nano-Django, äh, Johannes halt direkt ins Spiel bringen, weil das aber auch nur so ein One-Pager ist, wo man tatsächlich zwei Sachen hat und dann hat man irgendein Django und kann das dann hinter durch ein richtiges Django ersetzen.
Hat aber den leichten Data Science-Einstieg, der sich genauso anfühlt und bekannt vorkommt wie bei Fires API und kann das dann hinterher schön umbauen.
Ja, also ob es eine einfache Lösung dafür gibt, weiß ich nicht, weil ich denke, einer der Gründe, warum Leute das nicht mit Django machen wollen, ist, dass sie das Gefühl haben, oh, jetzt gibt es halt, also ich meine, wenn mit Django Dokumentation ausdruckt, sind halt auch irgendwie anderthalb tausend Seiten, ja.
Wenn man das Gefühl hat, oh, jetzt muss ich mich ernsthaft damit beschäftigen.
Overhead und
Zeit verstehen
und schwierig und dann müsste ich noch das machen.
Ich glaube, es gibt nur einen Grund, wenn ich einsteigen.
Ah, ja, sehr gut.
Ich komme ja eigentlich aus der Physikecke, so insofern, ich habe hier, also mein erster Kontakt mit Python war, also da gab es Data Science noch nicht in dem Sinne, aber ich habe es halt für Datenanalyse benutzt, das ist nicht anders.
Physiker haben das immer schon gemacht.
Und so Matplot-Lib-Visualisierung und so Geschichten.
Ich glaube, was extrem stark ist, also dass man halt, dass Django halt ein ORM hat, was auch für Data Science-Leute an sich nett ist, also weil Daten strukturiert ablegen, ist cool.
Aber, also und wenn man Django kann, also was wir auch ganz häufig machen, kann man Jupyter Notebook einfach initialisieren, oben die Settings definieren und das ORM direkt benutzen, was mega cool ist.
Wenn man Django nicht kann und das probiert, dann kriegt man total die schrecklichen Fehlermeldungen, dass irgendwelche Settings nicht definiert sind.
Und ich glaube, dass das viele, also es ist zwar, also für uns wahrscheinlich eine total kleine Einstiegswürde, aber für jemanden, der das Django nicht kennt, der Web nicht kennt, ist das eine riesengroße.
Naja, aber ich sag mal,
wenn ich dem jetzt ein Examplebook gebe, mit zwei Queries drin, dem einen Import, wo die Settings aufrufen werden, dann kann er wundervoll damit arbeiten, dass das so.
Was ist so nicht dokumentiert?
Der Use Case wird nur irgendwo beschrieben, wenn ich jetzt in Google eingebe, also weiß ich nicht, ich bin Data Science, dann finde ich das halt nicht, ja.
Und ich glaube, das ist.
Stang nur for Data Science ist tatsächlich nächste Neu.
Es braucht nicht
viel, aber halt.
Sollte man vielleicht tatsächlich mal gucken.
Also eine Sache, die ich immer anerwähne, ich glaube, wenn man das ORM ein bisschen unabhängiger macht würde, also man könnte das ja so bauen, dass man nicht Settings komplett definieren muss, weil die Settings-File macht auch Angst.
Die Django-Settings-File sind 100 Zeilen, also ja, aber easily sozusagen, Templates werden die.
Also lauter Zeugs, was du halt nicht brauchst und was du für eine, sag ich mal, jetzt eine API-basierte Dings auch gar nicht brauchst.
Aber du musst das alles irgendwie verstehen oder zumindest nutzen können, um halt das ORM zu benutzen.
Ich glaube, weil man das so ein bisschen entkoppeln könnte, dass ich so sagen könnte, okay, ich möchte halt so ein Django Light oder sowas halt haben, das könnte die Einstiegshürde, dass die Leute schon mal so ein bisschen sich rantrauen und merken, hey, ist ja eigentlich ganz cool.
Dann kann ich da einen Webserver machen oder ein Case Template machen und dann ist es halt schon da.
Also ich glaube, das ist das Coole an Flask, man.
Also, das war Flask run und es geht.
So.
Dann ist es halt im Browser.
Ja, ja, genau, also das ja tatsächlich der Grund, ja.
Müsste man eigentlich sich mal die Zeit nehmen und das tun tatsächlich.
Ich finde das auch schön, wenn das Framework so ein bisschen weiter ausgebaut wird.
Aber gut, weil sonst ist es ja andererseits, dann wollen die Leute halt ordentlich die Sachen bei Faser API haben, halt ist mal wieder beschäftigt, ne?
Wenn ihr sagst, das kommt so wenig Deutsch, sonst.
Ja, aber das Deployment-Problem quasi ist, finde ich, mit Pickel halt noch nicht wirklich gelöst.
Also ich habe das damals, also wie fair daran interessiert wäre, also es kann dann auch später fragen und ja, das sind alles sehr gute Fragen.
Ich habe auch, mich würde mal interessieren, ob irgendjemand anders da eine Antwort drauf gefunden hat, die befriedigend ist.
Was ich irgendwann mal gemacht habe, als ich dieses Problem hatte, ist, quasi Notebooks in Konda-Pakete automatisch zu verwandeln, die dann in einem Django File-Field hochzuladen, dann so einen uniquen Namespace für das Paket zu benutzen und dann den Kram da draus zu importieren, dynamisch.
Das geht alles irgendwie.
Es war nicht so schön, aber es.
Das ist ja
auch ein schmutziger Hack.
Ja, aber ja, nicht ganz so schmutzig wie
Pickel vielleicht, aber auch sehr schmutzig, ja, das stimmt schon.
Aber ich habe in der Tat was ähnliches gemacht.
Also weil du musst ja auch reproducible Zeugs dann machen, also gerade wenn du, wenn du wissenschaftlich arbeitest.
Ich habe also in den Notebooks gearbeitet und dann die Sachen, die etablierter waren, die man halt wiederverwendet hat, wirklich in mein eigenes kleines Python-Package in Git, was ich dann wieder sowohl in die Notebooks oder halt in andere Sachen importieren kann.
Also ich habe mir wirklich angewöhnt, die Sachen dann in mein eigenes kleines Paket zu packen, was ich benutzen kann.
Das klingt erstmal nach viel Arbeit, wenn man sich angewöhnt und irgendwie da hat, dann ist das, weil plötzlich hat man Git, kann man Review, kann man alles Mögliche machen.
Also gerade auch im Team arbeitet oder so.
Also war jetzt bei mir weniger der Fall.
Man hat eine Histor und so, man hat Branches.
Und du kannst es ja trotzdem jederzeit in deinem Notebook wieder importieren.
Genau, man kann es dann auch mal wieder reproduzieren.
Weil man hat ja auch viel so Boilerplate-Code, Daten.
Also das Modell Trainieren ist ja irgendwie eh eine API in irgendeiner Form oder halt irgendeinen, also du nutzt ja Scikit oder irgendwas, aber du hast ja immer diesen ganzen Clean-up-Code, dieses Zeugs drumherum, was du auch dann irgendwie wiederverwendest.
Und da hat sich das funktioniert.
Hat sich am Anfang wie overclaubert gefühlt, aber wurde dann mehr und mehr, ja, hat sich mehr und mehr ausgezahlt.
Und dann hast du auch kein Deployment-Problem mehr sozusagen, weil dann kannst du das nicht.
Ja, genau, dann ist auch ein Faktor.
Weil dann hast du Pip benutzen oder dein eigenes oder wie auch immer.
Genau, ja.
Ja.
Ja, okay, dann denke ich, genau.
Also was noch gehabt, ich glaube, du hast ja kurz angeguckt, das Recording vom RealPython-Podcast.
Ja, genau, gab es im Workshop-Raum gab es halt irgendwie einen Live-Podcast, irgendwie vom RealPython-Podcast, also RealPython, die Seite von Dan Bader, der Bada, ich meine, der kommt ja, glaube ich, irgendwie aus Deutschland.
Ist ja noch keiner ausgewandert oder so.
Ja.
Das war ganz interessant, weil das waren schon so, die haben das relativ professionell gemacht.
Die bereiten sich richtig vor.
Die haben nur Kissen vorher und sowas.
Die lesen relativ
viel ab.
Das fand ich schockierend.
Also, äh, also, ich, also die.
So was haben wir noch nie gemacht.
Das machen wir nicht, aber muss man mal drüber nachdenken, ob das nicht vielleicht ab und an bei manchen Sachen gemacht wird.
Man haben wir auch Tizen noch nie.
Aber wir haben die erst so lose, und du weißt doch, dass du nach einem Bildschirm hast ja so eine kleine Liste auf.
Gerade bei den News, dann kommen wir da so ein bisschen.
Ja, aber halt höchstens mal Stichpunkte, aber die haben tatsächlich so Passagen.
Von GPT ausformulierte.
Wir haben richtig Skripte.
Was natürlich auch ganz gut ist.
Du kannst es auch professionell machen halt.
Oder auch an anderer Profi-Geschichte, wo ich halt so dachte so, wow.
Okay, also die haben einmal verwenden die
Looking for your back and I just brought it to the front where the Django Desk is.
Die verwenden so Handmikrofone, dynamische Handmikrofone und Kopfhörer.
Das machen wir nicht, wir machen ja Headsheits, weil für Leute, die das nicht gewohnt sind, ist das schwierig mit der Mikrofondisziplin, weil du musst immer ungefähr den gleichen Abstand anhalten.
Ansonsten wird das halt in der Arbeit.
Wenn wir es gewohnt sind, ist das, glaube ich, schwierig.
Ja, auch für uns ist es schwierig, machen auch dauernd, aber genau, die kriegen das halt hin.
Also das auch muss man halt können.
Und dann macht dem einen irgendwie Christopher Trudder oder so, der hat dann irgendwie sich verhasmelt oder verschluckt oder musste sich äußern oder so, machte eine kurze Pause, sagte den gleichen Satz komplett nochmal, damit er es halt sehr leicht rausschneiden kann.
Ja, also wirklich so, dachte ich so, wow, das ist ja okay.
Ich muss dann
immer so machen, wo kann man die
anfangen zu schneiden und Ende und jetzt klingt es okay, aber es macht halt semantisch keinen Sinn mehr, weil da einfach was fehlt und so.
Aber nein, man muss dann einfach nochmal den Satz sagen.
Ja, aber bei uns passieren doch solche Fäder.
Nee, gar nicht.
Ja.
Wir lassen es einfach alles drin, aber das erklären wir dann.
Die haben übrigens dann auch quasi, es gab so einen Q<unk>A-Teil mit dem Publikum und dann haben sie halt auch irgendwie noch ein Interview.
Hast du gemeine Fragen gestellt?
Deine Fragen?
Hast du gemeine Fragen gestellt?
Ich habe keine Fragen gestellt.
Nee, weil das kommt ja auch in den Podcast rein und ich dachte so, hm, ich weiß nicht.
Das klingt bestimmt nicht so gut, wenn ich das sage.
Und genau, sie haben dann auch ein Interview mit Sarah Boyce gemacht.
Und ja, also war, ich fand's interessant zu sehen.
Und die machen alles mit Da Vinci Resolve, weil sie eigentlich auch die ganze Videoproduktion für Real Fighten-Podcasts machen.
Und haben dann so ISO, ich weiß gar nicht mehr, so ein Plugin für Da Vinci Resolve mit der machen sie auch den ganzen Audiokram.
Naja, also war interessant.
Ich fand's gut.
Okay.
Ja.
Worüber wollen wir denn noch sprechen?
Feature Flex?
Da saß sie auf jeden Fall drin.
Ja, da waren wir drin, aber ja, war jetzt nicht so beeindruckend.
Also er hat halt gezeigt, dass man ein Feature durch einen Boolean-Flag aktivieren kann und dann kann man es ausprobieren.
Und wenn es okay ist, kann man es übernehmen und wenn es nicht okay ist, übernimmt man es nicht.
Fand ich jetzt nicht so aufregend, um ehrlich zu sein.
Ich fand den Tipp
am Ende wichtig.
Man muss sie halt wieder rausschmeißen, sonst kriegt man Ärger auf, kriegt man nur Probleme mit Produktteam oder mit komplexer Codebase, was schon wichtig ist.
Aber ja, ich weiß nicht.
Also ich wollte eine Sache
einführen, weil ich brauche das dann einzustellen, ja.
Eine Sache, die ich gelernt habe in vergangenen Projekten, ist, dass Feature Flags immer von negativ, das heißt, der vorherige Zustand ist false und der neue Zustand ist true und man muss es immer in der Richtung machen, weil sonst kommt man durcheinander und dann hat man irgendwann ein Riesenchaos und weiß nicht mehr, welche eigentlich aktiv sind und welche eigentlich aktiv sein sollten.
Und das ist das, also ja.
Aber ja, war eine, es war ein Denkanstoß, aber wenn man den Gedanken schon mal hatte, dann war es halt nicht.
Genau, dann gab es einen Vortrag über HTMX.
Ja.
Der war auch mehr so ein, ich würde eher sagen, Evangelizing-Vortrag.
Jeder sollte einmal in seinem Leben HTMX ausprobiert haben, weil man hat das Licht gesehen und es war sehr unterhaltsam.
Aber jetzt auch nicht viel Neues gelernt.
Und das wissen unsere Hörer natürlich alle schon, weil unsere Hörer sind ganz tolle Leute und wir wissen schon, dass HTMX super ist.
Benutzt ihr es auch?
Nee, also bisher noch nicht so richtig.
Ich glaube, es hat sich nicht, also ich glaube, es hat sich einfach noch nicht so richtig ergeben.
Es muss halt, ich glaube, es muss das richtige Projekt sein.
Ich habe auch so ein, zwei, drei andere gebraucht, aber dann irgendwann alles umgestellt.
Aber wir haben halt auch ein Fried-And-Team, also das ist halt so ein bisschen, also.
Das braucht man ja da nicht mehr.
Oh oh.
Wie gesagt, ich glaube, es kommt halt einfach aufs Projekt an, würde ich sagen.
Und du musst halt gucken, was das richtige Tool fürs richtige Projekt nehmen.
Macht ihr dann ein Reactor UJS oder?
Genau, je nachdem.
Also das oder einfach auch klassische Templates.
Also ich meine, es gibt auch durchaus, auch wenn das jetzt sehr langweilig vielleicht klingt, den Vorteil von einem Request-Response-Cycle und das war's.
Und dann gibt es die nächste Page, weil dann hat man, also, und das, also so keine Partials, weil.
Das ist sauber und solide
und man kommt ungeheuer weiter mit und es funktioniert überall.
Ich finde das auch nicht so schlecht.
Also das ist, was wir jetzt viel machen, oder im letzten Projekt jetzt echt gemacht haben, ist viel einfach klassisch das.
Und dann für das eine komplizierte Widget-Webcomponents, entweder in React oder in Vue, was muss man, also wir sind nicht ganz durch mit dem Projekt, aber ich, also zumindest die Idee mag ich sehr.
Ich kann irgendwann mal sagen, wie gut das dann skaliert hat.
Also da kann man die halt auch unabhängig testen.
Man hat diese ganzen No-Frontend-Zeugs und aber komplett entkoppelt, aber kann die halt im Template einfach definieren, gibt die Properties rein, fertig, hat eine saubere Trennung.
Klingt nach, was das Jochen machen würde.
Ja, nur wahrscheinlich dann eher Vanilla JavaScript in Webcomponent.
Aber ja, Webcomponents finde ich auch super.
Ja, ja.
Dann, was auf jeden Fall 1000 and One, sagen wir scheiß, den habe ich mich sehr geärgert, als ich den verfasst habe.
Aber ich hatte mir vorher noch einen angeguckt, den über die Database Operations.
Ah.
Und der war tatsächlich ganz interessant, weil.
Karen nochmal?
Genau.
Das war aber eine andere Karen.
Ach, eine andere Karen.
Die war von Crunchy Data Managed Data Dankmann, wenn man das Crunchy.
Die andere war von Cactus.
Ja, aber.
Ja, genau, das war interessant, weil die hat einfach gezeigt, was passiert überhaupt, wenn man so eine Abfrage macht.
Also wenn man in Django auf Objects.all macht, was passiert denn dann da überhaupt?
Und zwar auch auf technischer Ebene.
Also da wird dann erst dieses Select erzeugt und der Select wird hingeschickt und dann werden da die vier Phasen gemacht.
Und dann kommt es irgendwie zu einem Ausführungsplan und der Plan hängt davon ab, was für eine Abfrage das ist und welche Indizes es gibt und was ist überhaupt ein Index und warum funktioniert der und warum ist der schnell und was muss man sagen.
Es war wirklich sehr gut.
So ein bisschen Datenbank-Presh-Code.
Also muss ich tatsächlich dann ausgehen.
Das ist wirklich gehört, aber gut.
Refresher und eine nette Einführung auch.
Also, also Einführungs-Son bisschen tiefer als Einführung.
Ja, auf jeden Fall.
Aber so eine nette Zusammenfassung jetzt, genau.
Genau, es war ein Überblick über die Internals.
Nee, das fand ich auch sehr schön.
Genau, dann 1001 Stories, das war sehr lustig, weil da saß ich neben dem Jochen und das war sehr schön erzählt, ja, sehr schöne Folien und auch sehr schön gezeigt.
Und das von Code Red und die haben jetzt einen Django-Web-Hosting und damit haben sie jetzt kürzlich die 1000 gehosteten Seiten überschritten und das hat er eben sehr schön dargestellt, welche Herausforderungen man da findet, wenn man viele Django-Seiten hostet.
Aber es war deshalb interessant, weil der Jochen irgendwie immer nervöser wurde, weil die ganzen Schlussfolgerungen, die sie gezogen haben, so ein bisschen dem widersprechen, was der Jochen da hat.
Das muss erstmal genauer erklären.
Naja gut, das lag auch vielleicht einfach daran, dass ich wenig geschlafen hatte und dann inzwischen schon zu viel gesehen und dann werde ich halt dann irgendwann unleidlich und ungenädig oder so.
Vielleicht liegt es auch daran.
Bitte lass mal hören doch jetzt.
Ja, also der Vortrag war sehr gut und so, also die machen bestimmt auch.
Aber ja, diese Geschichte, dass man immer mehr Abstraktionen braucht, weiß ich nicht, ob das so der richtige Weg für alles ist.
Und dann vor allen Dingen hatte ich halt das Gefühl, das war oft so mehr so Cargo-Kult.
Das kam dann auch später fragen, wo dann, ja, warum ist das denn ein Security-Vorteil, wenn ihr das irgendwie in den Docker packt und muss man dann nicht auch Sachen absichten und so, ja, aber das macht man halt so und ja, dann haben wir das nochmal getan-scootet und es war nicht so wirklich begründet, warum man das dann jetzt nun macht.
Die überraschende Stelle für mich war, als er gesagt hat, wir haben sehr viele unterschiedliche Workloads und deshalb können wir nicht Kubernetes benutzen.
Weil das
ist für mich so der primäre Anwendungsfall von Kubernetes, dass man viele unterschiedliche Arbeit hat.
Man hört das andersrum, nochmal gesehen.
Ja, und an der Stelle haben sie gesagt, ja, und dann haben wir was Eigenes entwickelt.
Und es sah aber für mich am Ende auch so ein bisschen aus wie Kubernetes selbst gebaut, weil sie halt, weil er halt gesagt hat, ja, wir können dem System sagen, welche Unterlage wir haben wollen und welchen Dings er da rein und dann macht das alles selber und sucht einen Knoten, wo genügend Platz drauf ist.
Und er musste ich mich schon sehr an Helmcharts erinnern.
Er hat auch so ein Deployment gezeigt und tatsächlich ist das bei mir auch so ganz ähnlich irgendwie und braucht auch ungefähr genauso lang.
Und bei mir sind das halt so 70 bis 100 Zeilen Ansible, je nach Projekt, aber mehr ist das nicht.
Und dann sagt er so, ja, und dann haben wir alle diese Sachen ausprobiert und nach Jahren haben wir das dann so hingekriegt, dass wir das machen können.
Ich sag mir so.
Okay, das war eine ganz schöne Reise offenbar, aber ja, gut.
Also Jochen ist kurz davor, seine eigene Manager-Gehosting-Firma zu gründen.
Und ich auch, und dann probiere ich Kubernetes aus und Jochen macht es auf Bare Metal und dann ist es so.
Genau, was wollen wir denn noch besprechen hier?
Es gab noch einen Vortrag über Two-Factor Authentication oder Multifactor Authentication.
Das hatten wir schon so ein bisschen da haben.
Ja, mit dem Paski ist dasselbe Problem.
Die Quintessen, man möchte es gerne anbieten für alle seine Nutzerinnen.
Ja.
Das ist so die Essenz davon, oder?
Für manche optional, für die wichtigen lieber verpflichtend und dann hilft der Sicherheit.
Es war ganz interessant, weil sie so ein bisschen auch die internen Sachen gezeigt hat.
Und sie hatte so eine coole Karte dabei im Checkkartenformat, wo man draufdrücken kann und dann kommt diese stillige Zahl.
Das ist natürlich eine super Sache.
Ja, also Fazit mehr Mehrfaktor-Authentifizierung.
Ja, ansonsten, genau.
Django Admin at a Scale, da habe ich, das war ein bisschen schwer zu verstehen.
Also die haben da irgendwie Performance-Probleme gehabt und das irgendwie dann verbessert und so.
Ja, war auch ein netter Ding.
Aber das waren so Tipps für, also im Prinzip steht in der Django-Dokumentation, aber irgendwo so.
Aber einmal gezeigt.
Genau, das.
Und dann natürlich noch die Lightning Talks.
Du hast ja auch heute aber ein bisschen besser.
Diesmal habe ich aufgepasst.
Ich habe sogar Notizen gemacht.
Ich kann euch jetzt alle Lightning Talks sagen, wenn ihr das wollt.
Ja, wollen wir.
Muss ihr nur noch finden.
Ja, du hast ja gerade eben schon diese schöne Kurve, die den irgendwann runtertäte bei dem Big in Lightning Talk von dem Talk.
Ja, so der erste Lightning Talk ging über Accessibility, wie man seine Folien mehr accessible macht.
Das war tatsächlich sehr witzig, weil zwei Vorträge später kam die Emma Deliscol, die sehr schwer lesbare Folien hatte und es dann auch am Ende bemerkt hat.
Interessant, dass ich bin auch zu dem ersten Talk ein bisschen wieder spät reingekommen.
Heute war so ein Tag.
Und das hätte mich tatsächlich interessiert, weil ich finde, ich, ich bin jetzt aber kein Problem mit dem Sehen, dunkle Folien viel besser lesbar.
Und ich finde zum Beispiel, dass auch in den Räumen, also gerne lieber weniger Licht, ich finde, dass das Strom spart.
Und es gibt halt jetzt Leute, die sagen, bitte auf gar keinen Fall dunkle Folien benutzen, weil das Accessibility blöd ist, wenn das irgendwie gestreamt wird.
Ja, und auch weil das der Beamer verwäscht und dann muss man darauf achten, dass man nicht die falschen Farben zusammen kombiniert, weil das halt auf Projektoren oft nicht so ist.
Aber ja, also ich mag auch lieber dunkle Folien mit hellem Text als umgekehrt.
Aber sie hat gesagt, lieber andersrum.
Ja, okay, ist ja vielleicht die Frage, welche Audience da ist.
Oder vielleicht kann man ja beides machen oder man gibt die Accessibility-Folien als Extra-Link.
Ich weiß nicht, ob das dann eine Hürde ist oder nicht.
Weiß nicht vielleicht.
Okay, der zweite Tag war Adding Lind Rules in Large Codebases.
Und das war sehr unterhaltsam, weil am Ende kommt ein Paket raus, das heißt Silence Lint Arrows.
Sehr gut.
Und man sollte es nicht verwenden, aber sie haben es sich trotzdem geschrieben, weil man es verwendet.
Nein, aber ich glaube, der Grund vor allen Dingen zum Verwenden ist, dass du einen Lint neu hast, den du gerne Linden möchtest.
Ja, genau.
Und dann machst du erstmal Silence von allen alten, damit du nicht direkt die ganze Codebase einmal durchmann musst.
Und dann werden nur noch alle neuen dann fleißig genug.
Genau, die neuen dann automatisch nachgefangen verarbeiten.
Die neuen werden dann automatisch gefangen von deinem Linting und die anderen musste dann halt nach und nach abarbeiten.
Und apropos nach und nach abarbeiten, weil das war nämlich später What's your PKs?
Tim Bell ist nochmal auf die Bühne gekommen.
Und da kam diese Lektionen nochmal so ein bisschen.
Hatten wir ja schon am ersten Tag davon gehört, dass auch die
Displays der
verfügbaren Primary Keys rausgehen kann und man kann sich aber noch einmal retten, indem man auch negative Primary Keys zulässt.
Nur hart, also
das ist schon erstmal hart.
Aber wenn man dann auch noch nicht das Problem an sich gleich behebt, kann es einem passieren, dass man zwischen Weihnachten und Neujahr den Keyspace verliert und dann muss man sich ganz schnell im Dezember, in der zweiten Dezemberwoche, noch eine Lösung ausdenken.
Sehr unterhaltsam Vortrag.
Genau, dann kam der Vortrag mit den schwer zu lesenden Folien.
GenerateStaticSides.
Coole Sache, jeder hat schon mal einen Static Site Generator programmiert, auch ich.
Sprich nur für dich.
Ach ja, genau.
Ja, ich auch.
Jeder muss das mal machen.
Dann kam How to Exchange with Community.
Fabian hat nochmal gesprochen darüber, dass er sich sehr viel mit der Community austauscht und zwar aus purem Eigennutz, weil ihn das in seinem eigenen Projekt einfach weiterbringt.
Weil ihn das auch viele Ideen bringt.
Und auch das stimmt sicherlich.
Und dann kam ein sehr mitreißender Vortrag von Daniele Prosila, der kann das sehr gut, der hat auch von schon Keynotes immer wieder gehalten.
Er hat alle Leute mitgenommen und erstmal auf die falsche Fährte geführt, indem er über Film gesprochen hat.
Na, fotografisch.
Und da gibt es ja auch tatsächlich Leute, die sich da sehr dafür interessieren und sehr dafür engagieren.
Und offenbar ist er so einer.
Und dann hat er aber den Schwenk gemacht und hat gesagt, so, diese ganzen Filmtypen, die sind alle schön fein getuned auf gute Farben und um Menschen gut abzubilden, aber nur für hellhäutige Menschen.
Und dann hat er so ein Foto gezeigt, wo eine, wo seine Kollegen drauf waren und eine Person war einfach nicht zu sehen, weil die einfach in den Hintergrund.
Die war einfach voll schwarz ausgeblendet.
Und er hat dann so ein bisschen die Biegel gemacht, so in vielen Systemen sind so Biases drin, die daraus herrühren, dass einfach unterrepräsentierte Gruppen nicht an dem System mitwirken.
Und wenn du nicht zu dieser unterrepräsentierten Gruppe gehörst, dann kannst du diesen Bias nicht sehen.
Das ist übrigens auch etwas, das kostet in echten Projekten richtig viel Geld, weil man glaubt es kaum, aber zu der unterrepräsentierten Gruppe in diesen Projekten zählen oft auch die Kunden.
Und das ist genau die Folgen, dass man das auch schwer nachvollziehen kann, was sie so Probleme haben und was sie eigentlich möchten.
Wenn die nicht dabei mitreden, dann ist es schwierig, ja.
Aber das hat aber auch, also zum Beispiel in der Medizin, meine Frau ist Ärztin und die weiß auch solche Beispiele, dass Frauen schlechter behandelt werden, weil die einfach nicht so viele Schmerzmittel bekommen, weil die Männer sagen, wird ja nicht so schlimm sein.
Oder auch farbige, die haben offenbar ein anderes Reaktionen auf Schmerzmedikamente, die kriegen dann einfach nicht so viel, weil die Ärzte sagen, jetzt stell dich nicht so an.
Jammern immer oder irgend sowas.
Also so der Casual Racism dann halt auch noch mit reinkommt.
Und das ist natürlich eine tolle Kombination, ja.
Unterrepräsentierte Gruppen und Casual Racism.
Das ist mittelmäßig.
Okay, dann
kam Andrew Miller writing 100 words a day.
Kann jedem nur empfehlen.
Falls it war, it worked, but it was very stressful.
Dann kam ChatGPT, How to Write a Talk with AI.
War sehr unterhaltsam, sehr schönes ChatGPT geschrieben.
Von ChatGPT geschrieben.
Leider hat die von ChatGPT vorgetragen.
Ja, aber halb.
Ja, halb, stimmt.
Dann kam der lustigste Vortrag des Abends, ein Multiplayer-Game.
Ich glaube, das hatte der am Abend vorher Vibe gecodet.
Live auf seinem MacBook ausgeführt und noch kurz ein paar Variablen geändert.
Sehr unterhaltsam.
Und schließlich zum Abschluss die Ankündigung der Pykon PT in Kashkaich, in Portugal.
Ist jetzt allerdings schon im Juli, wenn ich das rechts noch habe.
Also wer da noch hin möchte, ist ein sehr schöner Ort.
Ich war da schon mal.
Cooler Strand.
Aber wer da hin möchte, muss ich jetzt beeilen.
Genau, und das Konferenzzentrum hat eine direkte Verbindung zum Strand.
Also man muss nicht mehr über die Straße gehen.
Ah, super.
Das ist natürlich großartig.
Ja.
Dann haben wir die Django Kong geschafft, würde ich sagen, oder?
20 Jahre Django.
20 Jahre, richtig?
Stimmt, ein Glas Sekt gehabt, der geben wir jetzt abschluss.
Und wir haben Hunger.
Genau, dann müssen wir uns auch mal mitmachen.
Danke, dass ihr eingeschaltet habt.
Hallo at Python Podcast.de für jedes Feedback.
Bleibt uns gewogen, hört uns bald wieder.
Wir wissen noch nicht, wann wir es wieder schaffen.
Ihr kennt das Problem.
Aber bald.
Ja, und dann auch noch eine Folge hier.
Genau, das müssen wir nochmal.
Das müssen wir auf jeden Fall auch
nochmal angehen.
Danke für die Einladung.
Schön, dass du dabei da warst.
Ja.
Ja, klar.
Dann wünsche ich euch einen schönen, was auch immer, Tag, Nacht, Morgen.
Einen schönen Tag.
Ciao, ciao.
Tschüss.