Hallo Du!
Bevor du loslegst den Talk zu transkribieren, sieh dir bitte noch einmal unseren Style Guide an: https://wiki.c3subtitles.de/de:styleguide. Solltest du Fragen haben, dann kannst du uns gerne direkt fragen oder unter https://webirc.hackint.org/#irc://hackint.org/#subtitles oder https://rocket.events.ccc.de/channel/subtitles oder https://chat.rc3.world/channel/subtitles erreichen.
Bitte vergiss nicht deinen Fortschritt im Fortschrittsbalken auf der Seite des Talks einzutragen.
Vielen Dank für dein Engagement!

Hey you!
Prior to transcribing, please look at your style guide: https://wiki.c3subtitles.de/en:styleguide. If you have some questions you can either ask us personally or write us at https://webirc.hackint.org/#irc://hackint.org/#subtitles or https://rocket.events.ccc.de/channel/subtitles or https://chat.rc3.world/channel/subtitles .
Please don't forget to mark your progress in the progress bar at the talk's website.
Thank you very much for your commitment!




======================================================================






khaleesi : Hello, welcome to the first talk at chaos west. It will be with me khaleesi and also paldium the names is "Let's review code together, einfach mal machen." The talk will be in german however it translated. by the Amazing c3lingo team, it's  track one. 
Herzlich willkommen zu unserem Talk Let's Review Code. Dieser Talk ist aus einem Sonntagnachmittagsgespräch zu einer Zeit entstanden, zu der wir eigentlich code reviewen wollten und auf andere Menschen in unserer Code review Gruppe gewartet haben. Und wir haben uns die Frage gestellt, warum machen wir eigentlich code reviews in unserer Freizeit und wieso machen das nicht mehr Menschen? Wir, das sind khaleesi. Ich studiere Informatik an einer Fachhochschule und ansonsten findet man mich eher in der c3 newsshow oder in irgendwelchen Security Themen. Genau. Und der zweite Part unseres speaker Teams ist paldium . 
paldium : Genau. Hallo, ich bin paldium  37 Jahre alt, arbeite als softwarearchitekt, habe damals natürlich auch mit code reviews zu tun. Entwickle auch selbst entsprechenden Quelltext. Und wenn ich in meiner Freizeit dann auch noch mal die Muße dazu finde, auch dort code zu reviewen, mache das natürlich auch weiterhin teilweise im Open BSD Umfeld, im Linux Umfeld und was ich sonst noch so finde. Genau, und die Frage, die man sich natürlich stellt, ist am. Ja. Was ist ein schöner Code Review? Wieso macht man das? Was macht man das? Und warum ist es ganz, ganz wichtig, Fragen zu stellen Code Review oder Review? Im Duden ist erst mal eine kritische Besprechung eines künstlerischen Produkts oder ähnlichen Code. Ist ja auch irgendwie Kunst. Wir kennen es alle. Die meisten von euch kennen es aber wahrscheinlich eher aus dem professionellen Bereich. Also. Als Qualitätssicherung Stuhl in Firmen oder als Teil der Software Development Life Science. Das heißt meistens einfach nicht mehr als. Den Code, den ihr gerade geschrieben habt, wird an ein paar geschickt. Und schaut, ob alles in Ordnung ist, ob auch alle Konventionen eingehalten sind oder ob sich noch irgendwelche Fehler in diesem Code 
befinden. A
ber jetzt s
tellt sich 
die Frage Wir machen das jetzt schon im professionellen Umfeld die ganze Zeit. Wie ist es denn, das in seiner Freizeit zu machen? Und damit kommen wir auch zu unserer Mission. Wir suchen. Unicorns Die sind ziemlich selten, aber wir hoffen, dass wir heute ein paar mehr Menschen finden können, die wir dafür begeistern können. Auch in ihrer Freizeit Chotjewitz zu machen. Unsere Mission ist es, Menschen dafür zu begeistern, sich Zeit zu nehmen und sich Open Source Projekte anzugucken, sich den Code genauer anzugucken, vielleicht auch einfach leichter lesbare Kommentare zu schreiben, das kann auch ein Teil von uns sein. Aber vor allem einfach sich damit auseinandersetzen, wie die ganzen Tools, die wir einfach so für selbstverständlich erachten, funktionieren und ein besseres technisches Verständnis davon zu erlangen, wie das alles zusammenhängt. Genau. Und. Wir haben uns sehr viel damit auseinandergesetzt, was man machen kann, damit mehr Leute das machen. Und um diese Fragestellung zu lösen, haben wir uns zuerst einmal gefragt Was ist eigentlich unsere Motivation für Code Reviews? Ich bin da nur so ein bisschen so reingerutscht, wie das zustande gekommen ist, erzähle ich später. Palladium macht das schon ein bisschen länger als ich. Und er hat sich da mal ein paar mehr Gedanken zur Motivation gemacht. Genau. Motivation sehr wichtiges Thema. Wir kommen jetzt gerade auf euch zu und sagen Hier mach doch mal was! Die Frage Warum sollte ich es tun? Und warum machen wir es eigentlich? Wir haben uns einmal Gedanken gemacht und haben uns überlegt, dass man das noch mal in einem Diagramm quasi darstellen könnte. Die Motivation muss man schließlich sagen. Es gibt ja diverse Faktoren. Wir haben das mal auf zwei heruntergebrochen einmal egoistische Motive und altruistische Motive. Es gibt noch ein paar mehr, aber wir uns mal auf ein sehr egoistisches Ziel und ich glaube, das ist das was, wo sich die meisten unter ihnen vorstellen würden. Das sind auch bestimmt die Leute, die sich Qu
elltexte angucken, darum Sicherheitslücken finden und das Ganze verkaufen, um sehr schnell sehr reich zu werden. Ja, so kann man vorgehen. Ich möchte allerdings auch gleich die Enttäuschung mildern für all jene, die glauben, dass das wirklich so abläuft. Man kann es so machen. Das Kosten-Nutzen-Verhältnis ist allerdings sehr schwierig, wenn man es wirklich darauf anlegen würde, das aus seinen monetären Gründen zu machen, also aus direkten monetären Gründen. Dann würde ich davon abraten, eher auf Wasser, auf Statistiken und Analysen zurückgreifen. Ich würde stattdessen lieber darauf eingehen Was bringt es einem selbst? Das heißt, was sind die Vorteile von Praktizierung von Code Review für einen persönlich? Und da ist auf jeden Fall ein ganz großer, wichtiger Punkt, dass man seine eigenen Kompetenzen aufbaut. Das ist zum Beispiel auch, wie ich damals noch zu Schulzeiten damit angefangen habe. Ich hatte mich damals schon für Programmierung interessiert, konnte auch kleine Programme schreiben. Ich glaube, dass sich jeder vorstellen können, der auch in die Union gekommen ist. Man fragt sich aber irgendwann dann doch Bin ich jetzt schon gut genug, um das auch im professionellen Umfeld zu machen? So kann ich jetzt nur Programme schreiben, die mich stützen und so ungefähr das tun, was ich mir vorstelle. Oder ist das wirklich hoch qualitativ, was ich hier betreibe? Und auch während des Studiums zum Beispiel man besteht seine Silvester. Aber ist das jetzt wirklich das, was die echte Welt draußen von einem erwartet? Oder fehlt da noch was? Und ich habe mir die Frage damals dadurch beantwortet, dass ich angefangen habe, mir Programme anzusehen, die ich tatsächlich auch selbst einsetze. Das aus dem Umfeld? Ja, nehmen wir erst mal ganz kleine Programme zum Beispiel. Oder wenn für die sagen Wie funktionieren die eigentlich? Man kann sich prinzipiell schon überlegen, was man da tun würde. Aber ist es denn wirklich das, was man auch selbst gedacht hat? Und dementsprechend waren nich
t nur die Kompetenzen auf, dass man versteht, wie diverse Programme funktionieren. Man sieht jetzt vielleicht kleine Beispiele oder auch Beispiele, die man sich im professionellen Umfeld natürlich nicht interessiert. Aber zum Beispiel im Jahre Umfeld, das bringt Feedback. Es gibt bestimmt viele Leute, die das Wort einsetzen, aber wie viele kennen das? Bringt sein Wort wirklich? Das heißt, was passiert in den einzelnen Schritten eigentlich? Das sind eben Dinge, wenn man sich damit auseinandersetzt. Zum Beispiel, wenn man sich den Quelltext ansieht, dass man versteht, was man da anwendet, wie man das, was die Programmierer sich gedacht haben, aber eben auch, dass man, wenn man das für viele Projekte, was man eine deutlich bessere Möglichkeit hat, sich im fremden Code einzuarbeiten und das kann ich auch aus meiner Expertise und Erfahrung dann berichten. Sich in fremden Code einarbeiten kommt sehr häufig vor. Nicht nur, wenn man gerade neu in der Firma kommt oder Kollegen, die einen unterstützen. Es kann auch mal vorkommen, dass man irgendwo ein anderes Projekt reingezogen wird, das man vielleicht als Freiberufler ohnehin ständig wechselnde Gruppe außen vor sich hat. Da will man natürlich dann auch nicht unnötig Zeit verlieren, in dem man sich mal wieder neu einarbeiten muss, sondern dass man auch dort schon eine Routine hat, mit der Maus durchführen kann. Der Spaßfaktor sollte bei dem ganzen Punkt natürlich nicht zu kurz kommen. Dann haben wir es auch schon sehr wichtig gesetzt, weil das kann man alleine haben, aber eben auch in einer Gruppe. Und warum das so ist, darauf kommen wir natürlich an diesem Tool auch noch. Ansonsten haben wir natürlich auch noch was. Auch anderen hilft der Wissensaustausch. Das heißt nicht nur, dass ich mein Wissen weitergeben würde, sondern auch, dass man von anderen natürlich genauso lernen kann. Und darauf beziehe ich mich auch, dass man als Senior Entwickler zum Beispiel durchaus auch von Junior Entwicklern lernen kann. Einfach weil man,
 wenn man vertraut ist mit seinem eigenen Quelltext, man anfängt blind zu werden. Vertraut ist mit seinen Fähigkeiten, dass man anfängt, Dinge zu überspringen, wenn man davon ausgeht, dass das im folgenden Dritten sein wird. Da kann man mindestens in solchen Gruppen immer sehr gut lernen, dass es schon Vorteile hat, auch mal einen Gang runter zu schalten mit anderen, sich den Quelltext noch mal viel gründlicher anzusehen, weil die anderen. Wo sich die Expertise noch nicht haben, andere Blickwinkel Blickwinkel haben. Und dann kommen wir auch zu dem aus unserer Perspektive altruistischen Ziel. Wenn man etwas gefunden hat, dann muss man ja diesen Exploit nicht verkaufen, sondern man kann ja eben entsprechend zu dem Zweck beitragen. Das kann eine Fehlerkorrektur sein, das kann eine Situation sein, wenn man das verstanden hat, wofür das Feld zum Beispiel ist oder wofür das Programm gedacht ist. Und dann ist man eben auch tatsächlich Teil des Open Source Umfelds. Nicht nur, dass man es anwendet, sondern dass man eben auch tatsächlich dazu beiträgt. Und nachdem wir jetzt die Motivation geklärt haben, bleibt natürlich die Frage, wie man das Ganze im Kopfform aufbauen kann. Genau das ist auch die Frage Wie wollen wir dieses Format gestalten? Und zwar. Haben wir so ein paar Probleme, auf die wir eingehen müssen? Erst mal so, wie ich das jetzt gerade erzählt haben, das würde in großen Gruppen schwierig werden. Wir wollen irgendwie eine Umgebung schaffen, in denen alle zusammen miteinander lernen, in der jeder auch mal zu Wort kommt und dementsprechend. Klein müsste die Gruppe auch sein, so das nächste Problem, was wir haben ist Wir wollen auch, dass alle Leute mitkommen. Das heißt, irgendwie müssen wir alle immer einbinden und wir haben uns dann so ein paar Sachen angeguckt. Wir haben kurz überlegt Macht es Sinn, so wie Live Overflow Videos zu produzieren und zu erklären, wie wir diese Schwachstellen gefunden haben? Unser Problem oder was Gefühl damit war so ein bisschen immer
