Transcript: Live von der DjangoCon Europe 2025 in Dublin - Tag 3

· Back to episode

Full episode transcript. Timestamps refer to the audio playback.

Ja, hallo, liebe Hörerinnen und Hörer, willkommen beim Python-Podcast, Episode 65, heute den dritten Tag von der DjangoCon Europe aus Dublin.

Ja, herzlich willkommen, Dominik, herzlich willkommen, Johannes, hallo, mal wieder dabei und Sebastian, hallo zusammen.

Ja, wir skrippen wieder die News, ihr kennt das ja schon aus den letzten zwei Tagen und erzählen einfach was von der DjangoCon.

Ihr müsst noch mit gestern Abend weitermachen und die Lightning Talks und heute.

Genau, wann haben wir denn gestern aufgehört?

Mittag.

Die Parking-Tickets hatten wir noch.

Ja, ich glaube, wir haben einen Talk von Sebastian verpasst.

Ja, das war vom ersten Tag, genau, aber den müssen wir auf jeden Fall nachholen, genau.

Konnte mir gar nichts zu sagen, das ist natürlich, ja, dann fangen wir doch vielleicht einfach damit an.

Ja, ich kann es versuchen, genau, also war ja auch nach dem Mittag, ja, und das dazu zu sagen.

Also 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, ja, 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 diese 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?

Die Frage habe ich auch bekommen, aber das ist schwierig, weil irgendwie, ich habe die ja auch rausgesucht und so, also eine wirklich ist das, 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ß nicht, ich kann es ja kurz zusammenschreiben halt sozusagen, also man hat halt Query-Set-Parameter, also Fragezeichen oder halt und, ja.

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, so 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, also für einen vorher oder eine weiter Seite halt die 2 durch eine 1 oder eine 3 ersetzen.

Mhm.

Also, wir hatten so Herpa-Funktionen, so 10 Zeilen Code.

Hat jeder schon mal geschrieben.

Genau, hat jeder schon mal geschrieben.

Ja, ja, ja.

Jetzt kann man halt das komplett löschen, einfach im Template sagen, Query-Set-Page-Equals-2-Previous-Page oder halt dann 1 oder so, fertig, ja, wenn es…

War nice.

Klingt angenehm, ja.

Es ist, genau, also, ja, das war eigentlich schon ein gutes Beispiel, das waren genau so meine Beispiele, ich habe es auch vorher gezeigt, so vorher 20 Zeilen Code, jetzt nichts mehr und dann halt auch mal, muss man nicht testen, kann keine Fehler mehr machen.

Nein.

Genau, cool.

Ja.

Coole Sache, war 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…

Naja, muss man schon ein bisschen unterlesen und das eigentlich auch ausprobieren und dann auch machen, damit man da so…

Und dann noch einen Blogpost drüber schreiben und einen Podcast draufnehmen.

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, man wird nicht gepusht in die Richtung, die neuen, besseren Sachen zu benutzen und deswegen gehen die, glaube ich, manchmal so ein bisschen, also, unter…

Sind solche Sachen auch bei Django Upgrade drin? Wahrscheinlich nicht, ne, weil das nicht einfach migrierbar ist, solche Funktionen.

Also, das war schon, also, weiß ich nicht, ehrlich gesagt, jetzt, äh, das war schon…

Ja, musst du ja kennen, es gibt einen, was man automatisch…

Also, das nicht, glaube, könnte ich, also, ja, es ist ja ein Template, also, und, also, das, das wäre schon, das wäre schon sehr faszinierend, aber, ja.

Okay, cool.

Ja.

Ähm, wollen wir einfach die Liste uns durchhangeln und so ein bisschen gucken?

Ja, ich weiß nicht, haben wir, da wollen wir jeden genau besprechen, das ist ja ganz schön viel.

Ja, vielleicht nur die, die uns eingefallen sind und in Erinnerung geblieben sind, weil wir haben, wenn wir jetzt, insbesondere habt ihr eben erwähnt, ihr habt besonders viel Hunger heute.

Richtig.

Jetzt ist die, die Konferenz ist vorbei, wir müssen jetzt essen gehen und Party machen.

Genau.

Das machen wir auch, davon wollen wir auch nicht mehr berichten.

Ja.

Wir machen auch keine.

Ähm.

Aber wir haben gestern beim Junko, war da jemand?

Ja, ja, ich war da drin.

Ja.

Das war, äh, war tatsächlich ganz unterhaltsam, aber ich weiß jetzt nicht, ob ich da irgendwie…

Das ist von heute?

Nee, das war gestern.

Also, Passkies hat…

War gestern am 4.

Heute war er auch ein bisschen…

Ach, der, ja, doch, ja, okay, dann.

Genau.

Passkies, ja.

Ja, wir haben noch ein paar andere Sachen verpasst, glaube ich, vorher, danach.

