Advent of Code 2019 — Tag 1

Categories Allgemein

Hallo und herzlich willkommen zum Advent of Code. Dieses Jahr scheint das Motiv irgendwas mit Star Wars und Rocket Science zu sein. Hinter dem ersten Türchen verbarg sich hinter der ersten Teilaufgabe eine kleine Treibstoffberechnungsaufgabe, im zweiten Schritt musste man dann noch den benötigten Treibstoff für den benötigten Treibstoff berechnen. Und dann den benötigten Treibstoff für den benötigten Treibstoff und so weiter und so weiter.

Continue reading “Advent of Code 2019 — Tag 1”

Advent of Code 2019

Categories Allgemein

2018 habe ich zum ersten Mal am Advent of Code teilgenommen. Das ist quasi ein Adventskalender mit kleinen Rätseln und Aufgaben für Programmierer*innen. Damals mit Python und damals habe ich relativ schnell wieder aufgegeben. Wenn ich mich recht entsinne, lag es daran, dass ich mir irgendwann an irgendeiner Aufgabe die Zähne ausgebissen habe und anschliessend weder Zähne, noch weitere Motivation hatte.

Aber dieses Jahr wird mal wieder alles anders: Dieses Jahre nutze ich Ruby und warum sollte es dieses Jahr nicht alles anders werden?! Ausserdem möchte ich dieses Jahr gerne in kleinen Blogposts zu den jeweils aktuellen Aufgaben schreiben und so kurz darauf eingehen, was an dem Tag gut und was weniger gut lief. Ausserdem schreibe ich gerne Blogposts und hoffe so, mich selbst ein bisschen zu motivieren. Erst kam mir die Idee, einen kleinen, weiteren Podcast zu machen, aber für Code dürften Blogposts das geeignetere Medium sein. scy geht sogar noch einen Schritt weiter und streamt seine Türchen täglich auf Youtube. Auch eine tolle Idee!

Den Code meiner Ruby-Enterprise-Software von diesem und dem Python-Versuch von letztem Jahr findest du bei Interesse auf Github. Hier ist vielleicht noch der Hinweis sinnvoll, dass ich gerade erst mit Ruby angefangen habe, entsprechend ziemlich groben Holzhammercode produziere und auch Tests sind mir erstmal egal.

Aber geht es nicht auch darum, beim Advent of Code? Ums lernen und ausprobieren? Wie siehst du das? Machst du überhaupt beim Advent of Code mit? Vielleicht hast du dann ja Interesse, unserem privaten Leaderboard beizutreten?

Ich freue mich auf die nächsten Wochen. Und natürlich Feedback, Kommentare und Pull Requests!

CST039 — Geld und Gehalt

Wir haben eine Bierempfehlung bekommen: Stiegl Goldbräu. Aber weil wir es beide nicht auftreiben konnten, trinkt Nathan jetzt ein Sierra Nevada Orange IPA und Max die ersten Schlucke der fünfzehnten Flasche Sloe Gin der Cambridge Destillery. Dabei unterhalten wir uns über das, worüber wir alle viel zu wenig sprechen, vor allem mit Kolleg*innen: Unsere Gehälter.

Warum ist es wichtig, darüber zu reden? Hier sei auf die Diskussion auf Twitter verwiesen. Reicht das schon, um die Gender Pay Gap zu überwinden? Und wie sieht das eigentlich mit unseren Gehältern aus? Die sind ja bekanntlich grundsätzlich zu niedrig!!! Aber wenn dieses Jahr nicht mehr Geld drin ist, ist vielleicht eine Bahncard drin? Ein Firmenwagen? Eine Konferenz? Irgendwo gibt es immer Geld!

Ganz unabhängig vom Gehalt ist es nie verkehrt, Mitglied einer Gewerkschaft zu sein. Das ist gelebte Solidarität, gut für alle und bei Problemen mit mit Arbeitgeber*innen seid ihr nicht alleine. Denkt mal über eine Mitgliedschaft nach 🙂

