Latest / Coding Buddies | Tech & Dev-Mindset / Hast du genug Ehrgeiz?
Transcript
- 0:00Und dann kann man sich natürlich fragen, OK, was macht man jetzt?
- 0:03Ne, also stellt man sich jetzt hin und sagt Na gut, dann gibt
- 0:05es halt keine Tests mehr. So ist ja keine Alternative.
- 0:08Das ist ja die, das war ja unsere Lösung.
- 0:10Dann aber Coding Boys, Time Podcast.
- 0:14Rund um. Softwareentwicklung und
- 0:15aktueller. Technews herzlich Willkommen.
- 0:29Ja, herzlich Willkommen zur neuen Folge des Coding Bodys
- 0:33Podcasts. Schön, dass du wieder
- 0:34eingeschaltet hast. Natürlich wieder mal mit dabei
- 0:36deine beiden Gastgeber, meine Wenigkeit, der Tino und
- 0:39natürlich auch wieder mal der fantastische Fabi.
- 0:42Moin Fabi, Grüße dich halli Hallo Tino Hi.
- 0:46Was geht ab? Wie immer die Frage.
- 0:49Schön, dass wir uns hier wieder treffen, dass wir.
- 0:52Uns hier immer wieder hören. Wir 3 zusammen.
- 0:56Liebe zuhören, liebe Zuhörer, wir sind mal wieder alle am
- 0:58Start und deswegen ich hab auf jeden Fall Bock.
- 1:01Ich hab ziemlich dolle Bock muss ich sagen auf die Folge.
- 1:05Wir haben letzte Woche darüber gesprochen.
- 1:11Was ein so erwartet, wenn man sagt, man geht jetzt in die Welt
- 1:15der Software, Entwicklung und Erwartung.
- 1:18Vs. Realität genau.
- 1:20Erwartung vs. Soll nein Realität.
- 1:25Und da gab es ja noch einen Punkt, den ich so hatte, wo ich
- 1:30meinte, Ah, na ja, komm, das war n cooles Schlusswort von dir,
- 1:33das konnte man einfach nicht mehr toppen und deswegen haben
- 1:36wir das ja geschoben und ich dachte mir, dann lass uns doch
- 1:39gleich die Gelegenheit nutzen und jetzt genau eine Folge
- 1:43später diesen einen Punkt nochmal aufgreifen.
- 1:46Was meinst du soll ich ihn anbringen oder hast du ihn
- 1:49anderen Vorschlag? Ich bin total gespannt, weil der
- 1:52Punkt muss eine ganze Folge wert sein.
- 1:57Schauen wir mal, wie lang die Folge wird.
- 2:01Genau. Und zwar hatte ich noch den
- 2:02Punkt im Kopf. Dass man eine gewisse, wie soll
- 2:09ich sagen. Ausdauer mitbringen sollte oder
- 2:14so n so n Ehrgeiz und Willen. Ich mag das kurz erklären, weil
- 2:19das klingt vielleicht erstmal n bisschen komisch und zwar.
- 2:23Bin ich quasi in meiner bisherigen Karriere sehr oft an
- 2:26Punkte geraten, wo es einfach wieso ne Wand war, wo es nicht
- 2:30weiterging beispielsweise. Man hatte irgendein Problem, man
- 2:34konnte einfach die Lösung nicht finden, man hat sich mit neuen
- 2:36Technologien auseinandergesetzt und ist da irgendwie stecken
- 2:39geblieben. Und damit, und das ist genau der
- 2:43Punkt, den ich meine, mit Ehrgeiz und Willen, dass man
- 2:45halt dann nicht sagt, so ach naja, komm dann halt nicht so,
- 2:50geht halt nicht, sondern sich da wirklich durchbeißt, also dass
- 2:54man so ein Kämpfer ist. So ein Beißer, weißt du wie man
- 2:56so schön sagt und ich finde das ist das ist so ein paar
- 3:01Handbeißer und das ist so eine realitätsding, ich glaube, damit
- 3:06muss man rechnen, also die Erwartung sollte man schon haben
- 3:09zu sagen okay es werden Punkte kommen, die sind richtig
- 3:12frustrierend. Und genau durch diesen Pain muss
- 3:16ich dann durchgehen, weil dann ist halt auch wenn du es dann
- 3:18geschafft hast, es halt auch richtig geil.
- 3:20Klingt ja blöd, eigentlich. Ja, erstmal will man ja nicht
- 3:24durch den Schmerz gehen, ne, aber es muss halt manchmal
- 3:27einfach sein und ich finde man muss halt vom Charakter auch so
- 3:30so n bisschen so n Kämpfer sein dabei, aber da würd mich mal
- 3:33interessieren wie du das siehst und vielleicht können wir uns ja
- 3:35auch mal so n paar Erfahrungen austauschen oder Erlebnisse.
- 3:38Falls dir da auch spontan was einfällt, wo wir das mal so n
- 3:41bisschen belegen können das Ganze.
- 3:43Aber im Endeffekt sagst du ja jetzt so nach dem Motto, Wenn
- 3:46man. Man braucht jetzt nicht
- 3:48unbedingt erwarten, dass man sagt, so OK, pass auf, du hast
- 3:51Aufgabe X lösig Aufgabe y lös ich Aufgabe z löse ich es und
- 3:56dann es kommt halt auch durchaus mal dazu, dass keine Ahnung,
- 3:59weil ein von 3 Aufgaben. Nur mal so als Beispiel genannt,
- 4:04auch mal was dabei ist, wo man sich so denkt.
- 4:06So Boah ey, ich komm nicht weiter das.
- 4:10Ist gerade echt. Heftig.
- 4:11Ich weiß nicht. Wie ich weitermachen soll oder
- 4:13wie ich da an die Sache rangehen soll oder solche Sachen, ne.
- 4:17Genau meinst du das? Und interessanterweise betrifft
- 4:20das ja nicht nur die Programmierung an sich, also
- 4:22dass ich jetzt beispielsweise nicht weiß, wie kann ich das
- 4:25algorithmisch lösen, sondern das sind ja oft auch so Side
- 4:30Effects, die auftreten können oder dass sich irgendwie ein
- 4:33Framework im Stich lässt, dass irgendwie, darauf möchte ich
- 4:36auch gleich eingehen, weil das war so der letzte Punkt, den wir
- 4:38beide sogar hatten, dass irgendwas in der Testumgebung
- 4:41auf einmal überhaupt nicht mehr rund läuft und man überhaupt
- 4:44nicht mehr weiß, was ist also was, was passiert hier, warum
- 4:47gehen die Tests auf einmal nicht mehr.
- 4:50Und das sind so Punkte, die ich meine, wo du dir echt denkst,
- 4:53warum zur Hölle ist das jetzt so, wo man dann so diese
- 4:57Gedanken kriegt? Ich lebe damit oder ich lebe
- 5:00nicht damit und versuche es jetzt einfach irgendwie
- 5:02hinzukriegen. Ja, also das sind ja
- 5:05tatsächlich, finde ich, das sind so vielleicht so 2 verschiedene
- 5:10Arten, die mir jetzt so in den Kopf kommen von von solchen
- 5:14Hindernissen oder Blockaden. Also ich weiß zum Beispiel im
- 5:17Studio. Erste Mal wirklich das.
- 5:20Das war so gefühlt das erste Mal im Studium, dass irgendwas mit
- 5:22Code passieren sollte. Da hieß es so schreib doch mal
- 5:26zu diesem Sachverhalt zu dieser Aufgabe Algorithmus wie auch
- 5:29immer pseudocode. Ich dachte mir in dem Moment.
- 5:37Ich weiß wie wie schreibt man pseudocode, was macht man da,
- 5:41wie geht das, wie funktioniert das?
- 5:42Also das war zum Beispiel erstmal so ne Blockade, wo es
- 5:44halt überhaupt erstmal von vornherein gar nicht weiter
- 5:46ging, weil ich mir einfach dachte ich ich hab recherchiert,
- 5:50ich hab geguckt was ist Pseudocode und das witzige an
- 5:52der ganzen Geschichte ist ja auch für jeden der jetzt zuhört
- 5:56und sich denkt so okay keine Ahnung, ja ich weiß was
- 5:59pseudocode ist oder vielleicht auch für jemanden der sich denkt
- 6:02so okay ich weiß nicht was pseudocodes Pseudocode ist im
- 6:04Endeffekt du kannst schreiben was du möchtest.
- 6:07Also es geht halt wirklich im Endeffekt nur darum, irgendwie
- 6:10zu skizzieren. Wie etwas.
- 6:14Also wie der Algorithmus aussehen könnte.
- 6:16Und da ist es völlig egal, ob du zum Beispiel 5 verschiedene
- 6:20Programmiersprachen mixt oder halt einfach mal einfach nur
- 6:23einen Satz hinschreibst. Und das wusste ich halt in dem
- 6:27Moment nicht und ich war so. Ich war so völlig verwirrt und
- 6:30fertig. Und.
- 6:33War da die Blockade aus so Exmatrikulation oder weiter oder
- 6:37pseudocode? Lerne oder wie?
- 6:40Ja also also. Das ist ein sehr witziges
- 6:42Beispiel auf jeden Fall. Ich find es halt auch krass.
- 6:48Weil du meintest, du hast das gegoogelt.
- 6:50Ich glaube, wenn man pseudocode Google kriegt man so n paar
- 6:53theoretische Erklärungen, aber man wird wahrscheinlich auch
- 6:55wenig Pseudocode finden, weil wie du schon meintest, das ist
- 6:59so frei von irgendwelcher Syntax, das also wie was soll da
- 7:03auch der Google Treffer sein, also weißt du es gibt also ich
- 7:06glaube es gibt so ein bisschen best practices aber halt wie
- 7:10gesagt du kannst halt in jeder Sprache die du haben willst, sei
- 7:13es Programmiersprache oder eine natürliche Sprache ist
- 7:16eigentlich voll egal. Du sollst ja wirklich nur
- 7:18skizzieren wieso ein Algorithmus aussieht, aber wie wie hast du
- 7:21es gelöst dann? Wie habe ich es gelöst?
- 7:24Ich weiß es gar nicht mehr, wie ich es gelöst habe.
- 7:26Ich glaube, ich habe so getan, als hätte ich die Aufgabe
- 7:29gemacht und habe mir dann die Lösung angeguckt und habe
- 7:32gebetet, dass alles gut funktioniert.
- 7:35Durchgeführt und da dachte ich mir so, ah, also auf jeden Fall,
- 7:39ich weiß noch den aha Moment, das war dann in der Übung, wo
- 7:41quasi auch andere vorgestellt haben oder also wo dann quasi
- 7:45ich sag mal so. Gewisse Arten von Lösungen
- 7:47vorgestellt wurden und dann dachte ich mir so, ach so OK,
- 7:51ich verstehe es langsam. Ja, oder?
- 7:55Das war ja wieso ne innere Blockade, ne, weil du halt
- 7:57zwanghaft nach irgendwelchen Regeln gesucht hast, weil du
- 8:00wirst ja quasi zu, also zu dem Zeitpunkt wirklich bombardiert
- 8:03mit mit Input, mit Regeln und hier die Sprache und das und das
- 8:09und so muss das gemacht werden und so und auf einmal kommt eine
- 8:11Aufgabe, wo du quasi wieder frei auf dem weißen Blatt bist,
- 8:15sozusagen weil ich erinnere mich auch an diese Aufgabe und ich
- 8:18weiß, dass ich auch gestruggelt habe damit, weil ich mir dachte,
- 8:21ja, ich kann doch nicht, also die ganze Zeit gibt es
- 8:24irgendwelche Regeln und Syntax hier und da und jetzt kann ich
- 8:27schreiben wie ich will, komme und wo ist der Haken so ja.
- 8:30Genau, genau das war. Aber das sind halt, das war so
- 8:34wirklich so die, die so in den allerersten Anfängen mal so eine
- 8:37Blockade, wo es halt gefühlt auch gar nicht weiter ging, also
- 8:39wo man wirklich an dem Punkt stand, wo einfach direkt eine
- 8:42Mauer war und ich auch dachte, so, ich weiß es nicht.
- 8:45Ich geh einfach mal gleich noch mal ganz schnell zu einem
- 8:47nächsten Beispiel, weil das vielleicht auch noch n bisschen
- 8:49greifbarer ist für auch für andere, die jetzt vielleicht
- 8:53nicht irgendwie was mit Pseudocode machen mussten oder
- 8:56was auch immer. Und das ist zum Beispiel
- 8:59angenommen, du hast ne, Du möchtest n Programm schreiben
- 9:02und weißt wie du das du hast ne Idee ne du sagst OK ich ich weiß
- 9:06wie ich es machen würde und dann hatte ich zum Beispiel den den
- 9:10Moment, da ging es darum etwas in C zu machen.
- 9:13Und ich hab mir ne IDE genommen und oder NC plus Plus war das
- 9:18glaub ich genau und hab mir ne IDI genommen und hab quasi mir
- 9:22gedacht OK jetzt setzt er erstmal n Projekt auf weißt was
- 9:25du programmieren möchtest. Aber erstmal bringst du quasi
- 9:29das Grundprogramm, irgendwie ne Main zum Laufen ne so, das ist
- 9:32einfach erstmal funktioniert und bei C ist es ja so, dass du
- 9:36quasi du hast ja deine CPP Dateien und Deine Header
- 9:39Dateien, also quasi deine Datei plus plus jetzt genau.
- 9:42Die wir dann sozusagen definieren.
- 9:45OK, welche Funktion hast du denn in deiner Klasse zur Verfügung?
- 9:49Und die sind ja wirklich wichtig in C plus plus, dass du diese
- 9:53Header Datei eben hast, zumindest ich.
- 9:55Ich weiß nicht, ob lange nicht mehr mit C gearbeitet, ich weiß
- 9:57nicht, ob die sich mittlerweile weiterentwickelt haben, aber.
- 10:00Konzept ist noch da. Ja genau, aber Fakt ist, du
- 10:03musst dann quasi in deiner TPP Datei musst du ja die Header
- 10:06Datei inkludieren. Also du musst die sozusagen
- 10:09irgendwo herziehen. Id hat einfach.
- 10:14Immer wenn ich dann die einfach nur die Main ausgeführt hab, wo
- 10:16einfach nur so n Hello World drin stand, hat dann einfach
- 10:19gesagt ja ich find aber die Header nicht, ich weiß nicht was
- 10:21hier los ist. So und das war damals auch ein
- 10:24Struggle den ich hatte wo ich mir dachte, so ey ich krieg es
- 10:28doch irgendwie hin und ich will das doch und keine Ahnung und
- 10:31das war das war richtig nervig und die Lösung tatsächlich an
- 10:35dieser Stelle war, dass die Ideen Bug hatte das sozusagen
- 10:38mit C plus plus konnte die Ideen nicht richtig umgehen zu dem
- 10:41Zeitpunkt und da dachte ich mir so.
- 10:44Komm, ey und ich habe aber ewig rumprobiert, bis ich dann halt
- 10:47auch weißte, weil man wie du meintest.
- 10:49Man versucht sich ja durchzubeißen und versucht das
- 10:51zu machen, war auch noch ein bisschen am Anfang, aber also
- 10:55das sind auch so Sachen, weißt du so Konfigurationsgeschichten
- 10:59die vielleicht auch nicht mal unbedingt direkt mit dem Code zu
- 11:03tun haben. Sehr cooles Beispiel, weil
- 11:07tatsächlich hatte ich ein ähnliches oder fast schon
- 11:10gleiches im Kopf. Auch im Studium, wo wir dann in
- 11:14die technische Richtung gegangen sind und halt so in die C Welt
- 11:16eingetaucht sind und man dann halt so das erste Mal die
- 11:20Begegnung hatte mit Bildumgebungen wie Make oder
- 11:25Seamake und eigenen Compilern aufrufen und wie kompiliere ich
- 11:29alles zusammen und muss die Includepfade setzen oder alles
- 11:32was du gerade meintest damit er die Header findet und das war
- 11:36damals auch so ein Ding wo ich mir dachte ey ich raffs nicht
- 11:40also boah ich meine ich will doch einfach nur, dass der das
- 11:43jetzt mir zusammenbaut und ausführt was will er denn von
- 11:45mir und. So in die Welt von Make und ja,
- 11:50simake war es damals noch nicht. War wirklich noch make
- 11:53eintauchst und gar keine Ahnung davon hast und so wirklich ganz
- 11:56am Anfang stehst, dann ist es ne riesen Wand, durch die du da
- 11:59irgendwie mit dem Kopf durch musst.
- 12:01Das fand ich halt richtig krass damals und das waren schon so
- 12:05die ersten Anzeichen, wo man gemerkt hat okay es wird immer
- 12:08mal wieder so ein Struggle kommen, gerade auch wenn du
- 12:13später. Hatten wir, falls du dich
- 12:15erinnerst, als wir in dem Bereich der Robotik waren, mit
- 12:18diesem Robot Operating System Ross gearbeitet und das das hat
- 12:22ja auch so n Packaging System auch auf Simac basierend war das
- 12:26glaub ich ne und auf jeden Fall darin.
- 12:28Diese ganzen Lips finden anziehen hier die Pfade setzen
- 12:32und so ah das ist so nervig diese Infrastruktur diese
- 12:34Bildumgebung aufzubauen, da gab es auch Momente wo ich echt
- 12:38verzweifelt bin muss ich sagen. Aber die Frage ist halt immer,
- 12:41wie man dann am Ende damit umgeht.
- 12:43Ne, also es ist ja dann immer die Frage okay was ist die
- 12:46Alternative? Also wenn du jetzt zum Beispiel
- 12:48sagst, du kriegst mit einer bestimmten Ide.
- 12:51Dein C plus plus Code nicht zum Laufen?
- 12:53Gut, dann vielleicht probier eine andere ide, wenn es
- 12:55wirklich nicht anders geht, aber wenn du jetzt zum Beispiel vor
- 12:58einem Punkt stehst, wo du sagst okay, wir haben dieses
- 13:01Framework, wir haben keine Ahnung, bestimmte Sachen, die
- 13:05uns zur Verfügung gestellt werden, mit denen man arbeiten
- 13:07muss, dann ist halt die Frage, also dann kommst du halt
- 13:11wirklich an die Frage zu sagen okay kriege ich das jetzt
- 13:14irgendwie hin? Oder keine Ahnung, was mach ich
- 13:16sonst schmeiß ich hin. Keine Alternative und keinen
- 13:19Ausweg gibt so ne. Und das Spannende ist diese
- 13:22ganze Bildumgebungsgeschichte mit make hab ich ja danach, als
- 13:26ich wirklich noch Embedded Entwickler war jahrelang
- 13:29betrieben, wo mich so intensiv damit auseinandergesetzt, dass
- 13:32es mich überhaupt nicht mehr schockt.
- 13:33Also im Gegenteil, ich bin da wirklich fit drin geworden und
- 13:38weiß aber trotzdem noch, wie sich das angefühlt hat.
- 13:41Ist nicht so, dass ich mir denke, ja, ja, was war denn dein
- 13:43scheiß Problem damals auf gut Deutsch, so hab ich mal nicht so
- 13:46sondern ich. Es heute noch.
- 13:48Warum das so n Struggle war, wenn man sich damit nicht
- 13:51auskennt oder anfängt damit auseinanderzusetzen, aber da
- 13:54musst du halt, denn das ist halt so, du musst halt diesen Willen
- 13:57haben dich da durchzubeißen und deswegen find ich diesen Punkt
- 13:59halt. Oh, wie ganz cool, wollt den
- 14:02halt auch noch mal mitbringen, so ne.
- 14:04Ja das ist ja nicht nur, wir sind ja jetzt nur in diesem
- 14:06technischen Bereich oder so infrastrukturellen Bereich, das
- 14:10hat jetzt mit dem mit dem Programmieren an sich nichts zu
- 14:12tun. Hattest du das Ganze auch mal
- 14:17wirklich auf codebene, wo du dir dachtest, so?
- 14:21Verdammt noch mal, wie mache ich das jetzt?
- 14:25Na also du hattest es ja schon mal ein bisschen angesprochen.
- 14:27Also jetzt. Anfang der Folge, dass wir ja
- 14:31vor kurzem eigentlich auch so n so n Problem hatten, wo ich
- 14:33sagen würde, OK, das hat Codetechnisch was zu tun.
- 14:37Aber auch n bisschen Framework, mäßig so ne und da hatten wir
- 14:42das Problem, dass quasi die. Ja, die Testumgebung auf einmal
- 14:47rot gelaufen ist, was ja natürlich n relativ, also es
- 14:51ist. Es ist n sehr schwerwiegendes
- 14:53Problem, weil wenn du dich irgendwann nicht mehr auf deine
- 14:56Tests verlassen kannst, also nur mal um den Sachverhalt zu
- 14:58schildern, du lässt alle Tests. Laufen bisschen für die Zuhörer.
- 15:01Genau. Also wir haben alle Tests,
- 15:04liefen grün, alles war gut, wir haben ein neues Feature
- 15:06angefangen, das Feature ging los, wir haben neue Tests
- 15:08geschrieben und mussten halt auch zum Beispiel bestimmte
- 15:12Teile mocken. Mocken ist quasi etwas wo du
- 15:16sagst okay, wir haben eigentlich einen Teil, was uns Ergebnisse
- 15:20zurückliefert, aber diesen Teil können wir nicht benutzen.
- 15:23Das heißt, wir tun so als wäre er da und liefert uns Ergebnisse
- 15:26zurück, man muss. Quasi dann die Testfälle
- 15:28generieren zu können. Genau.
- 15:30Ist vielleicht auch mal eine interessante Podcast Folge, wenn
- 15:33es jemanden interessiert sozusagen.
- 15:35Schreibt uns da gerne, wenn es jetzt zum Beispiel ums Mogeln,
- 15:37faken und so weiter geht, gerade im Testbereich.
- 15:41Auf jeden Fall ist es ja so, dass wir bestimmte Mods
- 15:44gebraucht haben, die uns bestimmte Werte zurückgeliefert.
- 15:46Damit man eben auf Unittestebene auch.
- 15:50Also die Test schreiben kann und dann haben wir diese Mogs
- 15:54geschrieben und haben quasi neue ne neues Feature eingebaut, neue
- 15:58Sachen dazu gepackt, neue Tests hinzugebaut und dann haben wir
- 16:02die Tests laufen lassen und die Tests, da war dann ein Testrot
- 16:05und wir haben aber nicht ganz aus der Fehlermeldung verstanden
- 16:08wieso dieser Test nicht gelaufen ist.
- 16:11Haben dann einfach irgendwas ausprobiert, noch mal laufen
- 16:14lassen und sind andere Tests. Suiten sind dann auf einmal rot
- 16:16gelaufen, das heißt Wir hatten andere Tests die auf einmal rot
- 16:19waren und aus unerfindlichen Gründen, also es war sehr sehr
- 16:22merkwürdig wieso auf einmal sogenannte flaky Tests, die
- 16:24einfach mal grün waren, mal rot waren.
- 16:27Einzeln zum Beispiel auch Grün gelaufen sind, aber nicht im
- 16:29Verbund und das war auf jeden Fall ne ein ein ein sehr sehr
- 16:34komisches Verhalten, was wir da entdeckt haben und dann steht
- 16:38man natürlich vor dem Punkt und denkt sich, OK, was haben wir
- 16:41gerade anders gemacht, dann guckst du durch, was du anders
- 16:44gemacht hast, dann fragst du dich irgendwann okay also wir
- 16:48haben ja auch gegoogelt, wir haben nachgeguckt, wir haben
- 16:51recherchiert, ausprobiert, was das Problem ist und sind ja
- 16:53erstmal eine ganze Zeit lang nicht dazu gekommen, um zu
- 16:56gucken oder nicht, haben nicht verstanden wieso das so ist und.
- 17:00Man sich natürlich fragen, OK, was macht man jetzt ne, also
- 17:03stellt man sich jetzt hin und sagt Na gut, dann gibt es halt
- 17:05keine Tests mehr, so ist ja keine Alternative.
- 17:08Das ist ja die, das war ja unsere Lösung, dann alle Tests
- 17:11gelöscht. Spoiler Warnung?
- 17:16Nein, sowas nicht, aber das ist halt natürlich die Frage.
- 17:19Also im Endeffekt geht es an der Stelle wirklich darum, Lösungen
- 17:22zu generieren und zu überprüfen, welche Alternativen hat man und
- 17:27wenn sage ich mal alle Alternativen wegfallen und nur
- 17:30noch die Alternative bleibt fix das dann ist die Frage okay du
- 17:35musst es fixen, aber du weißt nicht wie du es fixen kannst und
- 17:39jetzt kommst du. Genau.
- 17:41Und da mal so als Anmerkung, das ist ja nicht so, dass wir.
- 17:45Absolut souverän geblieben sind, sondern das hat ein paar Tage
- 17:48gedauert, das Thema. Eigentlich die Testumgebung zu
- 17:52fixen. Also da ist ja nichts Neues
- 17:54entstanden und ich weiß, du warst fix und fertig und hattest
- 17:59keinen Bock mehr. Ich dachte mir so, oh mein Gott,
- 18:01ich nein, ich will mir das nicht mehr angucken, ich habe keine
- 18:04Lust mehr und dann kommt halt dieser.
- 18:06Innere Kampf und trotzdem denkt man sich, also überwiegt ja Gott
- 18:10sei Dank noch so dieses Mindset, wir müssen das machen, es nervt,
- 18:15keiner hat da mehr Bock drauf, wir gucken uns das seit Tagen
- 18:17an, wir wissen nicht, was da abgeht, wir müssen weiter
- 18:20probieren und irgendwie den Fehler finden, wir müssen
- 18:23dadurch. Es ist ja auch wichtig,
- 18:26Stichwort nochmal Verantwortlichkeit und also
- 18:29eines Entwicklers oder einer Entwicklerin für die Software,
- 18:32die man schreibt. Also wir wollten ja nicht die
- 18:33Tests einfach wegwerfen an der Stelle.
- 18:36Aber ich weiß, dass wir nervt. Mich auf jeden Fall.
- 18:39Genau, ich weiß es für nervlich. Am Ende waren auf jeden Fall,
- 18:41also es war schon so, dass man wirklich gar keine Lust mehr
- 18:44hatte, das zu machen, nur wie du schon meintest, was ist die
- 18:47Alternative, Wir hatten keine Alternative, wir mussten das
- 18:49lösen, also haben wir uns intensiv damit halt nochmal
- 18:51beschäftigt. Und was war denn, möchtest du
- 18:56vielleicht sagen, was dann am Ende sozusagen der Outcome war?
- 19:00Wir haben es ja gelöst. Ja, also tatsächlich es.
- 19:05Man kann ja noch mal so n bisschen die hergehensweise
- 19:09vorgehen. Also das Ding ist, die Tests
- 19:11laufen ja parallel Mhm und dieses Flaky was du meintest das
- 19:17mal welche gelaufen sind und mal nicht muss ja daran gelegen
- 19:21haben, dass die Reihenfolge nicht deterministisch ist.
- 19:25Sage ich mal. Also die laufen nicht immer in
- 19:26der gleichen Reihenfolge, die Tests, die müssen ja auch autark
- 19:29laufen, können, deswegen einzeln liefen sie, aber wir hatten ja
- 19:33irgendwelche Side Effects erschaffen.
- 19:36Das. Wenn Tests parallel laufend in
- 19:40irgendeiner gewissen Reihenfolge andere Tests dadurch zu Fehlern
- 19:43führen. Genau.
- 19:45So, und dann hatten wir Sequenziell laufen lassen und
- 19:48dachten uns so. Das Moment mal, das geht
- 19:52sequentiell auch nicht. Also es ist ja.
- 19:54Doch nicht die Parallelität. Also mal um mal kurz noch mal so
- 19:58ein Revue passieren zu lassen. Du denkst dir so, es muss daran
- 20:00liegen, dass die parallel laufen, ja dann lassen wir so
- 20:02mal Sequenziell laufen, auch keine Lösung, weil es sehr
- 20:04langsam ist. Aber wir haben es mal probiert.
- 20:06Ja, verdammt noch mal. Da sind trotzdem manchmal rote
- 20:09Test bei so in jedem vierten Durchlauf.
- 20:12Das kann doch wohl nicht wahr sein.
- 20:14Und du hattest ja schon gesagt, Stichwort Mogs wir haben uns
- 20:17dann so in diesem Test Framework vergraben, diese mogigen
- 20:22Features, die da drin sind, wie man Sachen mokken kann, dass wir
- 20:25dann irgendwann gemerkt haben, Moment mal.
- 20:29Der wie soll ich das erklären? Diese Box sind teils gar nicht
- 20:34nur gültig, da wo wir sie definieren, sondern werden so
- 20:38auf globaler Ebene hochgezogen. Bei der Art und Weise, wie wir
- 20:42sie verwendet haben. Und dadurch haben wir quasi
- 20:48ungewollt Sachen woanders gebockt, was für mich komplett
- 20:50nicht erklärbar war. An der Stelle plus was ich immer
- 20:54noch n sehr merkwürdiges Verhalten fand, ist, dass andere
- 20:57Test Cases dann gesagt haben okay, ich hab keinen Bock, ich
- 20:59nehme die Originalimplementierung und auf
- 21:02einmal sind Prozesse losgelaufen, die wir auf jeden
- 21:04Fall nicht wollten. Ja, das war auf jeden Fall sehr,
- 21:08sehr wild, was ich auf jeden Fall, also was man halt im
- 21:10Endeffekt ist, man könnte sich jetzt hinstellen und sagen,
- 21:12okay, das klingt ja echt blöd, das sind, das ist ja also, da
- 21:17möchte ich doch lieber gar keine Softwareentwicklung machen.
- 21:20Prinzipiell sind das natürlich Einzelfälle, nur man muss halt
- 21:23damit dealen, dass sowas auf jeden Fall vorkommen kann und
- 21:26dass man dann natürlich eventuell nicht die Möglichkeit
- 21:29hat zu sagen, ja gut, dann lasse ich es halt so und da ist es
- 21:32natürlich an der Stelle finde ich sehr, sehr wichtig und
- 21:34interessant zu lernen auch. Lösungsfindung zu betreiben und
- 21:40auch ein bisschen kreativ zu werden und halt eben wie du
- 21:43schon meintest, Tino. Halt auch den Mut, nicht zu
- 21:46verlieren und sozusagen die den Biss nicht zu verlieren, um
- 21:50wirklich zu sagen, ich, ich mach das jetzt so lange, bis das
- 21:52funktioniert, weil am Ende finde ich zum Beispiel, also man
- 21:56könnte jetzt da aus der ganzen Nummer rausgehen und sagen, das
- 21:59war voll Kacke, das war Mist, gar keinen Bock mehr da drauf,
- 22:02so ich, ich lass das jetzt so, aber am Ende.
- 22:07Haben wir, würde ich sagen, einiges gelernt.
- 22:10Zum Beispiel über das Testframework.
- 22:14Zum Beispiel darüber, wie. Bestimmtes Verhalten quasi auch
- 22:19im im im Verhältnis zu von der Parallelität der Tests zu den
- 22:22sequentiellen Tests. Funktionieren und so das das war
- 22:25auf jeden Fall, war auf jeden Fall ein sehr interessanter
- 22:27Outcome und n guter aha Effekt und sowas und das klingt jetzt n
- 22:32bisschen blöd, aber sowas macht einen am Ende auch zu sag ich
- 22:36mal. Also solche Momente machen einen
- 22:39auch dann zu besseren Entwicklern und Entwicklerinnen
- 22:43einfach aus dem Grund, weil man halt eben genau durch diesen
- 22:46Schmerz durchgeht und dadurch halt wertvolle Erfahrungen
- 22:50sammelt. Ja, das ist ein sehr guter
- 22:52Punkt, weil genau daran wächst man dann am Ende.
- 22:57Deswegen jetzt, wo es überstanden ist, sage ich mal.
- 23:02Muss ich sagen, war es sehr lehrreich.
- 23:03Da gehe ich auf jeden Fall mit, was ein sehr guter Effekt dabei
- 23:07war, ist, dass wir die unsere Testumgebung und die Tests
- 23:12streckenweise noch mal stark reflect dat haben, weil wir
- 23:16sagen ja auch immer, man muss nicht nur Code refactors,
- 23:18sondern auch die Tests und haben halt auch gemerkt und das ist
- 23:22auch wieder so ein klassisches Ding, dann am Ende hier sind ja
- 23:25schon noch so ein paar Sachen drin, die wollten wir so nicht
- 23:28mehr machen, aber die sind nicht aufgeräumt oder refactor und
- 23:31dann haben wir das gemacht. Mit den neuen Erkenntnissen über
- 23:35die Mocking Features und haben es ja so quasi wieder stabil
- 23:39bekommen. Die Umgebung konnten dann das
- 23:41neue Feature Abtesten und alles ist wieder tutti ne.
- 23:45Und das ist halt. Auf mehreren Ebenen halt ne
- 23:49coole Erkenntnis, da geh ich auf jeden Fall mit.
- 23:51Also einerseits, dass man natürlich daran wächst, mehr
- 23:53über das Framework gelernt hat und was ich da jetzt ergänzen
- 23:57möchte, ist noch mal n Reminder an einen selbst wie facton
- 24:01refact dann. Und bloß nicht die Tests
- 24:04löschen. Ohne niemals die Test löschen,
- 24:07außer die, die Rot sind. Ja.
- 24:12Fabi, ich würd sagen cool, dass wir über diesen Punkt noch mal
- 24:16gesprochen haben. Auch so mit n paar Beispielen.
- 24:17Ich fand es auch cool, dass du da noch mal in die Studienzeit
- 24:20eingetaucht bist. Find ich auch, war extrem cool,
- 24:23da noch mal so drüber nachzudenken.
- 24:26Hast du noch was zu ergänzen? Ansonsten schließt die Folge.
- 24:30Nee, ich denke das, das passt auch.
- 24:32Wichtig ist einfach, dass man vielleicht also noch mal
- 24:37abschließend sagen kann. Man hat vielleicht n struggle am
- 24:42Anfang, es kann. Drin.
- 24:44Es ist auch ganz normal. Es ist auch ganz normal, dass
- 24:47man auch als erfahrener Entwickler oder Entwicklerin
- 24:50halt eben auch noch mit bestimmten Sachen zu kämpfen
- 24:53hat. Struggle hat vielleicht Sachen
- 24:55auch immer noch verstehen muss, auf ganz verschiedenen Ebenen,
- 24:59ob es jetzt in Konfigurationsebene ist, auf
- 25:02Framework ebene Code Ebene, wo man sich auch immer befindet,
- 25:07aber das bleibt halt nie aus und deswegen ist es wirklich
- 25:10wichtig. Da auch einen gewissen
- 25:13Kampfgeist sozusagen mitzubringen, wenn es um solche
- 25:16Sachen geht. Aber am Ende würde ich sagen,
- 25:21und da spreche ich doch, glaube ich für uns beide Tino, dass ich
- 25:23es natürlich sehr lohnt, weil alles, was drum herum passiert,
- 25:27macht schon sehr viel Spaß und bietet eine Menge Kreativität.
- 25:32Wenn es im Bereich Softwareentwicklung und
- 25:34Programmieren geht. Oder?
- 25:39Wunderschön gesagt. Ja, und in dem Sinne würde ich
- 25:41sagen, schließen wir die Folge auch, machen es gar nicht so
- 25:44lang, ziehen es nicht in die Länge.
- 25:46Ich werde die Folge jetzt auch gleich beenden und überhaupt
- 25:48nicht mehr rumschwafeln. Und noch 5.
- 25:52Minuten los. Gegangen.
- 25:55In dem Sinne. Würde ich sagen.
- 25:57Schön, dass du wieder eingeschaltet hast.
- 26:01Und wenn du eben auch solche Erfahrungen gemacht hast in
- 26:04solchen Punkten, dann schreib uns doch einfach bei Instagram
- 26:08oder auf unserer Podcast Mail, die links auch zu allen an
- 26:12diesem Plattformen und Mails und was auch immer und alles andere
- 26:16findest du in den Show Notes genau.
- 26:18Schreib uns deine Horror Story. Was hatte ich ewig.
- 26:21Beschäftigt Coding Crimes Combat.
- 26:24Holding Crimes True Coating Crimes geil.
- 26:28Genau. Genau also schreibt uns einfach,
- 26:30gib uns Feedback zu dem Podcast. Würde uns super freuen.
- 26:34Auf jeden Fall. In dem Sinne würde ich sagen,
- 26:36schön, dass du wieder eingeschaltet hast und ich
- 26:37hoffe, wir hören uns auch wieder beim nächsten Mal.
- 26:41In einer Woche also macht es gut.
- 26:44Deine Coding Buddies gemeinsam besser.
- 26:56Was?