. Das wirkt immer so, als wenn das total einfach ist. Und dieser sehr, sehr lange Prozess, den man manchmal hat, manchmal über Stunden, den können wir damit gar nicht so richtig abbilden. Also waren für uns die Dinge für uns, die das Videoformat schon mal raus, auch wenn das total sinnvoll für eine Person sein kann. Es kann auch total sinnvoll sein, wenn man eine Schwachstelle gefunden hat, selber mal so ein Video zu drehen, weil man manchmal Dinge erst viel besser versteht, wenn man sie erklärt. So einfach für sich selber gut. Die nächste Möglichkeit wäre größere Meetings in Gruppen. Wir wollen nicht das Rad neu erfinden und wir dachten in so einer Open Source Szene Community. Bestimmt gibt es auf jeden Fall schon andere Menschen, die das Ganze genauso machen. Und wir sind auch fündig geworden. Es gab früher mal das OpenBC Daily von Adam Wolf. Der hat eine Stunde am Tag im Chat einfach geschrieben, was er gerade sich bei einer Review denkt, die er gerade macht. Und im Vorfeld zu unserem Tag haben wir auch mal Edinburg angeschrieben und gefragt Hey, wir wollen jeden Tag machen, wir haben so eine kleine Gruppe. Was meinst du denn? Was wäre denn Format, was sinnvoll ist? Wie würde man viele Menschen erreichen? Kann man das vielleicht skalieren? Und seine Antwort darauf war Vielleicht könnte man Tristram machen, wo man so drei Leute zusammen packt, die in einem Stream gemeinsam eine Video machen, reihum und erklären, was da gerade passiert und was für Gedanken sie sich gerade machen. Für mich persönlich wäre das nichts. Ich bin halt so. Ich schalte dann häufig ab, wenn ich nicht eingebunden werde und dann macht es so ein 2 3 Stunden langes Video doch sehr schwierig zu folgen. Es gibt aber auch noch ein paar andere Menschen, die es machen, zum Beispiel den Code Reading Club. Die hatten aber auch genau das gleiche Problem. Sie dachten sich Okay, wir machen Code für den Club. Kann ja nicht so viele Leute sein, haben das in einer Session angeboten und BÄM hatten beim erste
n Termin gleich eine viel, viel zu große Gruppe. Das heißt, sie mussten es dann auch begrenzen, so dass nicht jeder zu jedem Termin konnte. Was ist die Konsequenz, die wir für uns daraus gezogen haben? Na ja, der Zeitpunkt, an dem wir uns diese Frage gestellt haben Was für Formate gibt es eigentlich? Zudem hatten wir schon so ein bisschen rausgefunden, was das Format ist, was für uns funktioniert. Und vielleicht ist es auch ein Format, das für euch funktioniert. Wie sieht also bei uns eine coole Review aus? Koroljow 3 hat 2 Wave, haben wir es mal genannt, P3 hat 2 ist unsere ZDF Gruppe in Hamburg und inzwischen sitzen wir schon 3 Monate zusammen und das ganze hat angefangen Animate Publikum der irgendwie schrieb Hey ich mach voll viel Kohle wie ich es in meiner Freizeit und ich würd irgendwie gern mit Menschen zusammen das machen und vielleicht Menschen das auch erklären. Hat nicht jemand Lust? Und am Anfang hatte er auch gar nicht so erwartet, dass das so einschlägt. Und jetzt machen wir es schon 3 Monate. Am Anfang haben wir uns immer an allen festen Termine der Woche getroffen. Inzwischen treffen wir uns an zwei festen Termin. Ganz wichtig zu unserer Vorgehensweise zu sagen ist Unser Ziel ist nicht. Ähm. Schwachstellen zu finden. Es ist auch ein Ziel. Aber unser eigentliches Ziel ist, zu lernen, wie man an so eine Kultfigur herangeht. Also wie gehe ich damit? Todesraten? Welche Ressourcen kann ich benutzen? Wo finde ich Dokumentation? Und deswegen machen wir es auch so, dass wir häufiger mal die Software Projekte wechseln. Angefangen haben wir zum Beispiel mit Less. Das liegt ganz einfach daran, dass wir nicht wussten, wie wir mit sicherheits kritischen Dingen umgehen wollen, wenn wir welche finden. Und die Wahrscheinlichkeit, weil es war für uns aus unserer Sicht relativ gering. Und deswegen haben wir damit angefangen. Und wir haben auch ein paar Dinge gefunden, was irgendwie sehr gut für die Motivation war, dass man dann doch auch was findet und das nicht Stund
en dauert. Und der liebe Marc nur man hat unsere Änderungen auch gerne angenommen. Inzwischen sind wir bei Open Access haben. Ein weiterer Grund, warum wir unsere Projekte so häufig wechseln ist, dass nicht jeder immer kann. Wenn man sich zwei Mal die Woche trifft, ist das ganz schön häufig und irgendwie haben wir auch alle noch ein richtiges Leben und Job. Und das heißt, es kann nicht an beiden Terminen immer jeder da sein. Und deswegen wechseln wir die Projekte so, dass Leute, die dann halt sozusagen neu einsteigen oder spontan dazukommen. Es ist nicht so schwer haben. Ihr kennt das alle, wenn man sich in so eine neue Codebasis einarbeitet. Es dauert relativ lange und b ist es dann halt auch so, dass wenn man dann neu dazukommt und die anderen schon viel weiter sind, es schwierig ist, sich da zurechtzufinden. Wie gehen wir grundlegend vor? Also wir treffen uns immer donnerstags abends und sonntags nachmittags und dann bringt Palladium uns meistens ein Projekt mit. Gerade ist es Open End. Davor war alles am und dann. Gucken wir uns das an und das machen wir so einer Scherzer ins Screen. Und dann gehen wir wirklich Zeile für Zeile den Code durch und die Person, die den durchgeht, erklärt, was da gerade passiert, dann springen wir in Funktion und so weiter und so fort. Und was uns irgendwie ganz wichtig ist, dass jeder drankommt und dass wir auch jeden zu Wort kommen lassen und dass auch jede Frage in Ordnung ist. Wir haben auch ganz unterschiedliche Wissensbestände. Also ich studiere noch. Ich habe jetzt nicht die große Programmier Erfahrung mit C. Wir haben auch Leute dabei, die viel, viel mehr Erfahrung haben, auch viel, viel mehr Wissen über Betriebssysteme. Aber wir schaffen halt uns so eine Umgebung, in der jede Frage in Ordnung ist. Und häufig bringt diese Fragen uns auch zu neuen Sachen, die den anderen vielleicht auch vorher nicht so klar war. Das einfach mal zu unser Vorgehensweise. Und jetzt hoffen wir natürlich, dass ihr euch alle gequetscht haben und ihr
 eine eigene Gruppe gründen könnt oder wollt. Könnt du dir das auf jeden Fall. Aber vielleicht bist ja noch nicht so richtig. Wie soll ich da rangehen? Wie gehe ich mit Uran und Palladium? Hat mal ein bisschen für euch gesammelt, wie man da rangehen kann und wie man am besten vorgehen kann. Genau. Also man kann sich das vorstellen, man sitzt da gemeinsam als eine Gruppe, hat sich für irgendein Projekt entschieden und fragt sich Was macht man mit einem Projekt? Das können natürlich durchaus mal 10000 sein. 100000 sollen oder mit dem Bus können auch noch weitaus mehr Zahlen sein. Das war natürlich erst mal als Empfänger völlig erschlagen. Wie geht man daran, wenn man nicht gerade einen Entwickler dabei hat, der etwas erklären kann? Ist natürlich umso schwieriger. Wir haben da auch uns in der Gruppe schon Erfahrungen gesammelt mit verschiedenen Ansätzen. Ein Ansatz, der klingt es vielleicht ein wenig abstrus, aber er ist tatsächlich auch sehr gut. Das ist, man sortiert sich einfach die Datei und man geht alphabetisch geordnet durch. Oder man sortiert sich die Dateien nach Größe und geht dann untereinander durch. Das hat natürlich zur Folge, dass man irgendwo reingeworfen wird. Man hat überhaupt kein Verständnis dafür, was an konkret dieser Stelle passiert. Und das ist dann eben auch von dieser Vorgehensweise her der große Vorteil. Das heißt, man weiß nicht, wo man ist. Man hat nur den Quelltext vor sich und man muss anhand des Textes, den man gerade vor sich hat, erahnen oder eben erarbeiten, was das Ganze soll. Und das hat den großen Vorteil, dass ich nicht davon geblendet werde, was ich glaube, was der Quelltext tun soll, sondern ich muss anhand des Quelltext herausfinden, wofür er gedacht ist. Und damit kann man auch vergleichsweise schnell Diskrepanzen finden. Das heißt, ich gucke mir den Quelltext an, ich glaube, ich weiß, wofür früher da ist und merke, dass das, was ich glaube. Wofür das aber überhaupt nicht mit dem übereinstimmt, was ich sehe. Das heißt, ich kan