Ja, das, genau, das, wenn ihr da drin wart, ich war, glaube ich, in sonst gar nichts, weil…

Dynamic Models without Dynamic Models.

Ja, da war ich drin, der, das war ja eine sehr verrückte Idee.

Warst du da nicht auch da?

Ähm, nein.

Der, äh, 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.

Jason Tube Model, oder?

Als Jason Field.

Okay.

Und, äh, das war ganz interessant, aber es war auch so, er hatte so ein bisschen den

Anschein von verrückter Wissenschaftler, ja, der so…

Ja, also, was ich da ganz spannend…

Ich hab's auch gesehen, was ich ganz spannend fand, ist, ähm, ja, wobei er ja schon sehr

geschickt, also, Get Query Set überschrieben hat.

Er war sehr selektiv.

Also, so, dass man quasi, also, das war sehr clever, sozusagen.

Also, er hat jetzt nicht irgendwie alles über den Haufen geworfen, sondern hat den, hat

das ORM, also, schon eben so Private Methoden, die ein oder andere überschrieben, aber schon

sehr behutsam irgendwie und sehr geschickt.

Ja, das…

Und dann also so minimal, also, an zwei Stellen war's schon ein bisschen waghalsig, war so

mein Eindruck.

Ja.

Aber dafür konnte er dann komplett, äh…

Quasi normale Query Sets schreiben, sodass es mit REST-API-Framework funktioniert und

sodass…

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's hingekriegt

hat, aber, wie gesagt, ich würde es niemandem empfehlen.

Also, hört sich so an, als, ne, mit großer Macht kommt große Verantwortung, den Nutzer

Modelle in die Hand zu geben und die Datenbank ist wie immer 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, Passkeys haben wir schon gesagt.

Passkeys.

Steering Council.

Haben wir noch nicht gesagt.

Wir haben noch nicht wirklich drüber gesprochen.

Wir haben noch nicht gesagt.

Also, ich meine, die Frage ist, für mich ist die Frage offen, ich habe letztes Jahr

um die Zeit, also ein bisschen früher, mal intensiver mit Passkeys beschäftigt und dachte

so, hm, 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, äh, im Grunde und, ähm, dann, äh,

aber irgendwie, äh.

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 Django All Aus.

Ich glaube, ja.

Ja.

Also, die haben da auch irgendeine Förderung für gekriegt, äh, und, äh, konnten das

dann irgendwie umsetzen, aber ich weiß nicht, ob es schon fertig ist oder nicht.

Das hört sich so ein bisschen an, als wärst du nicht der gleiche Meinung wie Tom, der

sagte, hey, Passkeys sind voll die gute Idee.

Nee, 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 haben, gehört habe, ist

halt, dass sie sagen, naja, Ascend lässt sich an Apple und Google und dass sie das, äh.

Genau.

Wir machen eure Passwörter sicher, indem wir sie alle zu Apple und Google geben.

Ja, und, ähm, das will man ja vielleicht dann auch nicht.

Also, man kann Passwortmanager auch.

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, Teile der Argumentation brechen

da zusammen, aber, ähm, du kannst die Passkeys einfach in Bitwarden speichern.

Mhm.

Ähm, dann ist es zwar einfach nur ein cooles Passwort, würde ich sagen, weil, also, ich

meine, du hast zwar, also, so, am Endeffekt, ob das jetzt Public-Private-Key ist, der in

dem Manager ist, oder halt, ähm, ein gehashtes Passwort.

Ja.

Ja.

Sehr, sehr kleiner semantischer Unterschied, würde ich sagen.

Genau.

Aber dann hast du das Apple-Problem nicht, wollte ich nur sagen.

Ja, nee, das ist, das ist richtig, aber wenn, 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.

Ja, das muss das ja synchronisieren.

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, äh.

Ja, also.

Also, ich höre raus, ihr seid noch ein bisschen ambivalent, was, oder halt.

Ja, ich habe schon einen Passwort-Manager, 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, äh, irgendwie Commerz-Hallen-Service sozusagen für das, äh,

synchronisieren, oder da gibt es ja auch so Volt-Warnen oder so, glaube ich, was man selber

verwenden, selber hochhalten.

Und dann kannst du zahlen, und dann ist es halt genau das, also.

Ja, ja, aber du, du zahlst.

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ß nicht, 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 mehr weiterverfolgt, kann ich sehr empfehlen,

also, es, es funktioniert, also.

Prinzipiell ist es ja eine sehr gute Idee, Firmen zu unterstützen, die Open-Source-Software

machen das.

Ja, absolut.

Ja, finde ich gut.

Okay.

Okay, ähm.

War jemand bei der Steering Council Introduction?

Ja.

Ja?

Ja?

Ah, und was kam da raus?

Äh.

