In der Community Story dieser Woche unterhalten sich Brian und Jonathan über interkulturelle Erfahrungen, funktionale Programmierung und darüber, wie es war, vom amerikanischen Mittelwesten nach Skandinavien zu ziehen.
Jonathan: Nun, guten Abend allerseits und willkommen beim Exercism-Podcast. Ich habe das Vergnügen, Brian Underwood bei mir zu haben. Brian, wo lebst du derzeit? Und erzähl uns ein wenig über deine Geschichte und wie du dorthin gekommen bist, wo du jetzt bist. Brian: Ja, klar. Danke, dass ich dabei sein darf. Ja, also ich bin in Stockholm in Schweden. Aber ursprünglich komme ich aus den USA, geboren in Ohio, also ein ganz schöner Weg von dort. Jonathan: Nein. Brian: das, ich schätze, mein... du wolltest wissen, wo ich herkomme, so meine Art von Reise dazwischen, schätze ich. Jonathan: Ja, absolut. Wie bist du aus der Mitte der USA nach... Schweden, Skandinavien gekommen, weißt du, das ist ein ziemlicher Sprung. Brian: Klar. Ja. Ja, natürlich, es ist, es ist die Mitte der USA. Ich nehme es dir nicht übel, dass du, ich meine, niemand weiß wirklich, wo Ohio liegt. Das ist, das ist völlig in Ordnung. Ja, also ich, weißt du, ich ging zum Ohio State fürs College. Und das war so Informatik, Bildung. Und das war schön. Das hat mir gefallen. Und ich habe die ganze Zeit, die ich dort war, irgendwie... Tech-Support gemacht, äh, im College of Humanities. Ich hatte das Glück, dort gleich zu Beginn einen Job zu bekommen. Und ich habe das noch ein paar Jahre nach meinem Abschluss weitergemacht. Ähm, aber dann, ich schätze, wurde mir einfach ein bisschen langweilig, dort, wo ich war, und mit dem, was ich tat, und außerdem hat sich meine Freundin von mir getrennt. Also lass uns nicht, lass uns nicht. Jonathan: Nicht gerade schöne Erinnerungen, könnte man sagen. Brian: Ja, ich meine, im Rückblick war alles in Ordnung. Aber ja, aber es ist irgendwie so, okay, ich hatte hier die Gelegenheit, glaube ich. Und so beschloss ich, ein paar Wochen durch Europa zu reisen, was das erste Mal war, dass ich überhaupt für längere Zeit wirklich aus den USA herausgekommen bin. Und das war schön, durch Europa zu reisen. Und dann beschloss ich, bevor ich das tat, beschloss ich, dass ich umziehen würde. Und ich hatte mich irgendwie auf Boston als Ort festgelegt, an den ich ziehen wollte. Und so bekam ich, ich schätze, ich weiß nicht, ob ich in gewisser Weise Glück hatte, aber ich hatte ein paar Gelegenheiten, wo, weißt du, ich hatte immer so Mac-Support gemacht, das war so eine große Sache, die ich gemacht hatte. Also das war so einer der Jobs, die ich irgendwie die Gelegenheit hatte anzunehmen, war so ein Tech-Support-Mac-Job in Boston. Und ein anderer war dieses kleine Startup, das Software machte für so Handyfirmen und so, wie sie so ihre Warenpräsentation in ihren Läden anordnen. Und der, weißt du, ich glaube, ich wollte wirklich den Übergang zum Programmierer schaffen. Aber dieser andere Job war so, oh, das ist die Sache, die ich schon lange gemacht habe. Aber ich glaube, ich war auf der Seite, wo ich so dachte, okay, ich werde dieses neue Leben annehmen, diese, diese, diese Karriere, die ich will. Also, aber ich glaube, ich hatte auch ein bisschen Glück, den Job zu bekommen, weil ich denke, sie brauchten wirklich jemanden. Und so nahmen sie mich einfach auf. Und das entpuppte sich als so ein großer Job, den ich mehrere Jahre lang hatte. Ähm, aber ja, und dann war das so der Anfang. Kurz gesagt, von dort aus lernte ich meine jetzige Frau kennen und wir zogen nach Providence, dort heirateten wir. Ähm, dann zogen wir nach Kalifornien. Ich glaube, meine Frau bekam einen Job in San Francisco. Und ich so, jep, ich kann. Ich bin Softwareentwickler, ich kann, ich kann das, ich kann einen Job in San Francisco finden. Nein, nein, nein, keine Sorge. Das war großartig. Wir lebten in Oakland und arbeiteten ein paar Jahre in San Francisco. Aber dann beschlossen wir, dass wir ein paar Jahre herumreisen wollten. Und so reisten wir zwei Jahre lang um die Welt, mit unserem, zu der Zeit hatten wir, zu diesem Zeitpunkt hatten wir einen zweieinhalbjährigen Sohn. Und so reisten wir ein paar Jahre mit ihm. Und dann ja, kamen wir ein paar Jahre in die Staaten zurück. Und dann beschlossen wir so, oh, weißt du, wir waren auf unseren Reisen durch Stockholm gekommen. Und wir so, wir mögen Stockholm wirklich. Also wir so, okay, wir werden, wir werden zurückkommen. Und das ist es, da sind wir die letzten vier Jahre oder so gewesen. Jonathan: Ist deine Frau Schwedin, oder ist es einfach so, dass dir Stockholm gefällt? Oh, wie, wie kamen die, was ist da die Geschichte? Brian: Ja, nein, das ist eine gute Frage. Das ist die Frage, die viele Leute stellen. Aber nein, wir sind beide Amerikaner. Wir alle drei sind Amerikaner, mein Sohn eingeschlossen. Obwohl er viel besser Schwedisch spricht als wir beide. Wir arbeiten daran. Aber ja, nein, es hat uns einfach wirklich gefallen. Ich glaube, es gab ein paar Orte, an die wir gereist waren, wo wir dachten, na ja, vielleicht könnten wir hier leben, wenn wir... wenn wir irgendwohin ziehen wollten. Ich glaube, einer davon war Auckland, es war ein Ort, durch den wir gereist sind und der uns wirklich gefiel. In Neuseeland? Du meinst Auckland, Neuseeland? Neuseeland, genau. Aber das war ein bisschen weit, das wäre so gewesen, wenn wir nach Ohio zurückreisen wollten, um Familie zu besuchen, das wäre ein ziemlicher Aufwand gewesen. Von Schweden aus ist es offensichtlich immer noch ein ganz schöner Aufwand. Jonathan: ähm Okay, und jetzt hast du erwähnt, du hast so einen Kommentar gemacht über Computerprogrammierung versus oder Informatik, entschuldige, und Programmierung. Was war da der Unterschied? Weil in meinem Kopf ist Informatik irgendwie Programmierung, aber offensichtlich nicht. Oder vielleicht doch, ich weiß nicht. Was meintest du damit genau? Brian: Ja. Ich weiß nicht, ob ich den Unterschied kenne. Ich meine, ich habe einen Abschluss in Informatik, und ich glaube, es war Programmierung, aber es war nicht so... du hast gehört oder andere Leute haben gehört, dass man mit einem Uni-Abschluss nicht immer die Art von echten Dingen lernt, die man in einem Job lernen und tun würde. Und wahrscheinlich hat sich das ein wenig geändert, seit ich aufs College ging. Ich denke, es gab wahrscheinlich eine Bewegung hin zu praktischerer Ausbildung. Wie, ich erinnere mich... Weißt du, wir lernten, ich glaube, C und Java waren die beiden Hauptsprachen, die wir damals lernten. Und besonders erinnere ich mich, dass wir in einer bestimmten Klasse dieses Ding in Java lernten, wo sie sehr, es war dies, ich glaube, es war eine Lehrmethode oder irgendeine Art, an Dinge heranzugehen, bei der man jede seiner Funktionen sehr gründlich kommentieren musste, um zu sagen, es war so, es heißt Design by Contract, wo man sagen würde, wofür passt es? weißt du, in einem rechtlichen Vertrag, weißt du, sozusagen, okay, was sind deine Verantwortlichkeiten? Was sind meine Verantwortlichkeiten? Und so bedeutet, eine Funktion per Vertrag zu entwerfen, weißt du, okay, wenn du mir diese Werte in den Variablen gibst, und weißt du, du gibst mir für diese hier niemals eine negative Zahl. Und du stellst immer sicher, dass dieser String niemals leer ist, oder was auch immer, richtig? Das sind die Dinge, für die du verantwortlich bist. Und wenn du das tust, verspreche ich, dies zu tun, richtig, und das geschehen zu lassen. Und so gab es diese Kommentarstruktur, bei der ich mich erinnere, sehr verwirrt gewesen zu sein und zu denken, dass die Kommentare irgendwie ausgeführt würden und Teil des Programms seien. Und es war, ich würde, weißt du, ich glaube, ich verbrachte ein paar Tage damit, so wie, was? Was soll ich hier tun? Und irgendwann begriff ich so, dass es nur diese sehr formale Methode war, die... Und ich glaube, es war in gewisser Weise gut, dass Denken manchmal meinen Geist formt. Es ist gut, darüber nachzudenken, keine Funktion zu haben, mit wirklich allem umgehen zu können, was passieren kann, weil das nur in Wahnsinn führt. Jonathan: Also, du bist jetzt zur Uni gegangen mit Informatik als so dem Hauptstudiengang, den du im Auge hattest. Wie hast du dich dafür entschieden? War es einfach so, dass du eine natürliche Anziehungskraft zu den eher wissenschaftlichen Fächern in der Schule oder Highschool hattest, oder gab es einen Moment, in dem du dachtest, eigentlich passt das richtig gut zu mir? Was war so der Weg dahin, dich zu entscheiden, dass Informatik tatsächlich ein Studiengang ist, den du machen wolltest? Brian: Ja, ich hatte wahrscheinlich ziemlich viel Glück, dass ich mich einfach von Natur aus davon angezogen fühlte, glaube ich. Ich weiß nicht, wie, ich erinnere mich... irgendwann so eine Wahl zwischen Studiengängen zu haben, wo ich entweder in den Arts-and-Sciences-Studiengang, den Informatik-Zweig, oder den Engineering-Informatik-Zweig gehen konnte. Und einer davon beinhaltete so etwas wie einen Sprachkurs zu belegen, oder so, Spanisch war das, worauf ich von der Highschool her so eingestellt war. Aber der andere war so, oh, du musst keine Fremdsprache machen, aber du musst mehr Physik und Mathe machen. Und ich so, okay, melde mich dafür an. Also ich schätze, ich war irgendwie, ich glaube, ich fühlte mich davon angezogen. Ich denke, es ist so, obwohl, das eine, worüber ich viel nachdenke, ist, und vielleicht ist das so eine Art Privileg des wissenschaftlichen oder mathematischen Interesses, das ich habe, aber ich habe das Gefühl, wahrscheinlich... Mathe, Mathe machen. Viele Leute sind so, oh, Mathe, ich werde nervös bei Mathe oder es ist stressig oder was auch immer. Und das, ich verstehe, dass das völlig der Fall sein könnte, aber ich frage mich, ob vielleicht manchmal. und Leute, manche Leute finden einfach aus irgendeinem Grund den Spaß an der Mathe und sie können sich sozusagen dafür begeistern, und es ist so, es ist die gleiche Menge an Arbeit und Dinge herauszufinden. Aber es fühlt sich einfach nicht so an, weil, wenn wir Spaß haben, fühlt es sich nicht wie so viel Arbeit an. Es ist wahrscheinlich nicht genau so, das ist nur so eine Privattheorie von mir, die wahrscheinlich nur zur Hälfte stimmt. Jonathan: Aber es war lustig, weil, also ich erinnere mich, dass ich drei Jahre lang Chemie am GCSE in Großbritannien gemacht habe, und zwei Jahre lang hast du drei Jahre des Lernens bis zu deinen GCSE-Prüfungen, und dann hast du diese großen Prüfungen mit 16, und du machst eine ganze Reihe von Themen, also machst du so zehn verschiedene Fächer, und das ist ziemlich viel. Und dann entscheidest du, okay, ich mache A levels, ich mache entweder mehr Mathe oder Naturwissenschaften oder was auch immer, oder Englisch oder Theater oder was auch immer. Aber ich erinnere mich, dass Chemie bei mir etwa zwei Jahre lang nicht klickte, und dann, so in der Woche vor der Prüfung, ergab alles Sinn, so das Periodensystem und wie das alles so funktionierte, und oh, ich konnte alle Antworten aus dem Periodensystem bekommen, ich muss nur so, es ist wie ein Kreuzworträtsel oder was auch immer. Und es war das Aufgehen eines Lichts, und ich erinnere mich, dass ich von diesem Punkt an dachte, oh, das ist das einfachste Fach überhaupt. Aber es waren zwei Jahre des Ringens, um zu diesem Punkt zu kommen, und es ist einfach interessant, weil ich das Gefühl habe, dass es bei mir mit dem Programmieren ähnlich ist, nämlich dass man sich lange in etwas vertiefen muss und dann fällt der Groschen, und ich freue mich darauf, wenn sich das in diese Richtung entwickelt. Aber ich glaube, was du da beschreibst, weißt du, ich sah Freunde, die es einfach sehr schnell auf Anhieb verstanden und irgendwie Freude daran hatten, und der Aspekt des Problemlösens war das Hauptmerkmal des Lernens, was, wie ich finde, sehr interessant ist. Also es ist cool, dass du das auch für dich selbst erfahren hast, schätze ich. Brian: Ich weiß, dass es diese App gibt, die mein Sohn tatsächlich auf seinem iPad gespielt hat. Es gibt ein Unternehmen oder eine Reihe von Apps namens Dragon Box. Ich weiß nicht, ob du die jemals gehört hast. Aber sie machen wirklich schöne Lern-Apps. Normalerweise bin ich ziemlich skeptisch gegenüber den meisten Lern-Apps, aber sie machen einige wirklich gute. Und eine davon handelt von Geometrie. Und ich denke oft darüber als Metapher nach, dass es nicht Geometrie war, es war Algebra. Es gibt auch eine Geometrie-Version. Aber bei der Algebra-Version bringt sie dir nicht wirklich die Konzepte der Algebra bei. Sie bringt dir die Mechanik der Algebra bei. Jonathan: Vergiss nicht, diesem Video einen Daumen hoch zu geben und unseren Kanal zu abonnieren, für mehr Videos wie dieses. Brian: Und sie macht es auf eine Weise, wo du zwei verschiedene Seiten mit diesen zwei verschiedenen Kästen hast, und du musst die Dinge irgendwie auf den beiden Seiten balancieren. Du bewegst das Monster von einer Seite zur anderen, oder du musst sie von einer bestimmten Art von Monster in eine andere umwandeln. Es ist eine Weile her, seit ich es gesehen habe, aber was ich so klar in Erinnerung habe, ist, dass er die Mechanik der Algebra lernte, obwohl er nicht verstand, worauf er hinarbeitete und warum er das tat. Aber es machte Spaß, es zu tun, und sie machten es auf diese Weise, die es wirklich fesselnd machte. Und das, was ich daran so großartig finde, und ich möchte, dass er die App noch einmal durchgeht, wenn er anfängt, Algebra zu machen, weil ich das Gefühl habe, wenn man die Mechanik drauf hat, muss man sich nicht so sehr um diese sorgen und kann mehr über die höhere Ebene nachdenken, ohne wegen des Mechanik-Zeugs gestresst zu sein. Und ich glaube, vielleicht ist das das, was du mit Chemie meinst. Ich weiß nicht, ob es bei dir so war, aber vielleicht ist es so, warum sollte ich mich um all dieses Mechanik-Zeug und diese Regeln und diese Dinge kümmern? Und dann, sobald man an einen bestimmten Punkt kommt, ist es so, okay, ich habe mich da irgendwie durchgekämpft. Jetzt kann ich mich vielleicht darum kümmern, warum mache ich das. Jonathan: Ja, ja. Nein, es war eine wirklich interessante Erfahrung, weil es das erste Mal war, dass ich irgendwie diesen Prozess des Verstehens durchlief, und dann durchläuft man so eine Phase, in der man viel Selbstvertrauen in diese Fächer verliert, weil man denkt, oh, mein Gehirn ist nicht besonders auf diese Art von Denkprozess ausgelegt. Aber wenn man sich dann zum Beispiel die englische Literatur anschaut, was das war, was ich gemacht habe, dann geht man tatsächlich sehr systematisch vor und schaut sich die Sprache an und wie die Dinge strukturiert sind, und versteht so, aber es gibt eine Nuance, das Ganze hat auch eine künstlerische Natur, wobei ich meine, man könnte sagen, es gibt auch dieses künstlerische Element in der Entwicklung und im Programmieren. Jeder Mensch hat seinen eigenen kleinen Geschmack, und ich glaube, das ist es, was mir immer mehr bewusst wird: Es gibt keine feste Regel für irgendetwas. Es sind alles nur Abwägungen. Also nein, es war faszinierend. Also jetzt hast du, du hast uns bei den Kohorten geholfen, die wir, falls jemand zuhört, wir haben so Lernerfahrungen in Elixir und Golang durchgeführt, und Brian, du hast so ein bisschen bei der Elixir-Kohorte mitgeholfen. Also wie bist du zu Elixir als Sprache selbst gekommen? Was war so der Hintergrund, wie du dazu gekommen bist? Brian: Ja, es ist, es ist lustig, weil mich heute jemand genau diese Frage gefragt hat. Weil es eine, ich meine, es ist eine Nischensprache, weißt du, in gewisser Weise. Aber ich bin in der Ruby-. Ich bin seit langer Zeit ein Ruby-Entwickler. Und ich liebe Ruby wirklich, weil es, weißt du, ich bin so ein Programmierer, der, ich will Dinge erledigen, ich will über, ich will schwierige Probleme erledigen. Und es ist schwer, schwierige Probleme zu erledigen, wenn man über die kleinen Details der Dinge nachdenkt und sich mit Pointern oder was auch immer herumschlagen muss, richtig. Also Ruby war dafür großartig. Und dann, natürlich, Joseph Alim, der Schöpfer von Elixir, kam aus der Ruby-Welt. Er war schon in der Ruby-Welt produktiv und beschloss, dass er, nicht musste, vielleicht ist er großartig, er würde seine eigene Sprache erschaffen und darin produktiv sein, und er machte dabei eine großartige Arbeit. Also ich war irgendwie, weißt du, ich war einfach so in diese Welt hineingezogen, wo, weißt du, ich ein paar Podcasts hörte, in denen manchmal über Ruby gesprochen wurde, aber dann war da so, oh, das ist das neue Ding Elixir, und dann, ich glaube, vielleicht ein kleiner Wandel, na ja, eine ziemlich grundlegende Sache war, ich lebte in, ich war gerade tatsächlich für eine Weile zurück nach Columbus gezogen, Columbus, Ohio, und Joseph Aleem kam zur Ruby-Gruppe in Columbus, der Columbus Ruby Brigade. Und sie so, weißt du, Joseph Aleem ist so großartig, einfach zu kommen und über was auch immer zu sprechen, worüber du sprechen möchtest. Und natürlich so er, ja, ich werde über Elixir sprechen, weil ich diese Sprache erschaffen habe. Ich bin wirklich begeistert davon. Ja. Ja, genau. Und ich erinnere mich daran. Es ist so lustig, vor gerade mal einem Jahr fand ich eine Aufzeichnung dieser Präsentation. Und sie ist ein bisschen körnig. Aber man kann sie noch anschauen. Und ich kann immer noch, ich kann die Stelle finden, wo ich Joseph eine Frage stelle. Und genau wie ich mich erinnere, diese, diese Verwirrung gehabt zu haben, wie genau. Jonathan: Das begeistert mich wirklich. Brian: die, diese Konzepte, so, man erstellt diese Prozesse und sie können sich von Fehlern erholen, wenn man Supervisoren hat und so weiter. Und ich erinnere mich nicht genau, was er sagte, aber ich war so, wie funktioniert das? Und so, so, okay, du erholst dich von Fehlern. Aber lernst du, erfährst du trotzdem noch über diese Fehler? Oder so, was passiert? Und ich, es ist, es war dieser ganze Prozess, irgendwie zu lernen, was das bedeutet. Und ich finde es einen wirklich interessanten Prozess. Ich glaube, damals hatten viele in der Elixir-Community Mühe damit, diese Konzepte zu beschreiben. Und ich denke, es gibt mehr Blogposts da draußen und immer mehr Dinge, die Leute aufnehmen können, um schneller auf den Stand zu kommen. Also, aber wie auch immer, das ist so der Ort, an den ich kam. Ich glaube, das war einer der großen Orte. Es ist einfach so, oh, das klingt interessant. Und wenn Jose sagt, dass es cool ist, dann sollte ich es mir anschauen. Jonathan: Also war es fast so, dass das Timing richtig war, dass du irgendwie in das Ganze hineingewachsen bist? Es war einfach so, dass viele verschiedene Dinge zusammenkamen und für dich Sinn ergaben. Hattest du andere Sprachen erkundet? Ich meine, du hast Pointer erwähnt. Und ist das ein Verweis auf Go speziell, oder war es so, dass du einfach auf der Suche nach einer Sprache warst, die zu dir passt, könnte man sagen? Brian: Ich glaube, ich... Ja, ich meine, ich... ich bin total begeistert von der Idee, dass verschiedene Dinge für verschiedene Zwecke gut sind. Und ich, weißt du, ich bin jetzt riesig in Elixir drin. Ich habe das Gefühl, ich bin wahrscheinlich ein bisschen voreingenommen, dass, ja, Elixir so ziemlich für alles verwendet werden kann. Das ist wahrscheinlich nicht ganz richtig. Aber ich glaube, die Pointer-Sache, ich glaube, ich hatte einfach C im Kopf, glaube ich, weißt du, ich habe ein bisschen C, C++ auf dem College gemacht. Ich glaube. Weißt du, ja, also ich, für eine Reihe von Jahren arbeitete ich mit Neo4j, der Graphdatenbank. Und das war etwas, in das ich total vertieft war. Und ich war einer der Maintainer für die Neo4j-Gems für Ruby. Weil es diese war Wir müssen nicht zu sehr ins Detail gehen, aber Graphdatenbanken können dich bestimmte Dinge schneller machen lassen, oder einfach so auf manche Weisen leichter. Es war für mich so, es war ein, es ist so, nicht viele Leute nutzen Neo4j dafür, aber ich habe das Gefühl, es war irgendwie wie Ruby, darin, dass es dir half, über Dinge auf einer höheren Ebene nachzudenken. Und so ließ es dich Dinge schöner machen. Aber ich bin einfach in dieser Idee drin, so, okay, Graphdatenbanken könnten für diesen Zweck gut sein, und dann eine relationale Datenbank für das hier und eine Dokumentendatenbank für das hier. Und okay, nun, wenn ich einen kleinen Dienst machen muss, der superschnell laufen muss, vielleicht würde ich ihn in Rust oder Go oder was auch immer machen. Und so sollte ich über diese Sprachen Bescheid wissen, und wenn ich, höhere Dinge, gibt es Ruby und Python, aber jetzt gibt es Elixir, und Elixir ist, und es hat tatsächlich viele große Vorteile. Es ist eine super schwierige Sache, herauszufinden, was für verschiedene Dinge gut ist, weil so viel in einer Sprache steckt, zum Beispiel, dass es schwer ist, herauszufinden, ob sie für etwas gut ist. Und außerdem werden Leute, mich eingeschlossen, glaube ich, emotional in einige der Sprachen investiert, die sie aus dem einen oder anderen Grund mögen. Und so ist es so, na ja, es ist schwer. Mm-hmm. Jonathan: Und Brian, benutzt du Elixir täglich bei der Arbeit? Und was ist Arbeit für dich im Moment? Also was, wie sieht der Alltag an diesem Punkt aus? Brian: Ja, also ich bin Berater bei Erlang Solutions. Und so arbeite ich mit einem Kunden von Erlang Solutions, einem Unternehmen namens VicAI. Ich weiß nicht, ob du von ihnen gehört hast. Ich glaube, Lars Wirthven hat ihnen, glaube ich, ein wenig geholfen und ein bisschen über sie in seinem Blog geschrieben. Er ist eine Art halbberühmte Person in der Elixir-Welt. Und ja, also sie sind ein Unternehmen, das... anderen Unternehmen hilft, sie haben, sie machen eine Anwendung, die Unternehmen hilft, Rechnungen halb oder voll automatisch mithilfe künstlicher Intelligenz zu verarbeiten. Okay. Und so ja, das ist, und so haben sie, weißt du, natürlich Machine-Learning-Modelle, aber dann haben sie eine Elixir-API, die es ihnen ermöglicht, sozusagen viele Dinge zu koordinieren. Jonathan: Okay. Und hast du es den Tag über mit vielen verschiedenen Kunden zu tun, oder arbeitest du so mit einer spezialisierten Gruppe, mit der du sozusagen durchgehst und dich zusammentust? Wie funktioniert das alles? Brian: Ja, also ich bin normalerweise in einer Art Feature-Team mit einem Produktmanager, und wir haben einen Webentwickler und einen Mobile-Entwickler und manchmal einen Backend-Entwickler, das Machine-Learning-Team. Und dann ist es schön, manchmal haben wir so eine Produkt- oder QA-Person, die sich mit unseren Kunden austauscht, um uns sozusagen dabei zu helfen, die relevantesten, am meisten benötigten, so, weißt du, was brauchen die Nutzer und die Kunden tatsächlich? Aber es ist ein bisschen wie Ebenen, so, wir, weißt du, je nachdem, was es ist, wie wir haben, wir haben einen großen direkten Kunden, und dann haben wir einige so Buchhaltungssysteme, diese ERPs, mit denen wir zusammenarbeiten, die Leute haben, die, weißt du, ihre Kunden erfassen, ehrlich gesagt arbeite ich nicht wirklich viel mit einem Großteil davon, mit der Kundenseite so sehr. Aber ich glaube, wir haben viele verschiedene Wege, wie wir uns mit, mit Kunden austauschen, und wir müssen irgendwie viele verschiedene Tänze aufführen, um zu integrieren, was, was an sich ein ziemlich interessantes Problem ist. Jonathan: Also, ist die Woche ziemlich abwechslungsreich, und machst du während der Woche viele verschiedene Dinge, oder ist sie ziemlich vorhersehbar? Brian: Ähm, ja, ich glaube, es ist, weißt du, ich glaube, ich habe ziemlich viel Glück, dass ich, äh... ich normalerweise, ich meine, es gibt, es gibt normalerweise ein Projekt, an dem ich arbeite. Aber wie, zum Beispiel, etwas, von dem ich glaube, dass ich kürzlich darüber sprechen kann, ich habe gerade daran gearbeitet, sicherzustellen, dass unsere Back-Berechnungen korrekt waren, wie wir Rechnungen verarbeiten. Weil das eine knifflige Sache sein kann, sich einfach damit zu befassen. Besonders wenn man Rechnungen von einer ganzen Reihe verschiedener Anbieter bekommt, die, weißt du, die Dinge unterschiedlich handhaben können. Und so, aber ich habe ziemliches Glück, dass sie, sie möchten sicherstellen, dass wir sozusagen unsere... Codequalität im Griff haben und, und generell einfach die Dinge im Griff haben. Und so versuchen wir, eine ordentliche Menge Zeit damit zu verbringen, Dinge zu tun, um die Dinge besser zu machen, unseren Code besser zu machen oder Dinge zu verbessern. Und so, weißt du, ich, das ist auch irgendwie einfach, wie ich bin. Es ist so, ich versuche normalerweise einfach, zumindest einen Teil meiner Zeit zu nehmen für so, weißt du, wir, ich mache viel so Integration mit Datadog für Anwendungen, um sicherzustellen, dass wir Tracing für unsere Anfragen und unsere Hintergrundjobs und all diese Dinge haben. Und das ist etwas, das mich wirklich freut, sozusagen, sobald ich das gemacht habe, so, okay, jetzt habe ich die Werkzeuge, die ich brauche, um meine Arbeit zu machen. Aber ja, so, so, auch ich glaube, gerade kürzlich, gab es etwas, für das ich mich interessierte, so eine Art, Code zu organisieren und auf andere Module zu verweisen. Und es gibt ein Tool in der Elixir-Welt, Credo, das es dir ermöglicht, sozusagen verschiedene Regeln in deinem Codestil durchzusetzen. Und so habe ich eine neue Credo-Regel erstellt, um diese Regel möglicherweise durchzusetzen. Und so bin ich irgendwie gespannt, wie es läuft. Jonathan: Okay, cool. Das klingt, ehrlich gesagt, ein bisschen zu hoch für mich, aber teilweise, ich bin sicher, da draußen wird jemand wissen, worum es geht. Aber du hast vorhin erwähnt, dass du ein bisschen für ein Startup gearbeitet hast, wenn ich mich recht erinnere. Also hattest du diese Tech-Support-Seite und auch so eine Startup-Geschichte. Ist das etwas, das dich in Zukunft interessieren würde, oder ist es etwas, das immer im Hinterkopf ist? Wie sieht so die Richtung für dich aus, glaubst du, in den nächsten fünf, 10 Jahren in Bezug auf das Programmieren? Ich meine, du weißt es vielleicht nicht, aber ich dachte nur, es ist eine ziemlich interessante Frage, Leute einfach zu fragen, wo siehst du dich in fünf Jahren, fünf, 10 Jahren? Brian: Ja, das ist eine gute Frage. Ich meine, ich... was Startups angeht, bin ich immer zwischen kleinen bis mittelgroßen Unternehmen hin- und hergegangen. Jonathan: Danke. Brian: so glücklich in sehr großen Unternehmen. Und ich habe mich nie wirklich als Berater gesehen, bis vor Kurzem, wo ich so dachte, okay, das ist irgendwie... interessant, sozusagen... zu verschiedenen Unternehmen zu gehen und vielleicht zu versuchen, ihnen zu helfen, ihre Probleme zu lösen, aber dann vielleicht zu einem anderen Unternehmen weiterzuziehen. Ich meine, falls jemand von Big Gag zuhört, ich bin nicht unglücklich. Jonathan: Ich dachte so, ich glaube nicht, dass ich das jemanden in einem Podcast fragen sollte, aber ja, nur offensichtlich, mal angenommen, alles läuft großartig. Sorry, meine Katze kratzt hier gerade an der Tür. Brian: Oh ja, ja, ich hatte gerade ein, wir haben vor etwa einem Monat einen Welpen bekommen, und so muss ich ständig so, sie bellt oder sie, weißt du, vielleicht ein- oder zweimal so aufs Bett pinkeln, und dann ist es so, ich muss mich darum kümmern. Jonathan: Also wir haben gerade bekommen, es ist verrückt. Jeden Morgen um 5 Uhr. Um 4:30 Uhr morgens springt sie so aufs Bett und fängt an, so ihr ins Gesicht zu tätscheln. Es ist süß und bezaubernd. Aber ja, nach einer Weile ist es so, komm schon. Aber ja, zurück zum Ganzen, so die nächsten paar Jahre, was würdest du gerne tun oder verwirklichen können? Brian: Ja, das ist eine gute Frage. Ich glaube, ich stehe auf die Idee, herauszufinden... Ich glaube, eines der Dinge, die mich vielleicht an Elixir reizen, ist, dass es noch ein bisschen frisch ist. Und so mag ich... so, was sind einige Wege, um sozusagen die neuen Pfade zu bahnen und die neuen Muster zu finden. Und besonders in so, weißt du, es ist nicht nur so, weißt du, ich war eine Weile in der Ruby-Welt. und so, in Elixir zu kommen, manchmal gibt es Dinge, die so sind, oh, das habe ich an Ruby vermisst, also wäre es toll, das zu bauen oder zu tun. Aber dann gibt es auch einfach Dinge, die so sind. weißt du, oh, das ist etwas, das ich in Ruby nicht sehr gut konnte. Aber wenn ich einfach das mache, dann, weißt du, könnten wir, es könnte sogar noch großartiger sein, indem wir die Stärken von Elixir ausnutzen. Also ich glaube, das ist so die Art von Zeug, an dem ich interessiert bin, so das Finden, das Finden der netten Anwendungsfälle und über sie zu sprechen, sie zu teilen, weil das auch etwas ist, das mich immer inspiriert, nämlich wenn ich lese, besonders wenn ich über etwas lese, so einen echten Anwendungsfall, und die Details davon sehe, nicht nur so, ja, wir haben das gemacht und wir so, so sind wir vorgegangen. Es ist so, aber wo kann ich etwas Code sehen oder so, was steckt in den Details? Ja. Jonathan: Es klingt, als ob dir die optimierende Seite der Dinge gefällt, sozusagen etwas zu nehmen und einen neuen Weg zu beschreiten, um etwas besser und effizienter zu machen. Das ist jedenfalls, was ich heraushöre. Ist das fair, glaubst du? Brian: ähm Ja, ich denke, und ich denke, effizient ist gut. Aber ich glaube, vielleicht würde ich sogar mehr sagen, Wege zu finden, um Dinge angenehm zu machen. Ich bin total in der Idee, wie können wir Probleme lösen, damit wir uns nicht mehr mit ihnen befassen müssen. Wie Bibliotheken erstellen, damit wir so sein können, okay, dieses Problem, ja, dieses Problem ist jetzt gelöst, lass uns zu etwas übergehen, das, weißt du, ein besserer Einsatz unserer Zeit ist, richtig? Jonathan: Nein, klar. Das ergibt Sinn. Also eines der Dinge, die ich gerne Leute frage, besonders in dem Ganzen, weil ich ziemlich, ich würde sagen, ich bin ziemlich neu in der Tech-Branche als Ganzes und komme nicht aus einem besonders erfahrenen Hintergrund, was das Entwickeln von klein auf angeht, etc., etc. Und eines der Dinge, die mir oft aufgefallen sind, und das hört man oft von Freunden, die in der Tech-Branche sind, ist, dass ziemlich viele Meinungen herumschwirren, was ziemlich, ziemlich zutreffend erscheint. Aber wir haben diese Frage, die wir gerne Leuten stellen, die in unseren Podcast kommen, nämlich: Was ist der Hügel, auf dem du in der Tech-Welt sterben würdest? Und offensichtlich ist das ein bisschen augenzwinkernd formuliert. Aber gibt es eine bestimmte Denkweise oder Meinung, die du hast, bei der du sagst, das ist der Hügel, den ich verteidigen würde? Und es kann alles sein. Ein gutes Beispiel wäre DJ, einer unserer Maintainer, den du vielleicht kennst, sein Hügel war die Rolle des wirklich entscheidenden Gesprächs, so gut gemeinte und gute, gut strukturierte Gespräche im Tech-Bereich zu führen. Also diese robuste, weißt du, herausfordernde Befragung zu haben, die sozusagen auf den richtigen Grundlagen aufbaut, könnte man sagen, ich versuche mich zu erinnern, was jemand anderes gesagt hat. Rebecca bei Unison sagte, sie hätte lieber 50 Leute in einem Team, die hart arbeiten, gewissenhaft sind und vielleicht weniger talentiert sind, als ein Genie, mit dem man sich herumzuschlagen hat. Also hoffentlich sind das so gute Beispiele. Und ich habe dich mit dieser Frage aus heiterem Himmel ein bisschen unter den Bus geworfen, weil es wahrscheinlich einige Perspektiven gibt, die du haben könntest. Aber gibt es eine, bei der du sagen würdest, nein, darauf bin ich bereit, zu beharren? Brian: Hmm. Ja. Ja, weil mein erster Gedanke so war, oh, wie Camel Case versus Snake Case. Nun, ich weiß nicht, ob ich auf diesem Hügel sterben würde oder nicht. Ich glaube, viele dieser Dinge so Jonathan: Ich konnte nicht... Brian: Ja, ja, aber bei vielen dieser Dinge glaube ich, ich... werde mit der Zeit vielleicht weniger meinungsfreudig. Aber ja, ich mag diese höheren Dinge, von denen du sprichst. Ich habe das Gefühl, ich könnte, ich mag. Lass mich sehen, ob ich das ansprechen kann. Leider schneidest du das, also werden meine Pausen einfach verschwinden, richtig? Jonathan: Das ist zumindest der Plan. Brian: Ja. Also es gibt ein Tool namens Remote Retro. Das habe ich mehrere Male benutzt und kann es wirklich sehr empfehlen. Und ich habe davon erfahren, weil es in Elixir geschrieben ist. Aber abgesehen davon finde ich, es ist einfach gut gestaltet. Und mit der Zeit ist es zu einem immer besseren Tool geworden. Aber es beginnt immer mit einer Art Prime Directive, die, glaube ich, als ich sie mir jetzt anschaue, sehe ich, dass sie von Norm Keith übernommen wurde. Hier gibt es eine Wiki-Seite, also kannst du das nachschlagen. Du kannst zu remote-retro.org gehen, wenn du das anschauen möchtest. Aber... die, ja, hier ist die Prime Directive, die, glaube ich, einfach, es ist so die Sache, die man am Anfang einer Retrospektive liest, um die Leute in die richtige Denkweise zu versetzen, die besagt: Unabhängig davon, was wir entdecken, verstehen und glauben wir wirklich, dass jeder die bestmögliche Arbeit geleistet hat, mit dem, was er damals wusste, seinen Fähigkeiten und Fertigkeiten, den verfügbaren Ressourcen und der jeweiligen Situation. Ähm, also ich denke, das ist gut. Ich denke, es ist ähnlich wie... Du musst sicherstellen, dass du immer... So, und tatsächlich, ich sage sogar noch eine Sache. Es gab ein Interview, und ich kann, ich kann das teilen, wenn du magst, so den Link in die Show-Beschreibung oder was auch immer später setzen. Jonathan: Ich verweise auf jeden Fall darauf. Brian: Ja, ich empfehle diesen Artikel immer, obwohl er immer super schwer zu finden ist und ich weiß nicht, er ist jetzt wahrscheinlich ein bisschen in Vergessenheit geraten, aber es gab diesen... diesen Mann, der ein Verwalter der Veterans Association in den USA war, der Regierungsbehörde. Und speziell, glaube ich, befasste er sich mit deren Gesundheitssystem. Und er hatte dieses Interview, in dem er aus der Luft- und Raumfahrtwelt kam. Und vieles von dem, worüber er sprach, war... wie in der Luft- und Raumfahrt, in vielen, wahrscheinlich ist es nicht überall perfekt, aber in vielem, was er erlebte. Man würde den Prozess beschuldigen, man beschuldigt nicht die Leute. Und wenn etwas schiefgeht, sagt man, weißt du, okay, weißt du, es ist nicht, weißt du, wie, ich habe, ich habe eine Tabelle in der Produktion gelöscht. Aber zum Glück hat mir niemand die Schuld dafür gegeben. Sie so, okay, was machen wir jetzt? Nun, wir, wir machen es so, dass, wenn du in der Konsole in die Produktion gehst, sie hochkommt, die Eingabeaufforderung rot ist. Und so ist es klar, dass du in der Produktion bist, richtig? Weil ich diesen Fehler gemacht habe, weil ich dachte, es sei Entwicklung, als ich ja, richtig. Also, also dass ich das Glück hatte, ein Büro zu haben, in dem wir den Prozess beschuldigten und nicht die Person. Und so war das wirklich großartig. Und so sprach er darüber im Kontext von so Medizin, das war so, okay, wir, manchmal gibt vielleicht eine Krankenschwester einem Patienten die falsche Medikation. Es ist so, nun, manchmal sind die Etiketten verwirrend, und oder es gibt dieses Ding, das so ist, es ist schwer, oder es ist einfach, was auch immer, es ist nicht ideal. Es ist so, okay, lass uns das beheben. Lass es uns tun. Also wenn wir wollen, wenn wir uns wirklich um den Patienten kümmern, lass es uns zu einem Prozess machen, bei dem es schwerer ist, schiefzugehen. Also das ist etwas, das, glaube ich, eine große Sache für mich ist. Jonathan: Das ist wirklich cool. Ich werde diese Show-Notizen auf jeden Fall einfügen. Kommt das aus dem Agile-Bereich, ist es so eine Art auf Agile-Methodik aufbauend, könnte man sagen? Oder ist es so ein bisschen etwas anderes? Was wären da deine Gedanken? Brian: Weißt du, das ist eine gute Frage, glaube ich. Ich hatte den Eindruck, dass es Teil einer ziemlich langen Tradition in einigen Kreisen der Luft- und Raumfahrttechnik war. Ich meine Luft- und Raumfahrt, ich glaube, vielleicht hat es einfach damit zu tun, dass, wenn man, wenn man Flugzeuge baut oder Raketen baut. Man ist in dem Job, wo es so ist, das muss funktionieren. Und wenn wir einen Menschen dort hineinsetzen, ob es ein Astronaut oder ein Passagier ist, müssen wir ihm die bestmögliche Chance geben, dass es funktioniert. Und der beste Weg, das zu tun, ist, unsere Egos beiseite zu legen und zu sagen, weißt du, was? Jonathan: ähm Brian: was wird dafür sorgen, dass das jedes Mal so gut wie möglich funktioniert, wenn wir einfach dem Prozess folgen. Ich glaube, das ist ein Teil davon, ja. Jonathan: Weil, als ich Remote Retro nachgeschlagen habe, sah es sehr nach so einer Art Agile-Terminologie aus. Also frage ich mich, ob es vielleicht irgendwo von dort aus verändert wurde. Aber das ist wirklich cool. Das habe ich noch nie gehört. Das eine, das ich gehört habe, dreht sich um Checklisten, besonders in der Medizin und der Luft- und Raumfahrt. Es ist so, ein Pilot geht eine Checkliste durch. Er weicht nicht von seiner Checkliste ab. Und ein Arzt macht dasselbe. Das ist wirklich cool. Brian, wir kommen langsam zum Landeanflug. Ich habe heute Abend noch eine Frage für dich. Und es ist wirklich: Was ist deine Empfehlung für die Exorzismus-Community in der nächsten Woche? Wenn du einen Rat geben könntest, und es könnte zu allem sein. Es könnte so sein wie, geh Kombucha trinken bei, ich weiß nicht, deinem örtlichen Deli, oder geh im Arktischen Ozean laufen und schwimmen, oder was auch immer es ist. Wenn es eine Sache gäbe, die du der Exorzismus-Community empfehlen würdest, um es mal auszuprobieren, was wäre es diese Woche? Brian: Prost! Hmm. Äh, ich würde sagen... dass, ähm, ich meine, im Rahmen, im Rahmen deiner äh, weißt du, Fähigkeiten, weil vielleicht ist das, weißt du, nicht, es ist immer schwer, allen einen Rat zu geben. Aber ich glaube, eines, das für mich eine große Sache war, ist, ich glaube, einmal ging ich in die Notaufnahme, weil ich plötzlich Kopfschmerzen hatte. Und es gab vielleicht die Sorge, dass es so ein Blitz-Kopfschmerz war, was eine ziemlich ernste Sache sein kann. Also, also ging ich hin und ließ den Arzt mich anschauen, und dort war alles in Ordnung. Aber weißt du, der Arzt stellte einfach so allgemeine Fragen und sagte so, okay, wie viel Bewegung bekommst du? Und, weißt du, was ist deine Aktivität und was auch immer. Und, und ich so, weißt du, als Amerikaner war ich so, na ja, ich, weißt du, ich gehe ein gutes Stück, ich komme vielleicht auf 8000 Schritte pro Woche, pro Monat, oder im Durchschnitt pro Tag. Und er so, weißt du, du solltest, du solltest dreimal pro Woche rausgehen, für 45 Minuten, so richtig ins Schwitzen kommen. Und, weißt du, ich habe es nicht sofort gemacht. Aber, weißt du, ich war nach vielleicht fünf oder sechs Monaten, kam ich in ein Muster, eine Gewohnheit des Laufens, normalerweise dreimal pro Woche, manchmal waren es zweimal pro Woche, aber weißt du, und ich glaube, dass das etwas war, das so eine große Veränderung in meinem Leben war. Ich glaube, es hat mir sehr geholfen. Also ich glaube, ich weiß, dass es eine super schwierige Sache ist und es für mich super schwer ist, hineinzukommen. Und ich glaube, ein Teil der Art, wie ich es gemacht habe, ist, ich so, okay, ich gehe raus, und wenn ich am Ende 75% der Zeit gehe, dann okay, dann ist es eben so. Ich baue es einfach auf. Jonathan: Das ist cool. Ich finde es interessant, dass du das erwähnt hast, weil wir... Brian: Ich finde es interessant, dass du das erwähnt hast, weil wir... Jonathan: Nein, das ist wirklich cool, weil eines der Dinge, über die wir bei den Kohorten nachzudenken versuchten, war, was fördert es, dass Leute wachsen und lernen und sich sozusagen bewegen und Schwung aufnehmen, ich schätze, in ihrem Programmier-Jog, könnte man sagen. Und eines davon war einfach, rauszugehen, selbst wenn es nur 10 Minuten am Tag war, einfach um sich in die Lage zu versetzen, es auszuprobieren. Und selbst wenn man nicht wirklich weiterkommt, selbst wenn man nur die Anleitung liest und das war's dann für den Tag, solange man in irgendeiner Form auftaucht, macht das irgendwie einen großen Unterschied. Aber ich finde, das ist eine großartige Empfehlung, definitiv eine Erinnerung für mich, meinen Sport ein bisschen in Gang zu bringen, einfach weil es so bewegungsarm ist, manchmal drinnen zu sitzen. Also wenn jemand zuhört, da draußen, nimm dir Brians Rat zu Herzen und geh raus zum Laufen. Aber ich meine, in den nächsten Wochen wird es in Stockholm anfangen, etwas kühler zu werden. Läufst du noch mitten im Winter, oder ist es so ein Indoor-Laufen? Brian: Ja, mache ich. Und ich meine, ich würde auch sagen, so, weißt du, die beste Bewegung, die man machen kann, wenn man 30, 40 Minuten am Tag, dreimal pro Woche oder so rausgeht, ist so, was auch immer, was auch immer das ist, was dir am meisten Spaß macht, weißt du, denn wenn dir Laufen keinen Spaß macht, dann wirst du das wahrscheinlich nicht durchhalten. Also weißt du, das sage ich zuerst, aber aber ja, der Winter, weißt du, ich habe eine Mütze, weil es in Stockholm auch dunkel ist. Also hat meine Frau mir eine Mütze besorgt, die eingebaute Fasern hat, die retroreflektierend sind. Okay, also das ist schön. So kann es mich sicher halten. Und dann habe ich eine Gesichtsmaske und Ohrensachen, die ich anziehen kann, um. Ja, und dann. Ja, also ich muss mich schon warm einpacken, aber es kann auch gut sein, weil es, wenn es kalt ist, weißt du, kann ich, kann ich langsamer bleiben und trotzdem, ich schaffe es trotzdem. Ja, genau. Genau. Jonathan: Oh, das ist großartig. Aber Brian, ich wollte mich einfach riesig für deine Zeit heute Abend bedanken, und es war wahrscheinlich ein langer Tag mit Kindern und Arbeit und einem neuen Welpen und all so etwas, also wollte ich mich einfach für deine Zeit und dafür bedanken, dass du sie mit uns geteilt hast, und für alle, die da draußen zuhören, wir werden die Show-Notizen in der Beschreibung unten einfügen, damit ihr euch das anschauen könnt. Wenn du irgendeine Gelegenheit hast und das hier hörst, schau dir den Elixir-Track an, und ich bin sicher, Brian, ich weiß nicht, ob du überhaupt Mentoring beim Elixir-Track machst, aber vielleicht, wenn du jemals im Mentoring-Bereich bist, siehst du vielleicht ein paar neue Leute auftauchen und Dinge ausprobieren. Ich habe viel Gutes über Elixir gehört, also denke ich, es ist definitiv einer, den man für die Zukunft im Auge behalten sollte, und ja, hab einen wundervollen Abend, Brian. Warte noch ein kleines bisschen, wenn ich die Aufnahme stoppe, aber ja, es war großartig, dich bei uns zu haben, und danke, dass du ein wenig Einblick in das Leben von Brian Underwood geteilt hast, und ja, also danke an alle fürs Zuhören und habt einen wundervollen Abend. Wir sehen uns bald.
Hör zu, lerne und lass dich von unseren Community-Mitgliedern inspirieren.