Spezialfolge 135 –
!Deep Dive
17.11.2023
- // Podcast
- // Spezialfolge 135
Shownotes
Für einen nicht ganz so tiefen Deep Dive haben sich heute Jan und Fabi im Studio zusammengefunden.
Weil ihr eigentlicher Gast kurzfristig ausgefallen war, präsentieren die beiden eben alleine ihre Picks of the Day – bevor sich die programmier.bar ins Wochenende verabschiedet.
/transkript/programmierbar/spezialfolge-135-not-deep-dive
Hallo und herzlich willkommen zu einer neuen Deep Dive Folge der ProgrammierBar. Würde ich eigentlich sagen, wenn es ein Deep Dive wäre. Ist es aber nicht, denn wie das manchmal so ist, hat uns das Leben dazwischen gefunkt und wir hatten einen kurzfristigen krankheitsbedingten Ausfall im ProgrammierBar-Team. Und dementsprechend heute leider kein Deep Dive für euch parat. Aber, Fabi, was haben wir stattdessen?
Stattdessen haben wir Pick of the Days für euch. Also diese Krankheiten sind auf jeden Fall, letzte Woche wäre ein News auch schon fast ausgefallen. Da war ja auch mit leichter Verzögerung. Also, der Winter kommt, naja. Dafür haben wir was für euch als kleine Entschuldigung. Pick of the Days, ich habe einen mit dabei. Und zwar, falls ihr VSCode nutzt, das ist jetzt zumindest für alle, die nicht VSCode nutzen, ihr habt bestimmt was ähnliches in eurer IDE. gibt es ja Commands in VS Code und einen Command, den ich noch nicht kannte, aber letztens mal benutzen musste, ist der Transform-Command und zwar kann man jegliche Strings mit dem Transform-Command, gibt es verschiedene Ausprägungen davon, in einen anderen Case konvertieren, also Transform to Snake Case, to Camel Case, to Kebab Case, Title, Uppercase, wie auch immer, ist ein ganz cooles Transform-Tool, wir haben nämlich letztens auch unsere ganzen BI umbenannt und da hat das durchaus geholfen. Also kannte ich vorher nicht und ist aber für den Fall ganz cool, dass man das nicht händisch machen muss, also jeglichen String in irgendwelche anderen Cases übersetzen. Der Transform-Command nutzt ihn gerne.
Ich seh schon die Wim- und Emacs-Fanatiker da draußen fleißig in ihr Keyboard hämmern, die uns dann zuschreiben, ja, das geht doch alles schon immer, du musst nur diese 37 Tasten gleichzeitig drücken, und dann hast du diese Funktion auch schon.
Ja, und obwohl der String nur drei Charakter lang ist. Ja. Schneller geschrieben.
Das ist, okay, Preisfrage an dich. Wie macht ihr das bei euch im Source Code, wenn der Name eine Abkürzung ist? Also wenn du zum Beispiel, ich weiß nicht, du hast eine Variable, die heißt AGBs, weil da deine AGBs drin stecken, so. Sind die alle groß? Sind die alle klein? Ist der erste klein und dann die anderen groß? Wie macht ihr das?
Also ehrlich gesagt, jedes Mal, wenn wir das machen, frage ich mich auch, weil ich glaube, wir haben uns nie wirklich darauf geeinigt, aber wir würden, wenn, es gibt ja auch manchmal Fälle, da habe ich irgendein Beispiel, wo mittendrin irgendwas capitalized ist, wo eine Abkürzung im String vorkommt. Also, keine Ahnung, New AGB Field oder sowas. Dann würden wir, wenn es im Endeffekt drei Strings wären, würden wir New, kleinschreiben, AGB, komplett groß und Field auch wieder capitalized. Das heißt, wir hätten vier capitalized Letter hintereinander.
Vier Großbuchstaben in der Mitte. Also, das hatte ich noch nicht gehört. Aber ich glaube, das ist was, was jeder irgendwie auch anders macht.
Also, was wäre denn deine Antwort drauf? Wie machst du das?
Also, ich hätte das tatsächlich früher wahrscheinlich ähnlich gemacht wie du. Ich hab mich irgendwann mal dazu durchgerungen zu sagen, ich behandle Abkürzungen als eigenständige Hauptwörter sozusagen und hätte dann nur das A von AGB groß und dann den S klein. Einfach, um es so ein bisschen konsistenter zu haben. Auch wenn ich's beim Lesen jedes Mal scheiße finde, ist es so das, was.
... Ich überlege gerade, wir hatten bisher nicht so häufig die Fälle, aber ich glaube, wir haben es dann jedes Mal mit AGB wäre groß geschrieben und ich habe jedes Mal gedacht, irgendwie fühlt sich das komisch an, aber irgendwie ist klein zu schreiben, also GB dann klein zu schreiben, hat sich auch komisch angefühlt.
Ja genau. Hast du gerade deinen Visual Studio Code offen? Wir machen das jetzt einmal live für alle Zuhörer. Was würde Visual Studio Code machen, wenn du es transformst?
Wir machen mal. Was haben wir gesagt? Wie war es?
Find new AGB field oder sowas. Jetzt ist natürlich auch die Frage, ob man merkt, dass AGB.
Can not find name new AGB field. Klar, okay. Transform. Was willst du denn übersetzen? To snake case?
Also es müsste irgendein anderer Case sein und dann machst du Camel Case draus. Das ist die Frage, was davon ist groß.
Okay, also jetzt habe ich erstmal so geschrieben, wie ich es vorher hatte. New, dann AGB groß und dann Field auch wieder groß und habe es zu Snake Case gemacht. Jetzt hat er geschrieben New unterstrich AGB unterstrich Field. Also er hat AGB auf jeden Fall als ein Wort schon mal wahrgenommen. Und jetzt wollen wir Transform to Camel Case. Na, da würde er es so machen wie du. New AGB und A Groß, aber gut, ich meine, AGB ist für ihn ja auch keine Abkürzung. Er kennt sie auch nicht als Abkürzung. Aber zumindest hat er AGB, als er es komplett groß geschrieben hat, erkannt als ein Wort. Also scheint auch eine, ja, ich meine, da, wie gesagt, was hier auf VSCode zu verlassen ist, woher sollte er erkennen, dass es eine Abkürzung ist und kein Wort? Aber interessant. Also nutzt mal das Transform, damit hätte sich die Frage vielleicht auch schon erübrigt und Jans Schreibweise wäre die Präferierte von VS Code gewesen. Dann hast du auch ein Pick of the Day. Wie gesagt, es ist hier nur ein Dienst von uns an euch, zwei kleine Pick of the Days, weil ihr heute kein Deep Dive hört. Jan, was ist deiner?
Mein Pick heute ist BetterChatGPT. Also ChatGPT kennt ja mittlerweile, glaube ich, jeder. Chat.openai.com. BetterChatGPT ist im Prinzip eine Standalone-Web-Anwendung, die du bei dir selbst lokal auf deinem Server, im Docker-Container, wo auch immer, hosten kannst. Schmeißt einfach deinen OpenAI-API-Key rein und kannst dann im Prinzip ein UI nutzen, was ähnlich dem offiziellen ist, aber so ein paar Convenience-Funktionen mehr eben bietet. Du kannst dir so Promptvorlagen erstellen, die du immer wieder nehmen kannst. Du kannst deine Chat-Verläufe sortieren in verschiedene Ordner, Verschlagworten etc. Du kannst für jedes Gespräch, für jedes Prompt deine System-Prompts und sowas alles vorschreiben, mitkonfigurieren, auf Vorlage haben. Du kannst in den Chatverlauf quasi fiktiv reinschreiben, als wärst du das System oder als wärst du der Assistant. Und so das nächste Prompt quasi noch mal mit vorbeeinflussen. Weil ja quasi für jedes Folgeprompt ist ja die Historie der Kontext. Und so kannst du quasi vorm nächsten Prompt die Historie noch mal manuell anpassen. Warum hab ich das gebraucht? Weil wir grade so ein bisschen Prototyping machen für ein paar ... Feature, die wir gerne für die programmierbar hätten, Hint Hint Sneak Peek. Und das einfach so ein bisschen mehr komfortabel ist. Es hat allerdings auch so ein paar Shortcomings an den verschiedensten Stellen.
Also es ist zum Beispiel jetzt noch nicht auf GPT-4 Turbo angepasst. Da müssen noch ein paar API-Anpassungen gemacht werden und sowas. Und der Support ist ehrlicherweise auch so ein bisschen langsam oder die Entwicklung ist auch so ein bisschen langsam. Deswegen Challenge an alle da draußen, die auch ein eigenes ähnliches Custom UI auf der OpenAI API benutzen. Wenn ihr Vorschläge habt oder Erfahrungsberichte, Erfahrungswerte für irgendwas, was auch cool ist zu benutzen, was ihr schon lange benutzt und empfehlen könnt oder von dem ihr einfach nur mal was gehört habt. Immer gerne an uns oder an mich. Ich guck mir das auch gerne noch mal an, weil ich find's zwar cool, da ein eigenes Power-User-UI sozusagen zu haben, aber ich glaube, da ist noch viel Luft nach oben und hat bestimmt schon mal jemand was noch Cooleres gebaut als BetterChatGPT. Vielleicht gibt's schon, weiß ich nicht, BestChatGPT oder so, was dann der Naming kriegt, da ist keine Ahnung. Aber ja, das, also mein Hinweis an alle, die sich da mal mehr Features wünschen.
Also zwei Aufrufe sozusagen heute. Wenn ihr uns mal sagen könnt, wie eure new RGB-File, ich hab schon wieder vergessen, wie unser String heißt, new RGB-Field, wie eure Benamung dafür ist, würde uns interessieren. Und zweitens, wenn ihr bessere Alternativen zu beta.jpg kennt und noch einen viel besseren Pick als der Jan habt, schreibt uns gerne an podcast.programmier.bar.
Ja. Und das war's quasi schon wieder für heute. Sehr kurze Folge, damit entlassen wir euch in das Wochenende und hoffen, dass wir euch dann zeitnah wieder mit neuen Deep Dives und News versorgen können.
Genau. Ansonsten nächste Woche AI News. Bis dann. Ciao, ciao. Ciao.