Was ist Steering Council?

Ich hätte nicht gesagt, ich kann mich nicht mehr so genau dran erinnern, es war irgendwie

interessant zu hören, dass er, dass der Alte ist zurückgetreten, genau, und dann haben

sie jetzt ein bisschen mehr Zeit, und, ähm, ja, es war so ein bisschen, was so die Herausforderungen

gerade sind, aber.

Sie haben ein bisschen gesagt, was im neuen Django-Version kommt, also, Django-Tasks soll

integriert werden.

Ja, die wollten wir, 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 das so ein bisschen nochmal nach sechs verschoben

worden ist wohl, was halt heißt, da ist irgendwas noch offen, oder so, hab ich jetzt so interpretiert.

Habt ihr das mal ausprobiert?

Nee.

Äh, nee, ich freu mich schon die ganze Zeit drauf und hör mal von.

Aber ich, ich werd's jetzt.

Also, wir haben es in der Tat in einem Produktionsprojekt von, also, es ist jetzt aber schon ein paar

Monate.

her, muss ich sagen, ein halbes Jahr

oder sowas her

und da hatte es noch

so einen, also ich verstehe,

ich verstehe, warum es nicht in 5.2 gekommen

ist, weil

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 zu 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

als... 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 Celery endlich Wurz werden,

also gerade für die kleineren Projekte. Auf jeden Fall,

ja. Also ich glaube, Celery wirst du nicht

loswerden oder... Wir haben ja gestern schon

drüber gesprochen. Ja, es gibt ja eine Menge...

Warum? Okay, also wir sind Celery schon

vor ein paar Jahren losgeworden, aber

also ich

würde dem widersprechen. Eine Geheimlösung, da müssen

wir gleich nochmal drüber reden. Ja, genau.

Okay, je nach Anforderungen und so, aber wenn du halt

kompliziertere Anforderungen hast, dann gibt es nicht so viele,

wie wir das machen können. Ja, genau.

Jetzt hat er dich gerade gedisst. Ich habe keine richtigen

Anforderungen. Ich meine, wenn man das nicht braucht,

ist das ja sehr schön. Netter Versuch. Ich bin ja jetzt auch nicht,

ich darf jetzt auch nicht irgendwie für alles Celery nehmen,

sondern... Ich könnte da, glaube ich, eine Stunde

drüber reden. Ja, ja. Wir haben Celery

ausgeschmissen, weil wir die dedizierte

Anforderung haben, aber ich glaube, das ist ein anderes

Thema. Ja, das

hört sich nach einem guten Termin für einen

Podcast an. Das wollte ich auch gerade sagen, das klingt

nach einer neuen Folge. Ja.

Ich bin bei den Leitentalks fast eingeschlafen, Johannes, warum denn?

Ja, ich habe nicht so richtig viel mitgekriegt

von den Leitentalks 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.

Ich habe den Test gehört vorher dann irgendwie.

Ja, das

Dominik hat den vorher in seinem Hotelzimmer schon ausprobiert.

In einem Monat,

wenn die Vorträge dann

live sind, dann sind die sicherlich

auch in den Shownotes drin. Gut.

Ja, kann man jetzt im Moment nicht...

Du wolltest nicht spoilern. Nicht spoilern. Na gut.

Wie fandest du es?

Wie fandet ihr es denn? Ich war ja...

Ich fand es gut. Ich habe es 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

es schon recht spät wurde. Du hast doch in der Folge gearbeitet,

Christian. 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 die meisten.

Ein Kaffee trinken, oder? Ja, Kaffee ist tatsächlich,

was sehr Schlechtes zum Einschlafen ist.

Und dann muss man seinen Geist entspannen.

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 Sternen. Genau.

Also, das stellst du dir vor. Ja, aber andere Leute

liegen dann am Strand oder in der Hängematte

oder auf dem Feld oder wo auch immer.

Irgendwas, wo man sich nicht viel bewegen muss. Tatsächlich auch nach meinem

Bild gesucht. Ich habe das Bild noch nicht gefunden. Ja, das ist wichtig.

Ich bin vorher eingeschlafen, aber...

Genau, und dann nach und nach den Körper

entspannen. Wächst der Body, wächst der Face.

Das fand ich sehr interessant. Von oben nach unten

beginnend mit Face. Ganz bewusst.

Genau, 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 klatschen, da sind die Leute

gerade eingeschlafen.

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.

Kann jeder

mal ausprobieren. Noch einen Lightning Talk,

den du... Ja, also wenn...

Ich fand den von

John Gould ganz, ganz

interessant, der so

Django-Recruiter ist und halt

viele Leute in Jobs

vermittelt und viele Projekte hat und der...

Ja, das war eigentlich gar nicht so erfreulich

für viele Menschen. Nee, ich hab die