n bei diversen Funktionen, obwohl ich keine Ahnung habe, wofür sie wirklich da sind, Raumsituation erkennen, bei denen womöglich, wenn da eine ein riesiger Wert eingetragen werden sollte, dann auf einmal etwas nicht funktioniert oder ein kleiner Wert oder vielleicht der Sprecher gar nicht ausreichen würde und dergleichen. Und das würde bedeuten, dass ich mir überlege, wie komme ich denn genau zu dieser Funktion, die ich da gerade gefunden habe? Und dann heißt es eben sich da entlang hangeln. Wenn es ein Programm zum Beispiel überlegen, wie muss ich dann das Programm aufrufen, das ich genau dort lande, wenn ich eine Bibliothek vor mir habe? Was sind die Randbedingungen, die eingehalten werden müssen, damit genau das passiert? Und auf die Weise hätte ich dann auch gleich die Möglichkeit herauszufinden. Ist der Quelltext vielleicht überhaupt erreichbar, weil ein anderes Vorgehen wäre? Zum Beispiel bei einem Programm, das ich den Einstiegspunkt Einstiegspunkt wäre zum Beispiel nicht meine Funktion, wo sie meine Methode ist. Und von dort aus könnte ich sie jetzt dabei gehen und mir auch genau überlegen. Zum Beispiel Ich rufe Cat auf mit einer Datei, dass ich dann gucke, in welchen Code Fahrt geht, nämlich durch. Das heißt, ich spiele womöglich den Dialog und gehe Schritt für Schritt durch, überlege mir, was passiert, was passieren könnte und kann dann anfangen, so bisschen hin und her zu bewegen. Was wäre denn, wenn ich jetzt an der Stelle vielleicht doch dieses oder jenes tun würde? Was passiert, wenn ein Eintrag auftaucht, was auch immer man sich nicht vorstellen kann? Oder was passiert, wenn ich eine Falle tappen möchte und die stirbt wie reagiert? Das sind eben Dinge. Wenn ich so vorgehe, würde ich im Vergleich zu dem Durchgehen von A bis Z niemals auf totem Code stoßen, weil es gäbe ja für mich nie ein Grund, in einer Funktion zu springen, die nicht erreicht wird. Und so könnte man im vorherigen Schritt eben auch erkennen, dass eine Funktion vielleicht gar nicht meh
r genutzt wird. Und man könnte dann eben auch toten Code direkt ansehen. Eine andere Sache, die man eben bei beiden Vorgängen haben kann, ist, dass man irgendwann vielleicht mal was findet, was nicht richtig programmiert wurde. Und dann hat man natürlich einen Fehler und kann es auch beheben. Und dann kann man sich auch die Frage stellen Ist das wirklich die einzige Stelle weltweit, die irgendwann mal so falsch verwendet wurde? Und die Antwort ist natürlich mit großer Wahrscheinlichkeit Nein. Das heißt, ich kann versuchen, in anderen Programmen nach genau diesem gleichen Muster zu suchen, um dann auch für andere Programme genau diesen Fehler auszumerzen. Das ist zum Beispiel ein Vorgehen, was PC Project gemacht wurde. Das heißt, sobald irgendwo in ein Programm ein Fehler gefunden wurde, hat man in der restlichen Codebasis geguckt, wird das vielleicht auch noch falsch angewendet und dadurch kommen neue Ideen zustande, wie zum Beispiel das Array, das Trivial, Copy, String, Copy, String, Thunderbolt Konvertierung und so weiter und so fort. Und somit könnte man eben auch bei gehen und sich zum Beispiel die Historie eines des Projektes angucken. Um herauszufinden, was wurde denn in der Vergangenheit eigentlich alles behoben, um ein Gefühl dafür zu kriegen, was dem prinzipiell irgendwann früher mal Fehler waren und ob die heute vielleicht immer noch auftauchen in anderen. Die letzte Möglichkeit, die wir euch so auf diesen Tag mitgeben wollen, ist dann auch noch die Idee, sich eine Spezifikation durchzulesen. Zum Beispiel ein Schnittstelle oder aber eben zum Beispiel von einem Audio Format oder Archivierung Programm zu gucken. Wie soll denn das Programm prinzipiell funktionieren? Was ist die Idee dahinter? Um dann zu gucken Haben denn die Programme, die ich nutze, denn auch wirklich alles bedacht, was der Spezifikation? Man könnte es bestimmt aus diversen Beispielen der Spezifikationen teilweise uneindeutig geschrieben sind, sie Interpretationsspielraum lassen. Und genau d
as sind die Punkte, an die man auch wieder ansetzen kann, um zu gucken Was macht denn das Programm X, y, z, wenn es auf diese Situation trifft? Was macht ein anderes Programm in der Situation abgleichen? Gucken kann man da vielleicht genau in den Stellen eben nachfragen. So, wenn man sich das vorstellt, dass man eine Stelle gefunden hat, die mir schon sehr interessant aussieht und man glaubt, dass sie einen Fehler hat, dann wäre es auch immer ganz gut, einen Fuß auf ein Taxi zu fahren. Das heißt, man guckt wie muss ich das bekommen? Aufrufen oder eben die Bibliothek, damit genau dieser Fehler erreicht wird, weil man zum einen für sich einfach mal machen. Herzlich willkommen zu unserem Talk Let's Review Code. Dieser Tag ist aus einem Sonntagnachmittags Gespräch konnte das heißt, die, die auch wieder kamen, um zu gucken, was macht denn das Programm x y, z, wenn es auf diese Situation trifft? Was macht ein anderes Programm in der Situation abgleichen? Gucken kann man da vielleicht genau in den Stellen eben nachfragen. So, wenn man sich vorstellt, dass man eine Stelle gefunden hat, die schon sehr interessant aussieht und man glaubt, dass sie einen Fehler hat, dann wäre es auch immer ganz gut, ein Hut auf Konzept beim sogenannten Kiosk zu schreiben. Das heißt, man guckt wie muss ich das bekommen? Aufrufen oder eben die Bibliothek, damit genau dieser Fehler erreicht wird, weil man so ein für sich selbst hat, als Anfänger und ja auch als Erfahrener sich sicher gehen kann, dass das, was ich da gefunden habe, auch wirklich ein Problem ist und nicht doch womöglich irgendwo vor ein sich als Mechanismus gegriffen hat, der es vermeidet, dass ich dort überhaupt hinkommt kann. Und mit diesem Proof of Concept kann man dann nämlich auch wunderbar ein Buch schreiben oder vielleicht auch schon sich selbst ein paar Fragen und dann ein Fest oder ein vorzustellen, bei dem man eben genau sagen kann Lieber Entwickler oder Trainer. Ich habe festgestellt, wenn man das Programm wie folgt nutz
t mit Freunden, Eingabe, Daten, dann gibt es zum Beispiel ein Programm, Absturz oder Schlimmeres. Ich kann wirklich Code ausführen oder was auch immer. Dass man dann immer sagen kann Das sind meine Daten, das ist mein Vorgeschlagener, wie man es finden könnte. Und ja, dann kann der Autor oder der Trainer sich entscheiden, das zu machen oder eben nicht zu machen. Gerade eben aber auch der Punkt, wenn es sicherheitsrelevant ist. Das heißt, wenn man persönlich schon die Erfahrung hat, zu sagen, das kann durchaus negative Konsequenzen haben, wie zum Beispiel Privilegien, Ausbeutung oder dass ich auf einmal in einem Service dann die Daten eines anderen Plus aus einem sehen kann, dann sollte man natürlich solche Dinge nicht unbedingt öffentlich machen. Und das war auch der Grund, warum wir uns in der Gruppe noch nicht ganz sicher waren, wie wir mit Sicherheits Problem umgehen wollen. Sondern man sollte die Maintainer dann entsprechend auf privatem Wege kontaktieren oder über ein Backbone. Die Broker, je nachdem ob man das machen möchte, ist natürlich jedem selbst überlassen. Auf jeden Fall sollte man vorsichtig mit solchen Dingen umgehen und das wären so die Punkte, die uns wichtig wären, um ob sagen wie so ein Code ausgeführt wird. Weil das jetzt natürlich in Anbetracht der Zeit unseres Vortrages und auch allgemein der Audiospur nicht für jeden hilfreich ist, haben wir doch mal links zusammen geführt. Da haben wir zum Beispiel von wo aus den Code Review Guide, der ist vergleichsweise zentriert auf Webservices. Aber natürlich muss das auch kein Problem sein. Gerade wenn man im Wettbewerbsumfeld arbeitet, ist das natürlich immer ganz gut zu wissen Wie gehe ich womöglich auf Quelltexte meinem eigenen Unternehmen um? Wie komme ich mir zum Beispiel Frameworks an, die ich nutze? Was sind da die Punkte? Dann die Idee für die Kontur. Das heißt, die, die dann vielleicht auch hin und wieder mal einen tollen Obulus dafür haben möchten, was man da so betreibt. Selbst verwerflich kön
nte man so zum Beispiel gucken, was Google zu dem Thema schreibt. Google hat ja auch ein tolles Beispiel zusammengestellt, wie sie in ihrem Entwicklungs Umfeld Reviews durchführen. Das heißt, dass sind natürlich die Change Reviews. Das heißt zwar die Entwickler, aber miteinander zusammen und miteinander zusammen und gucken was soll ich was gespielt werden soll ging, war im Code Review eher einem Code oder ich gucke ein bestehendes Projekt an und dann die Frage, die wir schon angesprochen hatten bis was für die Gruppen. Da haben wir einmal bei dem Drittletzten auf dem anderen, die den Verweis auf das OpenBC Daily vom Erfolg dort hat das zum Beispiel auch noch mal nicht nur seine ganzen Ergebnisse festgehalten, was er so in dem Zeitraum gefunden hat, sondern eben auch seine Gedanken niedergeschrieben. Das kann man sich wunderbar durchlesen. Dann haben wir den Cross Code Reading Club, das ist der, der sich auf den Workshop bezieht, dort auf den, soweit ich weiß, Ross Compiler Code, je nachdem wo sie gerade sind und dann natürlich noch der Code Meeting klappt. Das wäre das Controlling. Und auch dort kann man sich auch wunderbar an die wenden, wenn man zum Beispiel Ideen hat. Ja, ich finde das klingt alles super, weiß aber nicht so recht. Gibt es da schon vielleicht eher welche Gruppen wie sieht so aus, die haben auch eine gute Kontaktmöglichkeit per E-Mail. Das hat man einfach. Ja, ich interessiere mich für das Thema womöglich in dem unteren Bereich. Oder ich brauche vielleicht Hilfe bei der Umsetzung in meinem Unternehmen, die. Auf jeden Fall dann auch sehr gut. Heute. Genau. Und dann? Heute gebe ich noch mal an uns überlegt haben Wie geht man jetzt wirklich konkret vor? Genau. Vielleicht noch eine kleine Anmerkung am Rande Wenn wir irgendwelche Bugs bei Bekannter einreichen, sammeln Geld für Pizza total super Sache. Das ist etwas, worauf wir uns alle einigen können. Vielleicht auch Mate. Aber dann gibt es auf jeden Fall keinen Streit um das Geld, weil Essen und Mate i
mmer ganz gut. Genau. Unser Appell an euch ist Wenn das jetzt alles ganz cool für euch klang oder ihr denkt so Ja, ich habe mir das vorher mich das vorher nicht getraut, weil ich dachte, ich kann eigentlich nichts. Bildet Banden, sucht euch andere Menschen in eurem Umfeld. Vielleicht habt ihr Leute, mit denen ihr euch sowieso total gut versteht, mit den ihr euch wohlfühlt, mit denen du das zusammen machen könnt. Kann in eurem Hacker Space sein. Das kann in der Uni sein, oder? Leicht würdet ihr einfach drüber und ihr findet Leute, mit denen er das zusammen machen könnt, dann ganz wichtig um das auch durchzuziehen. Durchzuziehen ist immer findet einen festen Termin und wirklich eine Uhrzeit, weil man volle Terminkalender hat oder dann doch häufiger mal Dinge unerwartet sind. Ist es einfacher so ein Ding durchzuhalten, wenn man sich einen festen Termin dafür sucht hat dann gar nicht so unwichtig ist. Einigt euch auf eine Programmiersprache. Das kann eine Programmiersprache sein, die ihr total gut kennt. Es ist auf jeden Fall sinnvoll, jemanden dabei zu haben, der sehr, sehr sicher in dieser Programmiersprache ist. Einfach weil man manche Sachen gar nicht so sieht. Und wenn dann Fragen aufkommt, braucht man häufig auch jemanden, um darüber zu sprechen. Also das ist auf jeden Fall ein sehr wichtiger Punkt. Also wenn ich jetzt zum Beispiel an meiner Uni eine coole Gruppe gründen wollte. Wir machen noch die gesamte Ausbildung mit Java, dann würde ich wahrscheinlich eine Gruppe gründen, in der wir das tun, weil ich wüsste Okay, die Wahrscheinlichkeit, dass ich Leute finde, die das richtig gut können, ist relativ hoch. Und wenn dann Leute zu uns stoßen möchten, die noch nicht so viel programmieren, Erfahrung haben oder noch nicht so sicher in dieser Programmiersprache sind, dann könnten wir denen auch helfen. Das heißt da auch immer ganz wichtig Wenn ihr Leute mit anderen Wissensstand dabei habt, integriert die wirklich. Lasst sie den Code vorlesen. Lasst sie klären, was sie
 auch Fragen stellen. Wenn sie irgendwas nicht kennen, das ist überhaupt kein Drama, ist es nur wichtig, dass sie es lernen. Dann sucht euch ein cooles Projekt. Das kann man mit unterschiedlichen Motivationen tun. Also entweder sagt man Okay, ich benutze keine Ahnung. Andauernd gibt. Also gucke ich mir jetzt den Code von gibt an, weil ich weiß ja, wie das Tool funktioniert. Und jetzt versuche ich mir den Code dazu zu verstehen. Oder man sagt Okay, ich möchte jetzt irgendwie motiviert bleiben. Ich suche mir jetzt ein Tool, was vielleicht ein paar Fehler hat oder wo man vielleicht mal so Kleinigkeiten finden kann, um dabei zu bleiben. Das ist so ein bisschen so, dass man bei der Projekt Auswahl darauf achten kann. Dann kann man natürlich auch noch den Faktor mit einbeziehen, den Pfeil oder ich vorhin schon erwähnt haben. Man muss sich noch nicht sicher, wie man mit sicherheitspolitischen Dingen umgehen will. Wir werden uns das aus, was weniger sicher als kritisch ist. Vielleicht sucht man sich auch irgendwas aus, wo ihr Community dahinter ist. Das heißt, wenn ihr irgendwas gefunden habt und jemanden braucht, ihr die fragen könnt, dann könnt ihr dann auf jeden Fall fragen. Dann habt auf jeden Fall Geduld. Das ist ein ganz wichtiges Thema. Also mit Geduld meine ich nicht so Geduld, damit das bis das alles anläuft, sondern wirklich, wenn ihr dann damit anfangt und euch zum Beispiel. Wir machen donnerstags abends immer zwei Stunden am Tag viel Geduld mit euch habt. Ihr werdet nicht in den ersten zwei Stunden vielleicht schon was finden. Bei uns ist es manchmal so Palladium hat dann schon was gefunden. Sagt dann Ja hier. Da. Da ist irgendwas. Und dann fangen wir aber noch mal sozusagen ganz von vorne an, gucken uns das an und wir kriegen dann manchmal so ein bisschen Anschub Hilfe. Dadurch gehen dann einige Sachen auch schneller. Aber wenn wir uns auch so alleine was angucken. Wir brauchen manchmal drei oder vier Termine, bis wir was gefunden haben. Bis dann auch alle das 