Wir bedanken uns wie immer für’s Zuhören. Verbesserungsvorschläge, Getränkeempfehlungen, Liebesbekundungen und Kritik bitte wie immer via Twitter an @codestammtisch oder diskret per Mail an hallo-at-codestammtis.ch

Kurze Werbeeinblendung zum Schluss: Wenn du uns auf Steady unterstützt, bekommst du längere Folgen! Und dieser Werbehinweis entfällt!

CST038 — Neues Projekt

Nach zwei Wochen sehen wir uns also wieder. Bei einem Imperial IPA aus Strasbourg und Mountain Dew aus dem AKW Springfield unterhalten wir uns also darüber, wie wir neue Projekte beginnen.

Wir plaudern so aus dem Nähkästchen und sind uns erschreckend einig: Papier hilft! Ein bisschen Gekrackle hier kan unter Umständen ein paar Wochen Arbeit, viel Frust und viel Geld sparen. Das macht übrigens auch der Comic-Zeichner, dessen Video sich Nathan letztens anschaute, so. Und weil Comic-Zeichner*innen alleine deswegen Recht haben, weil sie Comics zeichen, ist das jetzt einfach mal so. Ausserdem haben User Stories mal wieder einen Gastauftritt.

Wir bedanken uns wie immer für’s Zuhören. Verbesserungsvorschläge, Getränkeempfehlungen, Liebesbekundungen und Kritik bitte wie immer via Twitter an @codestammtisch oder diskret per Mail an hallo-at-codestammtis.ch

Kurze Werbeeinblendung zum Schluss: Wenn du uns auf Steady unterstützt, bekommst du längere Folgen! Und dieser Werbehinweis entfällt!

CST037 — Entwickeln mit IDEs, Editoren und Florian

Florian (Auf Twitter @flowfx_ mit Unterstrich, auf Mastodon unter @flowfx ohne Unterstrich) hat mal Python entwickelt und verdient seine Brötchen jetzt als Rails-Entwickler für eine Firma in Frankfurt. Und weil das zufällig das am Main ist, gehen er und Nathan gelegentlich gemeinsam mittagessen. vim benutzt Florian schon sehr lange — weil alle sagten: Das ist cool! Und was lag da näher, als das dann auch zum Rails-Entwickeln zu benutzen? Gerade mit den ganzen Plugins des Tim Pope!

Und so sitzen Florian beim Dolden Dark vom Riedenburger Brauhaus, Max beim Omnipolo Maz und Nathan bei Dr. Pepper zusammen und podcasten. Apropos Podcast: Florian hat auch einen: Several Ways to Live.

Wir hangeln uns an den verschiedene Bestandteilen einer IDE entlang, die wir benutzen und Florian erzählt dann frei von der Leber, wie er das ohne IDE hinbekommt. Debugger. Dateiverzeichnis. Refactoring und so weiter und so weiter. Aber warum eigentlich entweder vim oder IDE? Warum eigentlich nicht zum einen das eine, zum anderen das andere? Oder wie Nathan auch gleich mehrere Entwicklungsumgebungen?

Es folgt eine unvollständige Liste von den erwähnten vim-Plugins:

Wir bedanken uns wie immer für’s Zuhören. Verbesserungsvorschläge, Getränkeempfehlungen, Liebesbekundungen und Kritik bitte wie immer via Twitter an @codestammtisch oder diskret per Mail an hallo-at-codestammtis.ch

Kurze Werbeeinblendung zum Schluss: Wenn du uns auf Steady unterstützt, bekommst du längere Folgen!

CST036 — CI und CD

Herzlich willkommen zu einem weiteren Ritt durch die wilde Welt des Software Engineerings! Bei einem speziellen Brooklyn Special Effects der Brooklyn Brewery und einer Mio Mio Mate Banana treiben wir unsere Pferde an Build Servern vorbei über CI und CD zu CI/CD (Nathan hat sich letztens Red Dead Redemption gekauft, aber er zügelt sich jetzt.)