Erfahrung tatsächlich gemacht und das ist jetzt eine Erklärung.

Also ich hatte bisher immer die... Also ich hab...

Also ganz kurz, er ist ein Recruiter und er

macht ganz viel Recruiting und er bekommt relativ viele Sachen.

Oh, ein spannendes... Entschuldigung, ich hab dich

unterbrochen, aber ein spannendes Detail davon war,

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 haben.

Genau, das kann man...

Genau, aber seine Message?

Ja, ist halt... Ja, ist schwierig,

wenn man jetzt seinen CV irgendwo hinschickt,

das funktioniert nicht mehr so richtig.

Und ich war jetzt zwischen den Jahren und dann Anfang des Jahres

auch nochmal auf Projektsuche und

zum ersten Mal seit Jahren, keine Ahnung, weil

ja, ich...

Mich niemand angerufen hat,

sowas, und

da hab ich dann auch die Erfahrung

gemacht, dass ich halt relativ viel Bewerbung und so

losgeschickt hab und da ist wenig zurückgekommen,

bis gar nichts. Also da kam eine...

ein

Interview bei raus, auch tatsächlich über

Fox Hill Talent, also über...

Ja, bei ihm.

Aber ansonsten halt nicht.

Und ich dachte mir immer so, was ist denn los mit den Leuten?

Das passt doch eigentlich gut, das ist doch komisch.

Bin ich zu teuer?

Irgendwie, was ist...

Also die Antwort ist ja kaputt.

Ja, vielleicht auch das, aber...

Naja, tatsächlich ist der Grund, er meint so, naja, also sie haben so eine

durchschnittliche irgendwie

Django-Entwicklerstelle, sie bekommen da halt irgendwie

über tausend 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

quasi...

Ja, man muss Network, Network, Network, Visibility, du musst halt...

Wenn du die Leute nicht schon kennst, dann ist es sehr schwer, da aufzufallen, weil...

Ja, genau.

Und menschlich sein und nicht wie eine AI aussehen.

Ja, das ist blöd, weil

manche Leute sehen wie eine AI aus und 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 da sonst so war.

Ja, Lightning Talks sind ja immer was sehr Schönes, 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.

Erste, heute früh, war Django for Data Science.

Ja, da war ich auch drauf. Von William Vincent.

Ja, William Vincent, ja.

Hast du eigentlich noch mit dem gesprochen, Jörn?

Ich habe mit dem dann noch gesprochen.

Das müssen wir gleich wissen, weil sein Talk ist eigentlich

die Plowing vom Machine Learning Model.

Ja, aber was er vorgetragen hat,

war eher Django for Data Science.

Ja, so Beginner.

Django ist auch cool, wenn man Data Science machen will.

Wo er recht hat. Ich würde das auch gerne empfehlen.

Aber das wird halt nicht so oft benutzt,

sondern er erfasst es ab hier und 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 Scientist jetzt für den Django

Talk jetzt hört, aber

große Empfehlung an der Stelle.

Nur, das Plowing vom Machine Learning Model war jetzt

nicht so wirklich geklärt. Das war der Grund,

warum ich früher aufgestanden bin.

Er hat schon Jobfile erwähnt.

Jobfile hat Load und Dump.

Das läuft mit Pickel.

Aber das ist halt Pickel.

Genau, was jetzt auch vielleicht nicht die allerbeste Wahl ist,

aber es ist natürlich ein Weg, es schnell zu machen.

Ja, er hat jetzt das Petal Setter,

das kann man da vielleicht schon pickeln, aber

Iris heißt es.

Du kannst ja beliebige Dinge pickeln.

Du kannst eine komplette Pipeline pickeln.

Normalerweise deployst du ja auch nicht nur das Modell selber,

sondern halt irgendwie auch

quasi die Daten-Transformations-Pipelines

und so.

Was hast du ihm denn gefragt?

Ich habe nur gesagt, hallo.

Das ist auch sehr lustig, weil ich sage immer,

irgendwie, ja, ich mache halt so Hälfte Web-Entwicklung

und Hälfte Data-Science-Zeugs und so.

Und

er fragte halt, ja,

wer sieht sich als Web-Developer? Das waren, na gut,

wenig erstaunlich auf der DjangoCon,

halt irgendwie fast alle. Und dann, ja,

wer ist Data-Scientist?

Data-Scientist waren da nicht mehr, nicht mehr so viele. Und wer ist beides?

Und dann, ja, war, glaube ich,

weiß ich nicht, ob ich der Einzige war, der übrig geblieben ist.

Nein, ich habe 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, 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 das eigentlich eine interessante Geschichte ist.

Ich auch, deswegen mache ich das, ja.

Aber, genau,

es gibt es nicht so häufig und offenbar.

Und

er glaubt, dass halt da Django

ein großes Marketing-Problem hat, was ich auch so sehe.