verstanden haben. Manchmal poppen dann irgendwie neue Fragen auf. Also so coole Reviews und Fehler in Code Videos finden ist jetzt nicht so eine Sache, wo man einfach so in einer Stunde in so ein Video gehangen hat und dann so war. Ja, wir haben jetzt hier alles fertig und alle Fehler gefunden und so weiter und so fort. Weil man macht sich ja dann auch die Mühe machen einen auf Konzept, dann fällt vielleicht auf, dass etwas ganz anderes falsch ist oder irgendwie doch was komisch oder man noch auf einen alten Fehler gestoßen ist. Und macht euch auch die Mühe dann euch auch zu überlegen, gegebenenfalls wenn es nicht zu viel Aufwand ist, wie man das lösen kann. Weil gerade in OpenSource Projekten sind es nicht so viele Menschen, auf deren Rücken das getragen wird. Und die freuen sich im Zweifelsfall, wenn ihr fix auch gleich mit anbieten könnt und ihr habt dann auch was dazu beigetragen. Die letzten beiden Sachen im Zweifelsfall nach, wenn ihr in eurer Gruppe niemanden habt. Vielleicht kennt jemand jemanden, der jemanden kennt, dann frag den, wenn ihr euch unsicher seid und es ist auch nicht schlimm. Dinge falsch zu machen oder Fragen zu stellen. Eigentlich habe ich die Erfahrung gemacht, dass ist immer jemand da, der euch gerne um das Problem erklärt oder die Frage beantwortet, aber formuliert vorher eine Frage und stellt sie auch klar. Und zu allerletzt wie exzellent. Alle sollen sich wohlfühlen und das heißt es wird öffentlich so doof es klingt, niemand ausgelacht. Es wird auch nicht gesagt Weißt du das nicht? Weil das dazu führt, dass Leute nicht wiederkommen und b Leute auch irgendwie keine Lust mehr haben, sowas zu lernen. Und es ist eigentlich wichtig, dass wir uns alle damit beschäftigen. Und wenn ihr Lust habt, dann solltet ihr auf jeden Fall die Möglichkeit bekommen, das zu machen. Und ich kann aus meiner Erfahrung sagen, mich bringt es unheimlich viel weiter. Einfach darin, Dinge zu verstehen, zu verstehen, wie Software funktioniert und nicht einfach nur zu 
programmieren, sondern mir auch mal Gedanken über andere Dinge zu machen. Damit bleibt mir nur zu sagen. Wir lieben Katzen, weil wie cool Cat hier also geht los, geht so zum Code Reading Club gründet einen für den Club. Guckt euch Open-Source-Software an, macht euch Gedanken. Und wenn ihr irgendwie Fragen habt, gerade so in dem Bereich. Wir haben hier eine Gruppe gegründet und bekommen jetzt hier gerade nicht weiter. Hier unten einmal mein Twitter Handel und einmal die ZDF Gruppe in Hamburg. Ihr könnt mich einfach auf Twitter erreichen und nachfragen. Als Kritikos findet ihr mich auch auf GitHub, wenn ihr auf der Suche seid und was mir gerade noch einfällt, dann haben wir nämlich noch gar nichts gesagt. Ist wie connected man sich eigentlich? Also für uns hat sich rausgestellt, dass das beste Ding eigentlich Gruppen Kreuz in Signal sind. Ihr könnt jetzt auch einen kleinen Screen scheren. Das ist sehr praktisch. Ansonsten benutzen wir, wenn wir nicht geschlossen in unserer Gruppe sind, sondern mal Menschen von außen dazu zu Besuch. DC Ähm, teilen wir uns noch was zu unserem super coolen technischen Komplex sagen mit einem ich kann nur sagen gerade bei Videokonferenzen. Ich glaube mit der Pandemie hat das jetzt jeder kennen gelernt. Läuft nicht immer so super. Gerade auch was den Ablauf angeht. Man kann zum Beispiel auch wunderbar, wenn denn die Apparate recht gering ist. Zum Beispiel beim Zerbröseln, auf den sich Animate verwenden, dort eine Tamoxifen aufbauen. Dann kann man zum Beispiel machen, dass nur einer das Tunnel bedienen darf. Alle anderen können nur lesen oder aber alle dürfen rein fragen. Dann muss man sich natürlich trotzdem nochmal koordinieren. Wer schreibt denn jetzt gerade was? Weil ansonsten ist es wirklich erst, wenn viele Leute an einer Tastatur sitzen. Aber auch das wäre durchaus möglich und würde ja heute auch Spaß machen. Genau das dazu. Und dann sind wir hier mit durch. Hoffen, dass ja schon das erste Repro geklont hat und es auf eurer Konsole o
ffen habt und freuen uns jetzt auf eure in unserer Community Session. Ab. Das haben wir bisher nicht. Vielleicht sollten wir mal mit Bianca Kasse sprechen, wie das so ist mit Kommunikation mit der Bundesregierung. Das ist tatsächlich gerade noch so unser Privat Projekt. Wir sind gerade ganz hin und weg von den ganzen Reaktionen. Also vielleicht schaffen wir noch eine kleine kulturelle Jugendbewegung zusammen. Hallo Jungs, dass du ja gerne. Also die Tester, die sollten im Idealfall ja bei einem PUBLIQUES zum Beispiel noch mal mit reingeschrieben geschrieben werden, um zu beweisen, dass es sich um ein Problem handelt. Ich habe das auch schon häufig genug mitbekommen, dass es heißt Ja, danke für die, für den, für die Fehlerkorrektur. Aber schreib doch mal ein Testfall. Das heißt, man sollte es, wenn man es denn hinzufügen kann, hinzufügen und ansonsten hoffen, dass der Narayen unterstützt. Es gibt ja auch diverse Tests Frameworks, da muss man sich noch einarbeiten. Also es ist eine gute Frage. Ich glaube, es ist. Es ist genauso, wie wenn man irgendwie wissenschaftliche Arbeiten schreiben lernen muss. Das hilft immer viel Code zu lesen von anderen und ein Gefühl dafür zu kriegen, wie man Dinge lösen kann. Man kommt aber trotzdem nicht drum herum, sich eigene Projekte zu suchen und auch wirklich selber zu programmieren, weil man nur von Programmieren besser im Programmieren wird. An einigen Stellen. So handhabe ich das zumindest. Ich weiß nicht, ob da noch eine andere Meinung zu hat. Also die, welche man auf jeden Fall mindestens eine Form von Feinschliff durchzuführen. Das heißt, dass ich, wenn ich mir die Historie von Projekten ansehe, um zu lernen, warum haben die sich für diverse Dinge entschieden? Wann kam die Änderung rein und warum? Das heißt ja, ich würde es vorschlagen. Wenn man die Grundlagen beherrscht, dann kann man sich auf jeden Fall verbessern. Und reines Review, um es zu erlernen, würde ich nicht empfehlen. Wir haben gerade Probleme mit unserem Herald. Wi
e vorhin schon, deswegen und nach einer kurzen Unterbrechung geht's weiter. Ich würde trotzdem noch an die Frage anschließen, nämlich ob es eine Hoy, eine Sammlung mit häufig gemachten Fehlern gibt. Genau. Gibt es eine Sammlung mit häufig gemachten Fehlern? Ich würde jetzt einfach mal die Kurve nehmen, den. Ansonsten die Dinge, auf die ich verweisen würde, wäre over. Das heißt, dass die Top Ten zum Beispiel relativ gut aufzeigen, was es für Probleme gibt. Auch fast schon eine kurze Suche nach der Programmiersprache, der Wahl und Bugs dürfte glaube ich sehr viele derartige Listen aufführen. Ansonsten, wenn es um das wäre auch noch möglich, die man Pages zum Beispiel auf Linux oder auf dem jeweiligen System haben da ab und zu mal Notes oder andere Hinweise, was dann mit einer bestimmten Funktion so schieflaufen kann. Danke schön, haben wir wieder Herald Audio. Die haben wir bisher ignoriert. Sollen wir vielleicht noch hinzufügen? Allerdings. Ja, wir versuchen uns eher auf den Quelltext zu konzentrieren, den wir tatsächlich nutzen. Und da sind die Textdateien meistens nicht mit drin. Sie haben immer noch Audio Probleme mit unserem Herald. Einen Moment bitte. Die Frage war, wenn der gleiche Fehler wieder gemacht wird in einem anderen Projekt. Das ist einfach, wenn ich eine falsche Funktion verwendet habe. Aber wie mache ich das? Wenn ich einen Fehler gefunden habe, der ein Programmier Prinzip verletzt hat, weiß ich, es ist nicht mit Steuerung F quer über alle Dateien suchen kann. Wo ich das schon mal hatten, hatten wir das schon mal bei Aldi. Ich habe ein Projekt gesehen, das im Google Open Source Bereich dafür vorhanden ist, es mir der Name entfallen, was ich auf jeden Fall empfehlen kann. Es geht fast schon in Steuerungen Richtung aber Code Search Punkt Debian punktet. Das ist eine Internetseite von Debian Projekt, bei dem man wunderbar in allen Texten suchen kann. Da kann man auch reguläre Ausdrücke eingeben und uns irgendwann die Richtung bekommen. Kann ich das empf
ehlen? Die Beispiele dafür als Audio wäre zum Beispiel in C. Es geht zum Beispiel, das heißt übersetzt einlesen. Sobald man die Funktion hat, kann man sich die nächsten Zeilen dann auch meistens angucken und man wird wohl irgendwas finden. Das heißt, es ist immer noch ein bisschen Aufwand, den man da rein treibt. Google hat auf jeden Fall noch mal deutlich bessere. Ja, es ist so ähnlich wie reguläre Ausdrücke, die man anwenden kann. Aber vielleicht kann ich ja noch mal irgendwo. Das Nachrechnen ist wiedergefunden. Ich vertrete das dann gerne und dann könnt ihr das auf meinem Twitter-Account finden. Ist unser Herald jetzt wieder da? Wir versuchen noch mal einen Audio Anlauf. Das klingt alles nach ich. Ein fremdes Programm kennen, arbeitet ihr nicht zusammen und macht bei jedem Commit auch gleich ein Video? Ich glaube, ich verstehe die Frage nicht so gut. Ich versuche mal so zu antworten, wie ich sie verstehe. Also was wir in unserer Gruppe machten ist ja keine Open-Source-Software schreiben, sondern wir nehmen uns nur Open-Source-Software vor und reviewen die. Und klar, wenn wir was gefunden haben, dann schreiben wir auch ein Fix dazu und Proof of Concept und entsprechenden Pull Request. Und natürlich, bevor wir das diesen vorweg feststellen, gucken wir uns das in der Gruppe noch mal genauer an. Aber ich würde das jetzt nicht unbedingt als Review schimpfen. Review tun wir es dann, wenn der Rest von Maintainer abgelehnt wurde. Aus unterschiedlichen Gründen oder irgendwas gefällt es, dann schreiben wir es auch manchmal noch mal neu. In der Regel gibt es dann das Projekt, das wir uns gerade angeguckt haben mit den wie Quests, da sind dann die relevanten Punkte drin. Ansonsten haben wir bisher das noch nicht gemacht. Sollte da Interesse bestehen, können wir natürlich gerne mal darüber nachdenken. Wir machen das tatsächlich im Moment so, dass wir nur eine Person haben, die den Bildschirm schert, und wenn man noch mal individuell an seinem eigenen Gerät mitarbeiten möchte,
 dann macht man das in der IT, seiner Wahl. Wir sind alle ziemlich harte User. Das ist nicht unbedingt ein Einsteiger freundlich, aber an der Idee sollte es in der Regel nicht scheitern. Und wenn es dann irgendwie codiert oder was auch immer euch besser gefällt ist, kann man das auch gut benutzen. Ich würde da sonst vielleicht noch nicht ganz bei der Sache anmerken. Die gleiche Umgebung ich würde es sogar bevorzugen, wenn es möglichst unterschiedliche Umgebungen sind, weil diverse Fehler zum Beispiel nur auf 64 Umgebungen nur erscheinen, wenn bestimmte Bibliotheken im Einsatz sind. Das heißt, wenn das divers sein kann, dann sollte das möglichst divers sein. Das macht vielleicht die Kommunikation teilweise schwieriger, aber ermöglicht auf jeden Fall deutlich besser Proof of Concept oder andere Tests auszuprobieren. Ich würde ja sagen einfach mal machen. Also ich bestehe schon fast darauf, dass wir das in mindestens einem beruflichen Umfeld tun. Es hilft deutlich gerade ja, wer sich vielleicht durch unseren Tod dazu inspiriert gefühlt hat, es mal wieder durchzuführen, wird feststellen, wie viel Aufwand es teilweise ist, sich in die unterschiedlichsten Styles der jeweiligen Projekte ausarbeiten. Und wenn das alles gleich wäre, würde es die Sache noch mal deutlich einfacher machen. Ja, eigentlich schon. Das ist immer ganz lustig, gerade so Coates Day CSD Convention, wenn das so pre Tschernobyl Code wie er sagt, es sind uns auch ganz wichtig und manchmal ist es auch höchst verwirrend sich erst mal da rein zu denken und dann auch noch die Sachen, wenn man sie fix im richtigen Style zu fixen. Hören wir herrschen wieder nicht. Okay, die Frage war, wie wichtig uns das sei, Konventionen sind und wie, was wir zu Clean Code denken. Das fand ich die beiden Fragen, die Palio mich und ich beantwortet haben. Ich guck mal kurz, dass ich die nächste Frage zu fassen kriege, sei denn es jetzt wieder zu hören. Am. Setzt. Ich hoffe, man kann mich wieder hören. Setzte Holst Code Analyse e