Was macht so ein Build Server? Und warum ist das, was er tut, sinnvoll? Und wie spielt das denn mit einer Continuous Integeation zusammen? Ausserdem klären wir den Unterschied zwischen Continuous Delivery und Continuous Deployment. Und überhaupt: Was treiben wir bei uns in den Firmen mit Jenkins und Konsorten? Auf jeden Fall schiebt Max’ Team dank Continuous Deployment täglich fünf bis sechs Mal eine neue Version auf die Server. Bei Nathan dauert es dank Papierkrieg für gewöhnlich länger, aber er und sein Team setzen jetzt schrittweise das auf, was es vorher noch nicht gab. Und irgendwann wird das Leben dank einer Automatisierung mit fastlane noch einfacher werden. Man wird doch wohl noch mal träumen dürfen! Aber auch dann gilt: fastlane ist kein Continuous Deployment, sondern eben nur eine automatisiertes Deployment.

Und um ganz nebenbei noch mit den alternativen Fakten, von denen wir selbst so überzeugt waren, aufzuräumen: Beim #miomiogate des Kevin K. war nie von Granatapfel-Mio Mio die Rede, es ging um die Ginger-Version. Und Taxis in Dänemark heißen Taxis. Im Land des diktatorischen Kriegsverbrecher (oder kriegsverbrecherischen Diktators? Das war’s wohl erstmal mit Türkeiurlauben) vom Bospurus heissen mehr als ein Taxi Taksi. An dieser Stelle mal der Hinweis, dass die Menschen in Rojava dringend Hilfe benötigen und vielleicht wollt ihr auch spenden? Wenn die MSF ihre Mitarbeiter*innen aus einer Region abziehen, dann ist die Kacke schon heftig am Dampfen. Erdogans Truppen haben in Syrien nichts verloren.

Wir bedanken uns wie immer für’s Zuhören. Verbesserungsvorschläge, Getränkeempfehlungen, Liebesbekundungen und Kritik bitte wie immer via Twitter an @codestammtisch oder diskret per Mail an hallo-at-codestammtis.ch

Kurze Werbeeinblendung zum Schluss: Wenn du uns auf Steady unterstützt, bekommst du längere Folgen!

CST035 — Code Style Guides

[CN: Vergewaltigung]

Nathan tut etwas für seine Gesundheit und trinkt eine Inger-Maracuja Limonade. Und Max gedenkt mit dem Oktoberfest Märzen der deutsche Leit- und Trinkkultur. Zwischen erstem Eindruck und Beer Review reden wir noch über Style Guides für Code.

Jede*r von uns hat eine eigene, individuelle Handschrift. Ähnlich verhält es sich mit unserem Programmierstil. Mache ich die