Ich denke, 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 werden die da

nicht mehr so gut.

Also ich denke, das ist auch richtig.

Also ich sehe da draußen zum Beispiel auch jetzt in dem Projekt,

weil ich da bin, aber ansonsten werden die da nicht mehr so gut.

Also ich bin da nicht unbedingt auf die Idee gekommen,

sondern hätte tatsächlich wahrscheinlich eher so was wie Fireside-API.

Da könnte man jetzt Nano-Django

direkt ins Spiel bringen,

weil das aber auch nur so ein

One-Pater ist, wo man tatsächlich zwei Sachen hat

und dann hat man irgendein Django und kann das dann hinterher

durch ein richtiges Django ersetzen,

hat aber den leichten Data-Science-Einstieg,

der sich genauso anfühlt und bekannt vorkommt wie bei Fireside-API

und kann das dann hinterher schön umbauen.

Ja, also ob es dann eine einfache Lösung

fü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's halt, also ich meine, wenn mit Django

Dokumentationen ausgedrückt werden, sind das auch irgendwie

anderthalb tausend Seiten, wenn man das Gefühl hat,

oh, jetzt muss ich mich ernsthaft damit beschäftigen.

Ja, die Overhead und Konzentrationsverstehen

und schwierig und dann müsst ihr noch das machen.

Ich glaube, es gibt nur einen Grund, wenn ich einsteigen darf.

Ah ja, sehr, sehr gut.

Ich komme ja eigentlich aus der Physikecke,

also mein

erster Kontakt mit Python war,

also da gab's Data-Science noch nicht in dem Sinne,

aber ich hab's halt für Datenanalyse benutzt,

das hieß nicht anders. Physiker haben das immer schon gemacht.

Und so Matplotter

mit Visualisierung und so Geschichten.

Ich glaube, was extrem

stark ist, also, dass man halt

das 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 Einstiegshürde, aber für jemanden,

der Django nicht kennt, der Web nicht kennt,

ist das eine riesengroße Hürde.

Naja, aber ich sag mal, wenn ich dem jetzt ein Exempel-Book gebe,

mit zwei Queries drin,

dem einen Import, wo die Settings

ausgerufen werden, dann kann er wundervoll damit arbeiten.

Das ist doch...

Aber es ist so nicht dokumentiert. Der Use-Case wird

nirgendwo beschrieben. Wenn ich jetzt in Google eingebe,

Ja, okay.

Also, das weiß ich nicht. Ich bin Data-Science, dann

finde ich das halt nicht, ja, und

ich glaube, das ist...

Django for Data-Science ist tatsächlich nächste...

Das braucht nicht viel, aber halt...

Sollte man vielleicht tatsächlich mal kurz...

Also, eine Sache, die ich immer anwende, ich glaube, wenn man das

ORM ein bisschen unabhängiger

macht würde, also, man könnte das jetzt...

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, 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, wenn man das so ein bisschen

entkoppeln könnte, dass ich so sagen könnte, okay, ich möchte

halt so ein Django-Lite

oder sowas halt haben,

das könnte die Einstiegshürde, dass die Leute schon mal

so ein bisschen sich rantrauen und merken, hey,

das ist ja eigentlich ganz cool, dann kann ich da noch einen Web-Server machen,

dann kann ich so ein kleines Template machen und dann ist es halt

schon da. Also, ich glaube, das ist das Coole an

Flask, man braucht, also,

was war Flask Run? Und es geht, so.

Und dann ist es halt im Browser.

Und, aber, ja. Ja, genau, also das ist ja

tatsächlich der Grund, ja.

Müsste man eigentlich nicht 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 ordentliche Sachen bei FastAPI haben, dann ist man wieder

beschäftigt, ne, wenn du sagst, das kommen so wenig Leute sonst.

Ja, okay.

Aber das Deployment-Problem quasi ist,

finde ich, mit Pickle halt noch nicht wirklich gelöst.

Also, ich habe das damals, aber sie wäre

daran interessiert, also es kamen 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

Condor-Pakete automatisch

zu verwandeln, die dann

in einem Django-Five-Field hochzuladen, dann

so einen uniken 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

Das ist ja auch ein schmutziger Hack.

Ja, aber ja, nicht ganz so schmutzig

wie Pickle vielleicht, aber auch sehr schmutzig, ja, das stimmt schon.

Aber ich habe in der Tat was Ähnliches gemacht,

also weil, du musst ja auch, also

Reproducible-Zeugs dann

machen, also gerade 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 es 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 wenn man

auch im Team arbeitet oder so, also war jetzt bei mir

weniger der Fall, aber man hat eine Historie und so,

man hat Branches und

du kannst es ja trotzdem jederzeit in deinen

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

in einer API in irgendeiner Form oder halt irgendein,

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, hat funktioniert