in. Nee, das machen wir ganz bewusst nicht, weil wir sozusagen, auch wenn länger dauert, unseren Fokus darauf haben zu verstehen, was da wirklich passiert. Und deswegen nutzen wir außer Palladium als unser wandelndes Lexikon keine Tools der Analyse. Geht es beim Review nur darum, Bugs oder potenzielle Schwachstellen zu finden oder auch etwas kürzer oder schneller zu machen? Und habt ihr da praktische Beispiele? Prinzipiell geht es darum, erst einmal genau Fehler zu finden, aber wenn uns auffällt, dass man das irgendwie effizienter machen kann, dann müssen wir das häufig auch. Mir fällt jetzt gerade kein gutes Beispiel dafür ein, da müsste ich glaube ich mal in meiner Politikwechsels gucken. Es sei denn, du hast jetzt gerade was aus dem FF Palladium. Habe ich jetzt so nicht, was wir da mal gemacht haben. Wenn es um die Unterscheidung geht nur Bugs beheben oder auch Performance Optimierung. In beiden Fällen wäre es wichtig aufzeigen zu können, dass das Problem oder die, ja die Performanz wirklich in Mitleidenschaft gezogen ist. Ich halte mich meistens von Performance Optimierungen zurück. Schon fast absichtlich, weil das relativ schnell in Diskussionen ausartet. Und da ist dann immer die Frage wie gut kann ich das mit einem Maintainer klären? Gibt es darüber wirklich eine vernünftige Grundlage, auf den man arbeiten möchte? Mein Beispiel Wenn ich sage meine ist mir zu langsam, weil es nur ein paar Millisekunden, dann wird das höchstwahrscheinlich darauf hinauslaufen, dass es abgelehnt wird. Weil mein Browser natürlich auf einmal 10 prozent schneller wäre, wäre es noch mal was anderes. Aber ein Bug ist da doch relativ schnell einfach, ja fast schon ohne Diskussion annehmbar. Schaut man sich beim Radio und auch Ebenen die Design, Patterns oder ähnliches an. Wir machen, würde ich jetzt so sagen, nicht es sei denn, es fällt uns auf die Füße und wir haben da gerade Lust drauf, dass es irgendwie immer so von unserem Mut abhängig. Wir machen das ja auch für den Spaß an der Sa
che. Und wenn wir gerade Spaß daran haben, das auseinander zu pflücken, dann würden wir es wahrscheinlich machen. Und ja, ich weiß nicht was hast du dazu noch eine Ergänzung? Also Architektur, wie willst du dich auf jeden Fall grundsätzlich empfehlen? Zumindest wenn man dir die Zeit dafür hat. Es ist aber dann eben auch der Punkt, was dabei rumkommt. Eine Architektur, Entscheidungen, die man anzweifelt. Das wäre ich fast schon höchstens als geschoren hängen. Weil wenn man dann auf einmal ein Politikfeld hat, ja das den ganzen Quelltext umbaut, ist die Wahrscheinlichkeit groß, dass das nicht einfach so durchkommen wird und dementsprechend fokussieren. Fokussieren wir uns meistens auf das, was da ist. Bewerten für uns dann natürlich für das, was wir sehen. Ohne mit dieser Bewertung dann großartig auf die Welt zuzugehen, zu sagen Hier guck mal, wir haben ein Projekt XY prozent angesehen und das ist doof. Das ist natürlich nicht, aber durch das Video allein wird man irgendwann ein Gefühl, ein Gefühl dafür bekommen, ob das, was man da sieht, wirklich gut war oder schlecht. Und diese Erkenntnisse kann man auf jeden Fall für sich selbst mitnehmen. Geht die auf den Mond hängenden direkt zu, bevor ihr Intro aktiviert oder macht sie es dann mit den Quests beim Repo nach dem Livio? Bisher haben wir das noch nicht gemacht. Wir haben, wenn wir was gefunden haben, was wir vielleicht auch als kritisch ansehen würden. Im besten Fall noch mal die Maintainer direkt gefragt, bevor wir da irgendetwas öffentlich zur Schau gestellt haben. Genau. Kennt ihr Gruppen, die gerne bei Public Decode Projekten mitregieren würden? Wir kennen nur uns und die genannten Links. Ich glaube, mehr kann ich da gar nichts zu sagen. Alles andere müssten wir Gruppen intern besprechen. Danke, wir haben leider nicht alle Fragen geschafft, aber ich habe bis jetzt noch kein so lange schon gehabt und die tollen Vortragenden haben leider auch noch andere Projekte, bei denen sie dabei sein wollen. Und ich versuche 
stellt euch! Stell dir sonst gerne die Fragen bei Twitter und Palladium und ich versuche so gut wie möglich zu beantworten. Ich denke, dass. Wann die nächste News so ist Es wird hier gerade auf dem ORF gefragt, wann die nächste News Show ist, die nächste News Show ist um 14.30. Falls sie mein Gesicht bis dahin schon vermisst, dann ist das natürlich eine Option.