{

nach dem

if

in die gleiche Zeile? Oder in eine neue? Brauche ich überhaupt eine? Ja, eigentlich will ich geschweifte Klammern nach einem

if

.

Wenn da in so einem Team mehrere Programmierer*innen zusammenarbeiten, dann kann das schon mal vorkommen, dass man sich partout nicht an die Handschrift der Anderen gewöhnen kann. Und bei genau diesem Problem kann ein Style Guide für Code helfen. Der enthält vereinfacht gesagt nichts anderes als ein paar Regeln, wie der Code, den dieses Team schreibt, formatiert und strukturiert sein muss. Oder sollte, je nachdem, wie streng das Team diesen Style Guide durchsetzen will.

Dadurch, dass ein Style Guide dafür sorgt, dass alle im Endeffekt gleichen oder ähnlich formatierten Code schreiben, können alle den Code der anderen leichter lesen. Aber ein Style Guide — oder besser gesagt die Tools, mit denen man ihn durchsetzen kann — hat auch Grenzen.

Max und sein Team nutzen den Java Style Guide von Google und PEP8 für Python. Und sie forcieren das mit einem Tool namens Checkstyle. Da knallt halt auch schon mal der Jenkins, wenn dein Code nicht entsprechend formatiert ist.

Nathan versucht, seinem Team den Objective C-Style Guide der New York Times schmackhaft zu machen, aber er hält nicht so wirklich etwas davon, ein soziales Problem — mangelnde Disziplin oder Unwille, dem Guide zu folgen — durch Technik zu lösen. Und so ist der Style Guide eher eine Handlungsempfehlung. Leider.

Wir bedanken uns wie immer für’s Zuhören. Verbesserungsvorschläge, Getränkeempfehlungen, Liebesbekundungen und Kritik bitte wie immer via Twitter an @codestammtisch oder diskret per Mail an hallo-at-codestammtis.ch

Kurze Werbeeinblendung zum Schluss: Wenn du uns auf Steady unterstützt, bekommst du längere Folgen!

CST034 — Schätzungen

Da sind wir also wieder. Mehr oder weniger entspannt und voller Elan für die dritte Staffel vong Codestammtisch! Schön, dass ihr wieder mit dabei seid.

Bei Glam Cola und Delirium Red — extra importiert aus Belgien! — reden wir uns über Schätzungen. Wir unterhalten uns ausführlich über das Warum, pokern und haben schlechte Wortwitze im Gepäck. Nathan hat die Sommerpause außerdem genutzt, um mal in Max’s zweitliebsten Podcast zu hören und Max teilt die eine oder andere Anekdote, wie: Was passiert eigentlich, wenn man im Team unterschiedlich mit den Fingern zählt?

Ach, da war ja noch diese Neuerung. Menschen, die uns auf Steady unterstützen, bekommen ab nächster Folge noch mehr für ihr Geld. Ab sofort lassen wir die Mikrofone für sie noch etwas länger mitlaufen, während wir das machen, was wir eh schon gemacht haben, aber niemand zu hören bekam:

Bisher haben wir uns nach jeder Aufnahme noch kurz darüber ausgetauscht, was während der Folge gut lief, was vielleicht etwas holprig war und vor allem, was wir eigentlich noch erwähnen wollten und/oder schlicht und ergreifend vergessen haben. Wir machen also eine Art Review mit ein bisschen Retro-Einschlag — und deshalb verpassen wir dem Ganzen auch einfach als Projektnamen “CST-Retro-Review”. In dieser CST-Retro-Review erwähnte Max noch zwei Links:

Getreu dem Motto “Gute Künstler*innen, große Künstler*innen” haben wir uns auch das von Mein Scrum ist kaputt abgeschaut. Weil wir aber auch einfach Feedback von euch haben wollen, dürfen alle der ersten Retro-Review lauschen.

Wenn wir oder das Konzept Dich überzeugt haben, dann freuen wir uns, wenn du uns das sagst und auf Steady unterstützt! Oder uns auch einfach nur so unterstützt. Oder uns auch nur so Feedback gibst. Das kannst du wie immer per Email an hallo-at-codestammtis.ch oder auch einfach auf Twitter an @codestammtisch machen 🙂

Wir freuen uns darauf, von Dir zu hören und bedanken uns wie immer recht herzlich für’s Zuhören. Verbesserungsvorschläge, Getränkeempfehlungen, Liebesbekundungen und Kritik bitte wie üblich via Twitter an @codestammtisch oder diskret per Mail an hallo-at-codestammtis.ch

Sommerpause 2019

Da nimmt man mal vier Wochen keine neue Folge auf und schon hat man das Podcasten fast verlernt. Damit uns das nicht passiert, unterbrechen wir die Sommerpause mit einer kurzen Werbeunterbrechung und einer kleinen Vorstellung für alle, die den Podcast in seiner Sommerpause entdecken. Wir erzählen, dass die dritte Staffel vom Codestammtisch am 23. September 2019 erscheint und verraten unsere persönlichen Lieblingsfolgen:

Außerdem erwähnen wir einmal mehr, dass wir euch CST-Merchandise in Form von Stickern und Bierdeckeln schicken, wenn ihr uns auf Steady unterstützt oder eine Email schreibt.

Und wie immer bedanken wir uns fürs Zuhören. Verbesserungsvorschläge, Getränkeempfehlungen, Liebesbekundungen und Kritik bitte wie immer via Twitter an @codestammtisch oder diskret per Mail an hallo-at-codestammtis.ch