so, also hat sich am Anfang wie

Overcrowded 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 Pip benutzen oder dein eigenes

oder wie auch immer, genau.

Ja.

Ja, okay, dann

denke ich, genau. Also was noch,

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 Bader, ich meine, der kommt ja

glaube ich aus Deutschland,

ist ja nach Canada 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 Notizen vorher und so was,

die lesen relativ

viel ab, das fand ich

schockierend, also

also, also die...

Sowas 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...

Ja, manchmal haben wir auch Notizen.

Aber wir haben die eher so lose,

und du weißt doch, da hast du nach einem Bildschirm, hast du dann so eine kleine

Liste auf, gerade bei den News,

dann schreiben wir da so ein paar... Ja, aber halt höchstens mal Stichpunkte,

aber die haben tatsächlich so Passagen...

Von GPT ausformulierte Vorlesungen.

Ja, ja, ja, okay.

Was natürlich auch ganz gut ist. Kannst du auch professionell machen,

halt, ne? Ja, oder auch andere

Profigeschichte, wo ich da so

dachte, wow, okay, also die haben einmal

verwenden die...

You're looking for your bag, 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 Head-Sides,

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...

Das ist, glaube ich, schwierig.

Für uns ist das schwierig, machen auch dauernd, aber genau,

die kriegen das halt hin, also muss man halt

können. Und dann

ist da im einen irgendwie...

Christopher Trudeau oder so, der hat dann irgendwie

sich verhaspelt oder verschluckt

oder musste sich räuspern oder so,

machte eine kurze Pause, sagte

den gleichen Satz komplett nochmal,

damit er das halt sehr leicht rausschneiden kann.

Also wirklich so, dachte ich so, wow, das ist...

Ich muss dann immer so...

Ich muss dann immer wieder 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 noch solche Fehler.

Nie, gar nicht.

Ja. Wir lassen uns einfach alles

drin. Das erklären wir dann zu uns.

Das Format Podcast ist doch irgendwie

ein bisschen...

Wir haben übrigens dann auch quasi, es gab so ein Q&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.

Aber genau,

sie haben dann auch ein Interview mit Sarah Boyce

gemacht und ja,

also war, ich fand es interessant

zu sehen. Und die machen alles mit

DaVinci Resolve, weil sie eigentlich auch die ganze

Videoproduktion für RealPython

Podcast machen und haben

dann sowieso, ich weiß gar nicht mehr,

so ein Plugin für DaVinci Resolve mit, da machen sie auch

den ganzen Audiokram. Naja, also war interessant.

Ich fand es 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

war jetzt nicht so beeindruckend. Also sie 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. Okay. Ich fand den Tipp am Ende

wichtig. Man muss sie halt wieder

rausschmeißen, sonst kriegt man Ärger.

Kriegt man nur Probleme mit

Produktteam oder mit

Codebase, was

schon wichtig ist, aber ja.

Also ich wollte mich tatsächlich einfühlen, 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 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.

Okay.

Genau, dann gab es einen Vortrag über HTMX.

Ja. Der war auch mehr so

ein, ich würde eher sagen,

Evangelizing-Vortrag. Ja. 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.

Ja. 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 du jetzt auch? Ne, also

bisher noch nicht so richtig.

Okay.

Ich glaube, es hat sich nicht, also

ich glaube, es hat sich einfach noch nicht so richtig ergeben,

aber ich glaube, es hat sich einfach noch nicht so richtig ergeben,

ähm, es muss halt, ich glaube, es muss

das richtige Projekt sein. Ich habe auch so ein, zwei,

drei andere für gebraucht, aber dann irgendwann alles umgestellt.

Aber gut, wir haben halt auch

ein Team, also das hat so

ein bisschen, also. Ja, das braucht

man ja da nicht mehr.

Oh, oh.

Also, ja, genau, also

wie gesagt, ich glaube, es kommt halt

einfach aufs Projekt an, würde ich

sagen und du musst halt gucken, was, also

das richtige Tool fürs richtige

Projekt nehmen irgendwo.

Genau. Macht ihr dann React mit VJS

oder?

So, genau, je nachdem, also genau, also

das oder einfach auch klassische

Templates, also ich meine, es gibt

auch durchaus, ähm, auch wenn das jetzt

sehr langweilig vielleicht klingt. Ja.

Vorteil von einem Request-Response-Cycle

und das war's und dann gibt's die nächste Page,

weil dann hat man, also, also

so keine Partials, weil

Das ist sauber und solide und man kommt

ungeheuer weiter mit und es funktioniert überall.

Ich find 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, äh, das

und dann für den, für das eine

komplizierte Widget-Web-Components

entweder in React oder in V, was,

ähm, man muss mal,

also wir sind noch 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, äh,

weil, also, da kann man die halt auch unabhängig

testen, man hat diese ganze Node

