top of page
Folge
15
Clojure – ein Juwel unter den Programmiersprachen?
16. Apr. 2021
Die Welt der Programmiersprachen hat seit 2007 eine neue Bewohnerin – Clojure, aber die Sprache ist immer noch nicht weit bekannt. Deswegen reden wir heute mit Ingo Küper, Geschäftsführender Gesellschafter von Doctronic GmbH. Ingo studierte Angewandte Mathematik und Informatik, blickt auf mittlerweile 37 Jahre Erfahrung in der Programmierung und Software-Entwicklung zurück und wird erste Einblicke in die Welt von Clojure geben. Neben dem aktuellen Stand von Clojure gibt er wertvolle Tipps, um den Einstieg zu erleichtern.
Transkript dieser Folge
Ashley: Willkommen zur nächsten Ausgabe des Taktsoft Campus Podcast. Schön, dass sie wieder dabei seid. Vor 14 Jahren tauchte Clojure auf, wird Clojure aber nur von benutzt. Das Clojure zu bieten hat, wird heute Ingo Küper erzählen. Er gibt Einblicke aus seiner Erfahrung mit Clojure. Ingo ist geschäftsführender Gesellschafter der Doctronic GmbH. Er studierte angewandte Mathematik und Informatik und blickt mittlerweile auf 37 Jahre Erfahrung in der Programmierung und Softwareentwicklung zurück, 23 davon beruflich. Seit 20 Jahren bildet Ingo Softwareentwickler aus. Und denkt daran, wenn ihr Themen habt, die ihr gern in einem Podcast beleuchtet haben möchtet, sendet eine E Mail an podcast@taksoft.com . Ich freue mich auf das Gespräch. Hallo, Ingo. Hi.
Ashley: Hallo, Ashley. Guten Tag. Und wie geht es dir heute? Alles soweit in Ordnung?
Ingo: Ja, soweit ganz gut. Wie sieht es bei dir aus?
Ashley: Ach, auch alles. Alles ganz gut. Ganz gut. Danke schön. Das Thema heute, worüber wir uns unterhalten wollen, ist Clojure. Und wenn ich das richtig weiß, taugt der Clojure für circa 14 Jahren. So die erste Version auf den Markt. Und ich würde erst mal so sagen, es ist vielleicht nicht so bekannt bei den Leuten. Jeder kennt ja so java oder andere andere Programmiersprachen, aber clojure ist ist eher unbekannt. Ist es auch richtig so oder ist das nur meine Wahrnehmung?
Ingo: Also grundsätzlich halte ich das für falsch, aber es stimmt.
Ashley: Okay, dann versuchen wir heute das mal ein bisschen zu ändern, dass mehr Leute dann über das Thema Clojure Bescheid wissen. Ähm, genau. Clojure. Ähm, das Thema Lisp Java. Deshalb kommt dieses Oh Glojure Lisp und gerade deshalb kommt dieses dieses Wort Clojure zusammen. Aber erstmal an eine ganz einfache Frage Auch ich habe so ein bisschen gelesen. Es geht um das Thema Functional Programming. Kannst du erst mal erklären. Okay, was ist das? Und was ist dann eigentlich der Unterschied zwischen Clojure und anderer z.B. Clojure Anführungsstrichen normal? Entschuldigung, wenn ich jetzt nochmal sage Programmiersprache, ich sehe dich lachen, da ich glaube, du willst mich da korrigieren. Also zum Thema Clojure in den nächsten Minuten.
Ingo: Ja, sehr gerne. Ähm, ja. Also oberflächlich betrachtet ist Clojure eine funktionale Programmiersprache der Lisp Familie. Aber das ist wirklich nur der oberflächliche Blick. Die Schlagworte Funktionale Programmierung und Lisp haben vielleicht dazu geführt, dass wir uns von 50 % der Zuhörer jetzt gerade schon verabschieden konnten. Was?
Ashley: Die müssen wir jetzt wieder abholen? Ja, was?
Ingo: Was auch sehr schade wäre, denn das sind einfach nur die. Die die ich sag mal die die rand parameter dieser Sprache. Das ist aber nicht das, was die Sprache ausmacht.
Ashley: Und wenn du dann sagst okay, das ist nicht was die, was die Sprache ausmacht, was sind dann so die Hauptsachen, die, wo du sagen würdest, okay, und darum geht es eigentlich?
Ingo: Ja, ähm. Die Frage ist, wann wir Programmiersprachen lernen. Und meiner Erfahrung nach lernen wir Programmiersprachen, meistens von außen getriggert. Das kann eine Projekt Anforderung sein, eine technische Anforderung. Irgendetwas sorgt dafür, dass wir Programmiersprachen lernen, was sehr schade ist. Alan Purvis Dem werden ziemlich viele schlaue Zitate zugeschrieben. Aber ein extrem schönes Zitat ist Eine Programmiersprache, die dir keine neue Sicht oder Denkweise eröffnet, ist es nicht wert, gelernt zu werden. Das ist ziemlich akademisch und sehr arrogant und passt auch überhaupt nicht zu unserem, zu unserem, zu unseren Erfahrungen im Berufsleben. Aber das ist genau das, was Clojure ausmacht. Wenn du dich mit Clojure beschäftigst, dann wirst du ein besserer Programmierer. Und ich weiß, dass das ein total großes Versprechen ist. Aber es stimmt, du beschäftigst dich, beschäftigst dich mit der Sprache und du wirst ein besserer Java Programmierer sein. Du wirst danach auch ein besserer C#, Programmierer oder Objective C oder C++ Programmierer sein, obwohl du die Sprache vielleicht gar nicht gelernt hast, geschweige denn beherrschst oder oder gar einsetzt. Nur das Auseinandersetzen mit der Sprache macht dich besser und ich finde, das ist eine Besonderheit. Das habe ich in all den Jahren meiner Erfahrung bisher in der extremen Form noch nicht erlebt.
Ashley: Und kannst du dann ein paar Beispiele geben, warum das so ist? Ist es dann nicht so, dass ich beschäftige mich einfach viel mehr mit Java und deshalb kann ich besser mit Java umgehen oder bessere Programmierer? Was? Wo ist dann der Anfangspunkt zu sagen okay, über Clojure werde ich eine besserer Programmierer in andere Sprachen.
Ingo: Es zwingt dich, über Dinge nachzudenken, über die du vielleicht in deiner Karriere noch nie so nachgedacht hast, sondern sie mehr als selbstverständlich wahrgenommen hast. Ein schönes Beispiel sind ja immer Kinder, Kinderfragen immer warum? Und das machen die auch mit einer Ausdauer, die.
Ashley: Einem.
Ingo: Manchmal einiges abverlangt. Und letztendlich hat der Schöpfer der Sprache Richard Hickey, er hat genau das gemacht. Der hat einfach sich die Softwareentwicklung angeguckt und hat gefragt warum. Und noch mal warum, warum, warum, warum? Die Five Why´s, also die fünf warum? Das ist ja auch 111 Verfahren, wie du an Informationen kommst. Ich weiß nicht, ob du das kennst, aber es gibt so die Ansage Stell fünfmal die Frage warum und dann kommst du zum Kern der Sache. So, und das hat er halt konsequent gemacht und ist dabei auf Dinge gestoßen, die er hinterfragt hat und ganz anders umgesetzt hat als alle Programmiersprachen, die ich kenne. Ich kann gleich Beispiele geben.
Ashley: Das wollte ich gerade sagen! Das wäre wirklich super interessant zu hören. Genau, was waren das für Dinge oder welche Arten von Dingen waren das?
Ingo: Ja, kurz noch vorweg geschickt neue Lösungen. Also neu ist nicht immer besser, entgegen einiger Sitcoms. Aber man muss immer sehen, dass Programmiersprachen Probleme lösen, die wir früher hatten im Rahmen dessen, was wir früher kannten. Also die Lösungen orientieren sich immer am aktuellen Wissensstand und am aktuellen Stand der Technik. Und nur weil Programmiersprachen das bisher so gelöst haben, heißt das nicht, dass das schlecht ist. Das ist aber auch kein Garant dafür, dass das gut ist. Und nehmen wir mal ein paar Beispiele Transaktionen und Datenbanken, das kennen wir. Und warum machen wir das? Weil wir die Daten konsistent halten wollen. Wir möchten, dass eine Datenbank Operation mehrere Daten ändert und entweder ganz oder gar nicht. Ich möchte in einer Datenbank den Nachnamen einer Person und die Steuerklasse gleichzeitig ändern, weil diese Person geheiratet hat oder gar nicht. Und das ist ja total wichtig. Wir wissen, wie wichtig das ist, weil die Daten konsistent sein müssen. Warum machen wir das denn in den Programmiersprachen nicht? Wieso ist denn eine Programmiersprache von Hause aus nicht in der Lage zu sagen Ich unterstütze Transaktionen und du als Programmierer muss nicht viel dafür machen, wenn du einen Punkt änderst in X und Y Koordinaten und du verschiebst ihn von einer Ecke in die andere, dann gibt es genau diese zwei Zustände. Er ist erst links unten und dann rechts oben. Er ist nicht zwischendurch mal kurz links oben, weil du erst die Y Koordinate gesetzt hast. Und das ist eine sehr interessante Frage. Also er fragt einfach Wieso wissen wir so viel über die Bedeutung von Daten Konsistenz? Aber in den Programmiersprachen ist das schwach bis gar nicht unterstützt und in Clojure ist das unterstützt und du merkst es nicht.
Ashley: Das heißt dann zurück zu deinem Punkt von vorhin. Okay, wenn du dich mit Clojure beschäftigst, bist du ein besserer oder du kannst eine bessere Java Programmierer werden. Ist es dann so? Ich habe gerade dieses Clojure auf dem gleiche, was du erzählt hast, gerade verstanden. Aber heißt das dann Disclojure, dass Leute jetzt Clojure nutzen, um wirklich Projekten umzusetzen? Oder wird es, wird es oder ich sag mal so benutzt, als ich sage mal so, dieses Mittel zum zum Lernen.
Ingo: Es ist, ich sage mal drei faltig. Das eine ist Unternehmen, wie wir die Clojure auseinandergesetzt haben und die sagen Alles klar, diese ganzen Details. Also ich habe jetzt ein Beispiel genannt, aber das geht noch weiter, diese ganzen Details, die haben uns so umgehauen. Das ist so Mind-Blowing, was der Mensch sich da ausgedacht hat. Klar, wir setzen jetzt komplett auf diese Sprache und versprechen uns davon, fehlerfreier und schneller Software zu erzeugen. Das ist der eine Aspekt. Ich bin in der Clojure-Community aber ziemlich aktiv. Ein anderer Aspekt ist Ich habe die ganzen Konzepte verstanden und ich finde die auch total interessant und ich werde sie nach bestem Wissen und Gewissen in den Programmiersprachen umsetzen, die ich halt gerade in meinem Job einsetze. Das ist der zweite Aspekt und. Ja der der dritte Aspekt ist die ja wieder mal zu sagen, die die Mutation, also dass man halt versucht zu sagen, okay, wir wollen da hin, wir schaffen es jetzt nicht auf einmal, aber wir suchen einen Weg dahin. Und auch das hat der Schöpfer der Programmiersprache durchaus berücksichtigt. Es gibt, wie gesagt, es sind wirklich ganz viele tolle Konzepte. Ein Konzept ist Die Programmiersprache ist eine hostet language, also eine Sprache, die zu Gast in einem Ökosystem ist. Und das auch ganz transparent und bewusst. Du hast Java gesagt, das stimmt, aber das ist nur ein Aspekt. Sie ist auch zu Gast in JavaScript und sie ist auch zu Gast in .NET und auch noch in anderen Umgebungen, und zwar auf eine transparente Weise, so dass du sagen kannst, wir fangen erstmal mit einem kleinen Nukleus, mit einem Kern an, das ist dann schon Clojure, aber das wächst sich raus und also nicht das Clojure wächst sich raus, sondern im günstigsten Fall das Andere. Der Kern wird größer und verdrängt so nach und nach die die anderen Technologien.
Ashley: Du sprachst vom Thema Community, wo du sagst Ich bin aktiv in diese Community. Klar, als Doctronic setzt er auch natürlich wie du sagst hauptsächlich auf Clojure. Aber wie groß ist dann? Oder kannst du ein bisschen erzählen, wie groß dieses Community ist und auch wie groß? Ich sag mal so Wie groß ist das Ökosystem von den Leuten, die wirklich dann Projekte mit Clojure umsetzen? Ich sage mal so Leute wie du, die sagen okay, wir verstehen die Vorteile, wir wollen wirklich auf das Thema Clojure aufsetzen und unsere Projekte umzusetzen. Vielleicht schwierig zu beantworten im Sinne von einem Prozentzahl. Das verstehe ich. Aber ein bisschen so Gefühl zu bekommen, was passiert in diesen Community und und wie groß, wie lebendig, wie hilfreich ist dieses Community?
Ingo: Also Größe ist tatsächlich schwer einzuschätzen. Wenn wir sie jetzt mal in Vergleich setzen zu der Java Community, wird das das werden Bruchteile sein. Also das wird wahrscheinlich in einem, wenn du Glück hast zweistelligen Prozentbereich sein, aber da muss es schon viel Glück haben. Die das Einsatz Szenario jetzt auf auf Länder bezogen ist durchaus unterschiedlich. Also in meiner Wahrnehmung ist in England und in Amerika die Sprache in der Industrie verbreiteter als in Deutschland. Aber wie gesagt, alles mit Vorsicht zu genießen. Ich habe keine echten Statistiken, ich habe nur Gefühle aus Gesprächen.
Ashley: Klar verstehen.
Ingo: Die Community selber ist super, super hilfreich und nett und freundlich und ich habe auch eine Vermutung, woran das liegt. Wir hatten ja gerade ganz kurz über über ganz kurz über Transaktionen gesprochen. Die Gedanken, die der Mensch sich da gemacht hat, gehen noch weiter und führen zu der absolut wahnsinnigen Annahme, dass am Ende des Tages wir keine Variablen mehr brauchen. Also die Programmiersprache Clojure hat keine Variablen mehr und das ist für alle Softwareentwickler erst mal schwierig, weil wie soll ich ein Programm schreiben, ohne eine Variable zu benutzen, also selbst von 1 bis 10 zu zählen? Ich brauche eine Variable. Wenn du mir die wegnimmst, dann habe ich erst mal ein Problem.
Ashley: Sogar verstehe ich das? Ja.
Ingo: Und das führt dazu, dass du wirklich sehr viel nachdenkst in dieser Programmiersprache. Und das zieht Leute mit einem bestimmten Mindset halt an, andere verschreckt es. Aber die, die am Ball bleiben, die sind open minded, die sind offen für alles, die sind vielleicht schon ein bisschen philosophisch angehaucht. Also das ist so ungefähr die die Community, die du erfindest und die sind alle super nett und freundlich und alle denken auf abstrakten Ebenen und versuchen gar nicht so sehr in Gloria denke dich zu bringen, sondern immer ein abstraktes Niveau einzubringen. Deshalb kann ich die Community nur jedem empfehlen. Es ist wirklich eine sehr freundliche Community. Du findest Clojer User Groups jetzt nicht so viele. Ich weiß das eine in Berlin ist. Wir selber haben eine in Bonn gegründet, in Düsseldorf, mit der sind wir ganz gut verknüpft, die ist auch noch da. Es gab eine in München. Ich kann dir einen Link schicken mit denen User Groups, die ich, die ich so kenne oder links besser gesagt. Und auf der claudia. Org seite sind die user groups, die sich da registriert haben, auch alle aufgeführt und da kann man sich mal eine rauspicken, wenn man Kontakt mit der Community aufnehmen möchte. Die Community ist auf Slack vertreten und auch da sehr hilfreich um es gibt eine große Konferenz in Deutschland, die Clojure, die die wird dieses Jahr online stattfinden. Auch da kann man die Community treffen. Also man schafft es zu der Community zu.
Ashley: Kommen oder der erste Anlaufpunkt bei Weekly Close up und da findet man dann die entsprechende Link, so dass man so tiefe reingehen oder bestimmte bestimmte Themen oder oder. Oder vielleicht gebiete man. Aussuchen kann, dann. Das. Das hört sich für mich alles kompliziert an das Thema. Wie gesagt aus, aus als nicht Techniker mit ich sag mal so ein Paradise Schiff. Du hast gesagt, diese Art von Leuten, die so eher abstrakter denken. Wie einfach ist es dann zu lernen, wie einfach es ist, da einzusteigen? Wie gesagt, für mich scheint das alles anders zu sein, als was ich bis jetzt gelernt habe.
Ingo: Das ist auch so.
Ashley: Ah, okay, das ist auch okay. Und wenn das. Du sprichst da von Erfahrung, ja, ja. Und ich sag mal so War der Weg für dich dann ein steiniger Weg? Und wenn ja, welche Probleme gab es? Wie hast du diese Probleme behoben oder Lösungen gefunden und wie lange hat es gedauert? Jetzt erzähl mal ein bisschen so dein. Es ist immer dein Leben mit. Mit Claudio. Deine Liebesaffäre mit Claudia?
Ingo: Ja, gerne. Ich habe Claudia kennengelernt. Das war schon ein paar Jahre nach der Veröffentlichung und ich habe halt so ein Blätter Rauschen im Wald gehört. Die Programmiersprache kam in diversen Foren mal vor und ich hatte sie mir auf meinen auf meinen Zettel der Dinge, die man irgendwann mal macht, wenn man Zeit hat. Da hatte ich die so drauf geschrieben und dann wurde das Rauschen immer lauter. Da dachte ich mir Ja, ja, gut, jetzt musst du dir das mal angucken. Und ich bin an die Sache ich benutze noch mal das Wort arrogant relativ arrogant rangegangen nach dem Motto Na Gott, wie schwer kann es sein, ist eine Programmiersprache. Nimmst dir mal ein paar Stunden Zeit, guckst mal rein. Und bin komplett gescheitert. Also es funktionierte überhaupt nicht. Ich fange gerne mit Schlüsselwörtern an, also wenn ich mir eine Programmiersprache angucke, gucke ich mir meistens die Schlüsselwörter an und hab da mal mit angefangen und dachte mir okay, es gibt ja jetzt Begriff Schlüsselwort, aber das hat was ganz anderes zu bedeuten. Dann habe ich mal Kontakt mit Leuten aufgenommen und ich so ein einfaches If ich will einfach nur mal so ein IF kann ich dann bitte haben um was abzufragen? Ja, kannst du. Aber das wird nicht das IF sein, was du suchst. Aha, er hat es schon. War hilfreich. Ich möchte gerne eine For Schleife machen. Kann ich das denn tun? Ja, eine For Schleife findest du? Aber das ist nicht das, was du meinst. Okay, jetzt werde ich langsam ein bisschen grantig.
Ashley: Aber du hast aber nicht. Du hast aber dann nicht aufgegeben. Du hast dann.
Ingo: Ich habe noch ein gebissen und.
Ashley: Und, äh, ja, okay.
Ingo: Ja, weil es mich halt dann auch angefixt hat. Also, ich meine, wie kann man es wagen, diese beiden Bausteine nicht umzusetzen? Das ist eine Unverschämtheit. Und dann habe ich gesagt Jetzt gib mir doch mal eine Liste von Schlüsselwörtern. Und dann kam die Ansage Es gibt keine Schlüsselwörter. Das ist eine Programmiersprache ohne Schlüsselwörter, denn Schlüsselwörter sind nur eine Grenze, die dich in deiner Kreativität als Programmierer behindern. Und das fand ich absolut mind blowing. Ich benutze es noch nochmal, denn das kenne ich nicht. Programmiersprachen haben Schlüsselwörter, das ist der Rahmen, in dem ich mich bewegen kann. Nimmst du mir den Rahmen weg, drehe ich erst mal frei. Gut, ich habe mir ein Buch gekauft und versucht mich da rein zu graben von dem angesetzten Stunden, die ich mich damit beschäftigen wollte. Das waren schon Tage und fand das immer interessanter, was ich da gelesen habe und wirklich alles neu und alles anders. Aber der Weg war steinig und schwer, weil ich komplett geprägt bin durch die, ja durch die ich sage mal bekannten Muster, die man, die man in Programmiersprachen findet. Deshalb habe ich mich da extrem schwer getan. Warum habe ich es trotzdem gemacht? Ich habe in meiner Jugend ein Buch gelesen. Amiga intern hieß es Ein riesen Schmöker. Ich habe gerade angefangen zu programmieren und wollte den Amiga. Alter Computer wird nicht mehr jeder kennen. Ich wollte ihn so beherrschen wie die coolen Typen, die die ganzen Demos machen. Und ich habe mir dieses Buch gekauft und ich habe es nicht verstanden. Ich habe da sechs Wochen nur dran gekaut, um rauszukriegen, wie ich mit diesem verdammten Buch umgehe. Und das Buch ist auch mehrmals gegen die Wand. Nicht weil es ein dicker Schmöker, aber es ist mehrmals durch den Raum geflogen. Und genauso ging es mir mit dem Buch und ich habe mich an diese Situation erinnert und habe mir gesagt Das letzte Mal, als du mit einem Buch echt gekämpft hast, hatte ich das total weit gebracht. Das könnte ein Indiz dafür sein, dass es sich lohnt, dass du dich auch durch dieses Buch mal durch kämpfst. Vielleicht bringt es dich ja genauso weit. Und so war es dann auch. Ich bilde Softwareentwickler seit 20 Jahren aus und habe mal ein Experiment gewagt Junge Programmierer, die noch nicht so geprägt sind von all den Dingen, die wir als erfahrene Programmierer schon kennen, kommen da erstaunlich gut und leicht mit zurecht. Die Theorie hatte ich schon. Ich hatte schon gedacht, na ja, wenn die ganzen Paradigmen wegfallen, die eigentlich Grenzen sind und die eigentlich alle gelernt werden müssen, wenn das alles wegfällt, wenn wir nicht mehr so viele Unterschiede haben, sondern wenn mehr Sachen gleich sind, müsste das schneller zu lernen sein. Und das stimmt. Also als als neue Programmiersprache, wenn du etwas unbedarfter und unbeleckt da bist, kommst du da super rein, aber als alter Hase bist. Echt? Erst mal ein bisschen vor den Kopf gestoßen.
Ashley: Genau. Dog New Tricks, wie es so schön heißt. Auf Englisch.
Ingo: Genau. Aber es lohnt sich wirklich. Es ist wirklich sehr erhellend.
Ashley: Du erzählst von diesem steinigen Weg und du hast dich da rein gebissen und und und bist bis dabei geblieben. Und wenn. Wenn ich dich jetzt fragen würde, okay. Nenn mir dann wirklich die fünf Vorteile. Es kann Sex sein. Es kann viel sein, die. Die Vorteile, die du jetzt hast, weil du einfach da dran geblieben bist. Ich sage mal so, wenn du jetzt mal rein schaust in. In die Projekte, die die momentane Clojure umsetzt oder in der Vergangenheit umgesetzt hast. Was würdest du sagen? Ja, dieses steinige Weg hat sich gelohnt. Weil was sind so diese, ich sag mal so, diese Key Points. Ja, ich sag mal so, um die Leute zu motivieren, nicht dieses Buch gegen die Wand zu werfen, sondern wirklich dabeizubleiben. Ja.
Ingo: Also ich entwickle Software jetzt viel schneller. Also das muss man wirklich sagen. Und nicht nur ich. Das gesamte Team entwickelt Software jetzt schneller, wir sind mehr im Flow. Also das ist ja so ein schöner Begriff. Der Programmierer ist plötzlich im Flow, im Tunnel und und ist gefesselt und programmiert einfach so durch. Das wird bei vielen Entwicklungsumgebung und ein bisschen behindert. Erst programmiert du was, dann behebt du die Compiler Fehler, dann drückst du auf die Backen, dann setze deine Breakpoint, dann fängst du an zu untersuchen. Also eigentlich bist du immer in verschiedenen Phasen. Bei Clojure ist das aber alles eins. Du bist wie ein Maler auf einer weißen Leinwand. Du machst einfach. Es gibt dieses Ich die Backe. Ich gehe Schritt für Schritt durch. Erst schreibe ich was, dann probiere ich das in Großen aus. Das gibt es alles nicht. Der Ansatz ist da ein ganz anderer. Du bist wirklich die ganze Zeit auf in einer Phase unterwegs und kommst sehr schnell in diesen Tunnel rein, was ich sehr angenehm finde und was ich auch beeindruckend finde. Und ich bin damit wirklich nicht alleine, ist der dritte Teil. Es macht wieder viel mehr Spaß. Also ich habe wieder das gleiche Spaß Gefühl in der Programmierung wie ich damals hatte, als ich angefangen habe. Und das ist keine persönliche Erfahrung, ausschließlich weil ich unterhalte mich mit der Community und den Leuten aus der Community. Und es ist ganz überraschend, wie oft ich die Aussage höre Ich bin ein besserer Programmierer geworden, ich habe mehr Spaß beim Programmieren, ohne dass man das irgendwie triggert. Also man steht einfach in der Gruppe zusammen, unterhält sich so ein bisschen, stellt Fragen wie du Was sind die Vorteile? Und da kommen genau diese Dinge. Das finde ich auch sehr beeindruckend.
Ashley: Und gibt es dann irgendwelche Abhängigkeiten, wenn ich, wenn ich dann die Entscheidung treffe, das Buch erst mal zu kaufen und da einzusteigen? Gibt es irgendwelche Abhängigkeiten? Gibt es dann irgendwelche Open Source Themen, Abhängigkeiten zu Betriebssystem oder Java Versionen? Oder es ist wirklich so, also auch von der von der technische Seite, auf die du von diesem Flow, du bist dann immer drinnen nicht rumhüpfen. Sage ich mal so gibt es aber Abhängigkeiten, um genau diese ist um so diese technische Infrastruktur auch zu schaffen, um in diesem Flow mit Clojure zu sein.
Ingo: Gibt es also du kannst Clojure für verschiedene Editoren oder IDEs erst mal einrichten, so dass du überhaupt erst mal in die Welt reinkommst. Java ist eine Abhängigkeit, ich sage mal für den für den klassischen Einsatz. Also ich hatte dort nett gesagt, das geht auch. In der Praxis ist das aber nicht so oft anzutreffen wie Java. Also jetzt für Clojure, nicht allgemein. Du kannst aber auch unter JavaScript Clojure nutzen, aber Java ist jetzt mal die verbreitetste Grund Plattform. Sagen wir mal so und die Abhängigkeiten schaffst du dir selber. Also du sagst, ich möchte jetzt ein Projekt auf der JVM machen, dann bist du abhängig zu den JVM Bibliotheken, die du nutzen möchtest. Oder eben, wenn du sagst, ich habe eine Web Anwendung, ich möchte eher JavaScript am Ende des Tages haben, dann bist halt abhängig von den JavaScript Bibliotheken, aber du siehst sie kaum. Die sind alle weggespült unter einer schönen Schicht Clojure und du benutzt sie quasi durch diese Schicht hindurch.
Ashley: Okay, dass diese Komplikationen von verschiedene Versionen, die kompatibel oder nicht und nicht kompatibel sind, dass das eine alles weg weggenommen dann ja.
Ingo: Ja, also im Idealfall natürlich kommt manchmal ein Java Update und dann muss Cloje ein bisschen nachjustieren, aber es fällt einem nicht so auf die Füße, dass man sich das in Erinnerung behält.
Ashley: Ich Nee, wenn ich das so ein bisschen versuche mal zusammenzufassen. Ja, Clojure ist, ich sage es immer noch so, dass es anders, aber sehr und es bedarf danke. Weil es bedarf ein Paradigma Shift und ein anderes Denken ist vielleicht zum Anfang nicht so einfach, da reinzukommen, aber diese Vorteile, die. Die die Schnelligkeit im. Zu kommen, dass man wirklich kontinuierlich daran arbeiten kann und nicht abgelenkt wird, sage ich mal so von anderen Themen, Themen und dass man wirklich dieses Spaß gewinnt, an, an, an oder mehr Spaß bekommt. Sagen wir mal so, wer dreht das so herum, wer das so quasi als Zusammenfassung. Ja, oh, wäre das so eine richtige Zusammenfassung von den Exam, so von den Hauptpunkt, worüber wir uns unterhalten haben?
Ingo: Von den haupt punkten? Auf jeden fall ein punkt, der jetzt in der Zusammenfassung nicht stattfinden konnte, weil ich ihn nicht gesagt habe, möchte ich kurz noch nachreichen. Die Programme, die du schreibst, sind am Ende präziser, du bist präziser am Problem. Also Du formulierst die Lösung zu einem Problem präziser als in anderen Programmiersprachen. Das kann man sich jetzt schwer vorstellen, das muss man mal erleben. Aber wir können es erst so im Raum stehen lassen und dann gucken.
Ashley: Finde ich gut. Das ist das ist so ein Anreiz für Leute, jetzt erst mal so zu clojure dort hinzugehen um zu schauen, wo gibt es dann Communitys Information so. Aber wie du auch sagtest, obwohl das Community klein ist, lebendig und hilfreich, was auch super, super, super wichtig ist. Ingo, ich bedanke mich recht herzlich bei der Das war ein sehr interessantes Gespräch, sehr informativ und ich dachte ja, lass uns mal schauen, wie die Community jetzt wächst und die Bekanntheitsgrad von Clojure nach oben geht.
Ingo: Ja, das würde mich sehr freuen.
Ashley: Jawohl, danke schön. Bis die Tage. Ciao
Ashley: Taktsoft Campus Podcast. Der Podcast für Software IT Professionals Im Taktsoft Campus Podcast beschäftigen wir uns mit einem breiten Themenspektrum, um euch zu helfen. Praxis Fragen zu Technologie, aber genauso Fragen zur Umsetzung, Prozessen oder Projektorganisation. Danke, dass ihr dabei wart. Euer Taktsoft Campus Podcast Team.
bottom of page