Frontend-Zeugs

und, aber komplett entkoppelt,

aber kann die halt im Template einfach

definieren, gibt die Properties,

gibt die Properties rein, fertig, hat eine

saubere Trennung. Klingt nach was, was

Jochen machen würde.

Äh, ja, nur wahrscheinlich dann eher Vanilla

JavaScript in Web-Components, aber, aber

ja, ja, Web-Components find ich auch

super. Ja, ja.

Dann, was, auf jeden Fall, 1001

Sango-Scheiß, den, den hab ich mich sehr geärgert, dass ich

den verfasst hab, aber dann... Ja, äh, ich hab

vorher noch einen angeguckt, den über die

Database-Operations. Ah. Ja.

Und der war tatsächlich ganz interessant, weil... Ah, Karen, nochmal?

Genau. Das war schön, ja. Das war sehr...

Das war aber eine andere Karen. Ach, eine andere Karen.

Okay, Karen Dex. Die war von Crunchy, Crunchy Data,

Managed Data, aber, äh, Duncan Mung, wenn man das, also Crunchy...

Ah, ja, okay. Die andere war von Cactus, äh,

ja, aber... Ah, ja.

Äh, 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, äh,

Objects.all

macht, was passiert denn dann da überhaupt?

Und zwar auf, auch auf

technischer Ebene. Also, da wird dann erst dieses Select erzeugt

und das Select wird hingeschickt und dann

wird, äh, werden da die vier Phasen

gemacht, ähm,

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...

Ja, es war wirklich sehr... Wo wird der gespeichert und so?

So ein bisschen Datenbank-Crash-Kurs, aber...

Also muss ich tatsächlich da nochmal gucken.

Ein netter Refresher

und eine nette Einführung.

auch, also Einführungs...

Ja, sogar geht schon ein bisschen tiefer als Einführungs...

Ja, auf jeden Fall. Aber so eine nette

Zusammenfassung jetzt, genau, das war...

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 ist von

Code Red und die haben jetzt

ein Django-Webhosting 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 vorgestellt. Genau, das muss man genau erklären.

Naja gut, es 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, das wollen wir hören, Jochen, 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.

Es kamen dann auch später Fragen, wo dann, ja, warum

ist das denn ein Security-Vorteil, wenn ihr das irgendwie

in Docker packt und muss man da nicht auch Sachen abziehen?

Ja, weil das macht man halt so und

ja, dann haben wir das nochmal

gechallengedutet und es war nicht so wirklich

begründet.

Die Überraschungsstelle für mich

war, als er gesagt hat, wir haben sehr viele unterschiedliche

Workloads und deshalb können wir nicht

Kubernetes benutzen. Das ist für mich so

der primäre Anwendungsfall

von Kubernetes, dass man viele unterschiedliche

Arbeiten macht. Man hört das andersrum.

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 er halt gesagt hat, ja, wir können

dem System sagen, welche

Unterlage wir haben wollen und welchen Dings da

da rein und dann macht das alles selber und sucht

einen Knoten, wo genügend Platz drauf ist und

da musste ich mich schon sehr an Helmcharts

erinnert fühlen. Und 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 Junker-Hosting-Firma zu gründen

und ich auch und dann

probiere ich Kubernetes aus und Jochen macht's auf

Bare Metal und dann ist das so.

Genau,

was wollen wir noch besprechen hier?

Es gab noch einen Vortrag über Two-Factor

Authentication oder Multi-Factor Authentication.

Hatten wir schon so ein bisschen da.

Ja, mit dem Passkiste ist dasselbe Problem.

Macht ihr das? Also die Gründer sind zwar,

man möchte es gerne anbieten für

seine Nutzerin.

Ja, aber das ist so

die Essenz davon. Oder für manche

optional, für die Wichtigen

lieber verpflichtend und

dann, das hilft der Sicherheit.

Es war ganz interessant, weil sie so ein bisschen die

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 stille Gezahl.

Das ist natürlich eine super Sache.

Ja, also

Fazit, mehr

Faktor Authentifizierung.

Ja, ansonsten, genau, Genre 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

Einstieg. Ich glaube, es waren so Tipps für,

also im Prinzip

steht in der Django-Dokumentation,

aber irgendwie so. Ja, aber einmal

gezeigt. Genau, das, ja.

Und dann natürlich noch die Lightning Talks.

Ja. So, die hast du auch heute aber ein bisschen

besser aufgepasst. Diesmal habe ich aufgepasst, ja.

Ich habe sogar Notizen gemacht. Ich kann euch jetzt alle

Lightning Talks sagen, wenn ihr das wollt. Ja, wollen wir.

Ich muss sie nur noch finden.

Ja, du hast ja gerade eben schon diese schöne Kurve gehabt,

die dann irgendwann runterteilte bei dem

Big-End-Lightning-Talk von dem... 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

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 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...

Aber ja, also ich mag auch lieber dunkle Folien mit

hellem Text als umgekehrt.

Aber sie hat gesagt, lieber andersrum und...

Ja, gut. Ja, okay, ist ja vielleicht eine Frage,

welche Audience da ist, ne? Oder vielleicht kann man ja

beides machen. Oder man gibt die

Accessibility-Folien als Extralink. Ich weiß nicht,

ob das dann eine Hürde ist oder nicht.

Ja, weiß nicht, vielleicht.

Okay, der zweite Tag war

Adding Lint Rules in Large Code Bases.

Und das

war sehr unterhaltsam, weil

am Ende kommt ein

Paket raus, das heißt Silence Lint Errors.

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 linten möchtest.

Ja, genau. Und dann machst du erst mal

Silence von allen alten, damit du nicht direkt die ganze

Codebase einmal durchmanteln musst. Und dann

werden nur noch alle neuen dann fleißig genutzt.

Genau, die neuen werden automatisch

nacharbeiten. Die neuen werden dann automatisch

gefangen von deinem Linting und die anderen musst du

dann halt nach und nach abarbeiten. Und apropos

nach und nach abarbeiten, weil das war nämlich

Beta,

Watch Your PKs, Tim Bell

ist nochmal auf die Bühne gekommen. Ja.

Und da kamen diese Lektionen

nochmal so ein bisschen.

Hatten wir ja schon am ersten Tag davon gehört,

dass auch die

Space der verfügbaren

Primary Keys kann rausgehen

und man kann sich aber noch einmal retten,

indem man auch negative Primary Keys

zulässt.

Das ist schon hart.

Ja, 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.

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

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. Er hat auch von

ein paar Leuten schon Keynotes immer wieder gehalten.

Hat alle Leute mitgenommen

und erstmal auf die falsche Fährte

geführt, indem er über Film gesprochen hat.

Na, welche Film guckst du gerne?

Und da gibt es ja auch

tatsächlich Leute, die sich da sehr

dafür interessieren und sehr dafür

engagieren. Und offenbar ist da so einer.

Und dann hat er aber einen Schwenk gemacht und hat

gesagt, so, diese ganzen Film

Typen, die sind alle schön

feingetunt auf gute Farben und

um Menschen gut abzubilden, aber

nur für hellhäutige

Menschen. Und

dann hat er so ein Foto gezeigt,

wo seine Kollegen drauf waren

und eine Person war einfach nicht zu sehen, weil die

einfach in den Hintergrund, die war einfach

ja, voll schwarz

ausgeblendet.

Und er hat dann so ein bisschen den

die Biege gemacht, so

in vielen Systemen sind so

Biases drin,

die da 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,

und das hat genau die Folgen, dass man das

auch schwer nachvollziehen kann, was diese

Probleme haben und was sie eigentlich möchten, wenn die nicht

dabei mitreden, dann ist es schwierig.

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 schon nicht so schlimm sein.

Oder auch Farbige, die haben offenbar ein anderes

Reaktion

auf Schmerzmedikamente, die kriegen dann einfach nicht so viel,

weil die Ärzte sagen, stell dich nicht so an.

Jammern immer oder irgendwie 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 mir jedem nur empfehlen.

Fazit war, it worked, but it was

very stressful.

Dann kam JetGPT,

How to Write a Talk with AI.

War sehr unterhaltsam, sehr schönes

von JetGPT geschrieben.

Leider nicht von JetGPT vorgetragen.

Agentic Lightning Talk.

Ja, halb bestimmt, ja.

Dann kam der lustigste

Vortrag des Abends, ein Multiplayer-Game.

Ich glaube, das hat ja 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 PyCon PT in

Kaschkaisch, in Portugal.

Ist jetzt allerdings schon im Juli,

wenn ich das recht in Erinnerung 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 sich jetzt beeilen.

Genau, und das Konferenzzentrum

hat eine direkte Verbindung zum Strand.

Also man muss nicht mehr über die Straße gehen.

Das ist natürlich großartig.

Ja.

Dann haben wir die DjangoCon geschafft, würde ich sagen, oder?

20 Jahre Django.

20 Jahre.

Stimmt, ein Glas Sekt gab es noch.

Da geben wir jetzt auch ein Glas Sekt.

Und wir haben Hunger.

Genau.

Danke, dass ihr eingeschaltet habt.

Hallo at PythonPodcast.de für jedes Feedback.

Bleibt uns gewogen. Hört uns bald wieder.

Wir wissen auch 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 dann mal angehen.

Ja, danke für die Einladung.

Schön, dass du dabei warst.

Ja, gerne.

Dann wünsche ich euch einen schönen Tag, Nacht, Morgen.

Einen schönen Tag. Tschüss.