Engineering Kiosk

Wolfgang Gassler, Andy Grunwald
undefined
Dec 13, 2022 • 55min

#49 Die Zukunft: Software Repository Mining

Die Analyse von Metadaten aus dem Software-Entwicklungsprozess: Yey or Ney?Die wenigsten kennen den Begriff des Software Repository Minings, doch die meisten benutzen Features, die darauf zurückzuführen sind. Zum Beispiel der automatische Vorschlag von den richtigen Pull Request Reviewern.Es geht darum, auf Basis der Daten aus dem Softwareentwicklungsprozess neue Erkenntnisse zu gewinnen, um diesen einfacher und produktiver zu gestalten.In dieser Episode klären wir, woher die Daten kommen, wie man an diese gelangt, welche Anwendungsfälle es gibt, was die Herausforderungen dabei sind und wie ihr damit starten könnt.Bonus: Ob Andy bereits 50 Jahre alt ist und warum gute Architektur auch als Selbstschutz dient.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksZyklomatische Komplexität: https://de.wikipedia.org/wiki/McCabe-MetriknPath Komplexität: https://de.wikipedia.org/wiki/Komplexit%C3%A4t_(Informatik)#Softwarekomplexit%C3%A4tBuilt with: https://builtwith.com/MetricsGrimoire: https://github.com/MetricsGrimoire/CHAOSS: https://chaoss.community/Tool CVSAnalY: https://github.com/MetricsGrimoire/CVSAnalYGrimoireLab: https://chaoss.github.io/grimoirelab/Bitergia: https://bitergia.com/Mining Software Repository Konferenz: http://www.msrconf.org/Semantic Versioning: https://semver.org/MySQL: https://www.mysql.com/de/GitHub Copilot: https://github.com/features/copilotEngineering Kiosk #44 Der Weg zum hochperformanten Team: https://engineeringkiosk.dev/podcast/episode/44-der-weg-zum-hochperformanten-team/Will My Patch Make It? And How Fast? Case Study on the Linux Kernel: https://dergipark.org.tr/tr/download/article-file/729012TYPO3-Rangliste "Contribution per quarter": https://forger.typo3.com/management/leaderboardAndy Grunwald - The story of my bachelor thesis about Software Repository Mining: https://andygrunwald.com/blog/the-story-of-my-bachelor-thesis-about-software-repository-mining/FOSDEM 2023: https://fosdem.org/2023/Sprungmarken(00:00:00) Intro(00:00:48) Das heutige Thema: Software Repository Mining(00:02:15) Warum kann Andy was zum Thema Software Repository Mining sagen?(00:04:03) Worum geht es beim Software Repository Mining?(00:05:48) Wie kommt man an die Daten der Software Repositories? Data- und Web-Mining(00:07:29) Klassische Anwendungsfälle von Software Repository Mining: Software Metriken, Velocity (Scrum) und womit wurde die Website gebaut?(00:13:07) Anwendungsfall: Analyse von Commits(00:15:12) Wer schaut sich solche Metriken? Wer kümmert sich um das Software Repository Mining?(00:17:40) Anwendungsfall: Analyse von Kopplungen von einzelnen Dateien(00:19:08) Ab wann macht Software Repository Mining Sinn? Wie schwierig ist es, sowas einzuführen?(00:22:35) Anwendungsfall: Der geeignete Code-Reviewer(00:23:36) Research: Nachvollziehbarkeit und Qualität von Source-Code(00:27:06) Anwendungsfall: Automatische Versioning auf Basis von Semantic Versioning(00:32:13) Anwendungsfall: Hot Topic Analyse(00:33:24) Anwendungsfall: Kontextbasierte Informationen in der IDE(00:37:27) Anwendungsfall: Review-Cycles im Pull Request als Datenpunkt fürs Mentoring und Coaching(00:39:28) Ranglisten und Gamification aus Basis von Code Contributions(00:41:14) Herausforderungen von Software Repository Mining: Unsaubere Daten, Data Storage, Cross-Linking und die Interpretation von Ergebnissen(00:48:21) Wie startet man am besten mit Software Repository Mining?(00:50:20) Andys Bachelor-Arbeit als Podcast(00:51:18) Warum ist Software Repository Mining ein Nischen-Thema?(00:54:00) Outro: FOSDEM KonferenzHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776
undefined
Dec 6, 2022 • 38min

#48 Der Layer unter Docker: containerd, Kubernetes, Container Runtime Interface, CRI-O und Open Container Initiative (OCI)

Wie sieht eigentlich der Layer unter Docker aus? Und wie interagiert Kubernetes mit Containern?In Episode 46 haben wir geklärt, welches Problem Docker eigentlich löst. Das Container-Ecosystem ist jedoch weit größer. Deswegen widmet sich diese Folge der darunter liegenden Ebene. Wir besprechen die Modularisierung von Docker, die herausgetrennte Highlevel Runtime containerd, wie Kubernetes mit Docker-Containern umgeht, ob Docker Container die einzige Art von Containern ist, die Kubernetes unterstützt, was ein Container Runtime Interface (CRI) ist, was die Open Container Initiative (OCI) und ob auch du dir deine eigene Highlevel Container Runtime programmieren kannst.Bonus: Was die Linux-Mafia ist und wieso es bald eine österreichische Container Runtime gibt.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksEngineering Kiosk #46 Welches Problem löst Docker?: https://engineeringkiosk.dev/podcast/episode/46-welches-problem-l%C3%B6st-docker/c't - Magazin für Computer Technik: https://www.heise.de/ct/iX - Magazin für professionelle Informationstechnik: https://www.heise.de/ix/Highlevel container runtime containerd: https://containerd.io/Getting started with containerd: https://github.com/containerd/containerd/blob/main/docs/getting-started.mdcontaiNERD CTL - Docker-compatible CLI for containerd, with support for Compose, Rootless, eStargz, OCIcrypt, IPFS: https://github.com/containerd/nerdctlshim: https://de.wikipedia.org/wiki/Shim_(Informatik)Core OS: https://de.wikipedia.org/wiki/Core_OSrkt: https://github.com/rkt/rktContainer Runtime Interface (CRI): https://kubernetes.io/docs/concepts/architecture/cri/CRI Plugin von containerd: https://github.com/containerd/containerd/tree/main/pkg/criHighlevel Container Runtime CRI-O: https://cri-o.io/Cloud Native Computing Foundation: https://www.cncf.io/Linux Foundation: https://www.linuxfoundation.org/Apache Foundation: https://www.apache.org/gVisor - Container Security Platform: https://gvisor.dev/minikube - local Kubernetes cluster: https://minikube.sigs.k8s.io/docs/Open Container Initiative: https://opencontainers.org/Sprungmarken(00:00:00) Intro(00:00:58) Computerbild, c't und iX und einen Layer tiefer als "Was ist Docker"(00:04:31) Der nächsttiefere Layer nach docker run: Highlevel Runtime containerd(00:07:05) Was ist denn ein Container-Lebenszyklus und der Unterschied zwischen Highlevel und Lowlevel-Runtime?(00:09:37) Ist containerd noch ein Teil von docker?(00:10:35) Kann containerd auch von anderen Clients als docker angesprochen werden?(00:13:06) Verwendet Kubernetes auch docker? docker shim, CoreOS, rkt(00:16:01) Container Runtime Interface (CRI) von Kubernetes(00:19:44) Kubernetes, API-Server, kubelet und die Highlevel-Runtime(00:20:58) Eine alternative Highlevel-Container-Runtme zu containerd: CRI-O(00:24:15) Die Cloud Native Computing Foundation (CNCF)(00:28:16) Was ist besser? Containerd oder CRI-O?(00:29:57) docker shim und unterstützt Kubernetes noch docker?(00:32:10) Docker container sind eigentlich Open Container Initiative (OCI) Images und Container(00:33:21) Woher kommt die Open Container Initiative (OCI) und die Standards?(00:34:41) Zusammenfassung und die Möglichkeiten eure eigene Runtime zu schreiben(00:36:31) Ausblick auf die nächste Container-Folge und FeedbackHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776
undefined
Nov 29, 2022 • 44min

#47 Wer Visionen hat, soll zum Arzt!?

Eine Vision und Mission für die Firma und das Team: Notwendig oder Firlefanz?Die Geschäftsführung spricht oft von der Vision und Mission der eigenen Firma. Doch was ist das eigentlich? Wo ist der Unterschied? Und was habe ich, als kleiner Mitarbeiter, eigentlich zu tun? Wie wichtig ein gemeinsames Ziel und ein übergeordneter Sinn für die Belegschaft sein können, wird oft unterschätzt. Ab und zu sogar als esoterisch bezeichnet, denn es ist doch klar, wofür wir alle arbeiten. Ist es?In dieser Episode klären wir was eine Vision und eine Mission ist, wo die Unterschiede liegen, welchen Effekt dies auf die Firma und das eigene Team haben kann, warum es nicht einfach ist eine Vision und Mission zu definieren, ob es auch ohne klappen kann und wie man diese Sache generell angeht.Bonus: Warum man keine Löcher kaufen kann, was Computerbild Themen sind und wieso Andy nicht für Heckler und Koch arbeiten würde.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksDall-E 2: https://openai.com/dall-e-2/Index Out of Bounds Episode 40 - Tech-Trends, die uns begeistern: https://anchor.fm/indexoutofbounds/episodes/040--Tech-Trends--die-uns-begeistern--AR-und-ML-e1r24fnPrompt Engineering: https://en.wikipedia.org/wiki/Prompt_engineeringSite Reliability Engineering: https://de.wikipedia.org/wiki/Site_Reliability_EngineeringWas ist eine North Star Metric?: https://blog.hubspot.de/marketing/north-star-metricEngineering Kiosk Episode #44 Der Weg zum hochperformanten Team: https://engineeringkiosk.dev/podcast/episode/44-der-weg-zum-hochperformanten-team/Objectives and Key Results (OKRs): https://de.wikipedia.org/wiki/Objectives_and_Key_ResultsSprungmarken(00:00:00) Intro(00:00:55) Prompt Engineering(00:04:12) Können wir durch Prompt Engineering bald Incidents lösen und Operations betreiben?(00:06:37) Die Vision und Mission Site Reliability Engineering durch Prompt Engineering steuerbar zu machen(00:07:44) Die Vision und Mission von Firmen und Teams und was es für einen Effekt auf das Team haben kann(00:10:50) Kann jedes Team zur Firmen-Vision und Mission contributen?(00:13:58) Was ist eine Vision? Was ist eine Mission? Wo ist der Unterschied?(00:16:12) Visions- und Missions-Beispiele von populären Firmen(00:19:52) Wie kommt man zu einer Vision und Mission?(00:21:15) Muss man für seinen Job brennen, um die Vision und Mission zu definieren und daran zu glauben?(00:27:05) Hat Andys aktuelles Team eine eigene Vision und Mission?(00:29:08) Große Herausforderung: Eine Vision und Mission zu formulieren, wo jede Abteilung teilhaben kann(00:32:57) Für ein Performing Team sollte der Sinn, Metrik und Ziel definiert sein(00:34:42) Themen für euer 1on1 und Manager: Was sind unsere Vision, Mission und Ziele?(00:35:32) Kann eine Firma oder ein Team auch ohne Vision und Mission erfolgreich sein?(00:38:58) Wie startet Ihr am besten, um sich dem Thema Vision und Mission zu nähern?(00:40:42) Vision und Mission: Esoterisches oder essentielles Thema?(00:42:17) Was ist die Vision und Mission vom Engineering Kiosk?(00:42:51) Outro: Feedback, Fragen und WeiterempfehlungHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776
undefined
Nov 22, 2022 • 47min

#46 Welches Problem löst Docker?

Docker und Container: Buzzwords der letzten Dekade - Doch was ist Docker wirklich?In dieser Episode versuchen wir genau diese Frage zu beantworten. Jeder redet davon, und wie in jedem Hype werden Wörter und Begriffe oft in einem falschen Kontext genutzt und das Ecosystem entwickelt sich unglaublich schnell. Deswegen ist es doch ganz gut, wenn man ein wenig hinter die Kulissen schaut: Warum wurde Docker erschaffen und welches ursprüngliche Problem sollte es lösen? Was ist das besondere an Docker, wenn es "diese Linux Container" bereits seit > 20 Jahren gibt? Was ist eigentlich ein Container im Kontext von Software und was hat "Change Root" (chroot) damit zu tun? Und welche Nachteile hat Docker?Kurz um: 55 Minuten um das “Warum” hinter Docker.Bonus: Warum Duisburg eine essentielle Rolle im Container-Ecosystem spielt, was Kaffe mit Software deployen zu tun hat und wie man das Endstück vom Brot nennt.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners Linkslocalhost Konferenz: https://localhost.engineering/Landschaftspark Duisburg-Nord: https://www.landschaftspark.de/Nomad von Hashicorp: https://www.nomadproject.io/Docker auf der pycon 2013: "The future of Linux Containers": https://www.youtube.com/watch?v=wW9CAH9nSLsdotCloud: https://www.docker.com/press-release/dotcloud-inc-now-docker-inc/"Why we built Docker" Solomon Hykes auf der dotScale 2013: https://www.youtube.com/watch?v=3N3n9FzebAA10+ Deploys Per Day: Dev and Ops Cooperation at Flickr: https://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickrLinux Containers (LXC): https://de.wikipedia.org/wiki/LXClibcontainer: https://github.com/opencontainers/runc/tree/main/libcontainerFROM scratch-Container: https://hub.docker.com/_/scratchContainers are chroot with a Marketing Budget: https://earthly.dev/blog/chroot/Metabase: https://github.com/metabase/metabaseQemu: https://www.qemu.org/Die 100 häufigsten Wörter für das Brotende: https://100woerter.de/100-haeufigsten-woerter-fuer-das-brotende/Der Sprachatlas - Brotende: https://www.atlas-alltagssprache.de/r10-f3h/?child=rundeSprungmarken(00:00:00) Intro(00:00:54) Wolfgangs Weltreise und Duisburg's Binnenhafen, der größte der Welt(00:04:16) Das heutige Thema: Docker - Was ist das? Woher kommt es? Sind Docker und Container dasselbe? Und wie sieht das Container-Ecosystem eigentlich aus(00:08:11) Wie lange gibt es Docker bereits? Und welches Problem löst Docker eigentlich?(00:16:47) Was ist der Unterschied zwischen Virtual Machines (VMs) und Jar's zu Docker Containern?(00:21:41) Wann und Wie entstand die Continuous Integration (CI) / Continuous Delivery (CD) / Continuous Deployment (CD) Bewegung?(00:24:38) Was ist eigentlich ein Container im Sinne der Software?(00:29:32) Change root (chroot)(00:31:20) Was ist denn das Besondere an Docker, wenn es Linux Container bereits vorher gab?(00:39:20) Welche Nachteile hat Docker oder ist Docker wie geschnitten Brot?(00:47:37) Das Killer-Argument von Docker: Updaten von Applikationen(00:51:06) Zukünftige Podcast-Episoden über Docker und das Container-Ecosystem(00:52:25) Outro: Feedback und Shownote-LinksHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776
undefined
Nov 15, 2022 • 51min

#45 Datengetriebene Entscheidungen und der perfekte Dashboard Stack

Datengetriebene Entscheidungen oder auch "Glaube keiner Statistik, die du nicht selbst gefälscht hast".Entscheidungen treffen und die nächsten Schritte planen ist nicht einfach. Relevante Daten können einem die Entscheidung erleichtern. Doch wie fängt man mit datengetriebenen oder daten-unterstützenden Entscheidungen eigentlich an? Woher weiß man, ob man die richtigen Daten hat? Was wird zur entsprechenden Aufbereitung benötigt und wie kann ich die Daten entsprechend visualisieren?In dieser Episode geben wir einen Einblick in das Feld der datengetriebenen Entscheidungen. Wir beantworten, warum Tortendiagramme blödsinn sind, wie die Architektur aussehen kann, ob das Bauchgefühl überhaupt noch relevant ist und warum man nicht mehr sein eigenes JavaScript Frontend mehr bauen muss.Bonus: Was warmes Bier mit Husten zu tun hat und wie das Oktoberfest unsere Podcast-Statistiken beeinflusst.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksWartungsfenster Podcast mit "Make or Buy": https://wartungsfenster.podigee.io/20-make-or-buyEngineering Kiosk #43 Cloud vs. On-Premise: Die Entscheidungshilfe: https://engineeringkiosk.dev/podcast/episode/43-cloud-vs-on-premise-die-entscheidungshilfe/Engineering Kiosk #12 Make oder Buy: https://engineeringkiosk.dev/podcast/episode/12-make-oder-buy/ClickHouse Datenbank: https://clickhouse.com/Google BigQuery: https://cloud.google.com/bigquery?hl=deQlikView: https://www.qlik.com/de-deTableau: https://www.tableau.com/de-dePowerBI: https://powerbi.microsoft.com/de-de/Amazon QuickSight: https://aws.amazon.com/de/quicksight/GCP Looker Studio: https://cloud.google.com/looker-studioMetabase: https://github.com/metabase/metabaseApache Superset: https://github.com/apache/supersetRedash: https://github.com/getredash/redashGrafana: https://github.com/grafana/grafanaOpen Podcast: https://openpodcast.dev/Engineering Kiosk Podcasts zum Thema Datenbanken: https://engineeringkiosk.dev/tag/datenbanken/@EngKiosk Tweet mit Metabase Statistiken: https://twitter.com/EngKiosk/status/1590373145793396736Sprungmarken(00:00:00) Intro(00:01:00) Cloud vs. On-Premise im Wartungsfenster Podcast(00:04:32) Das heutige Thema: Datengetriebene und Daten unterstützende Entscheidungen(00:05:16) Was verstehen wir unter datengetriebenen Entscheidungen?(00:08:18) Gefälschte Statistiken und die richtige Daten-Visualisierung(00:10:25) Wer hat Zugang zu den Daten und wie sieht die Daten-Transparenz aus?(00:14:05) Muss jeder Mitarbeiter SQL-Abfragen erstellen können?(00:15:55) Die Architektur für datengetriebene Entscheidungen(00:18:53) Pre-Processing, OLAP, OLTP und Datenbank-Normalformen(00:21:46) Was ist Clickhouse und welche Tools gibt es auf dem Markt?(00:22:59) Sind Tortendiagramme Blödsinn?(00:23:46) Die Visualisierung: Wie finde ich heraus, welche Fragen wir eigentlich aus den Daten beantwortet haben wollen?(00:25:53) Wie verwende ich Datenvisualisierung, ohne ein eigenes Team?(00:28:30) Schnelle Dashboards und Performance von Queries(00:29:28) Was ist bei Datenbanken in Bezug auf Analytics optimiert?(00:31:03) Muss man noch sein eigenes Dashboard-Frontend mit JavaScript bauen?(00:36:21) Welche Tipps würdest du Neulingen zur Dashboards-Erstellungen geben?(00:39:17) Ist das Bauchgefühl noch relevant?(00:41:30) Ab wann sind Daten aussagekräftig (statistisch signifikant)?(00:45:51) Welche Firmen sind Vorreiter im Bereich datengetriebene Entscheidungen?(00:47:29) Kann man zu datengetrieben sein?(00:48:21) Woher weiß ich, auf welche Daten ich gucke?(00:50:10) Outro: Podcast-StatistikenHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776
undefined
Nov 8, 2022 • 56min

#44 Der Weg zum hochperformanten Team

Psychologie, Team-Dynamiken und hochperformante Teams: Zufällige Stichwörter oder relevante Themen?Eine Gruppe von Menschen soll zusammen und miteinander arbeiten. Am besten noch hochperformant, mit einem grandiosen Outcome und das ganze innerhalb einer Woche nach Gründung des Teams. So oder so ähnlich stellen sich viele Leute Team-Dynamiken vor.Dass dies alles nicht ganz so einfach ist, weiß jeder, der schon mal ein neues Team geformt bzw. übernommen hat.Das 5 Phasenmodell für die Teamentwicklung von Bruce Tuckman, ein US-amerikanischer Psychologe, kann dir eine gewisse Hilfestellung liefern.Forming, Norming, Storming, Performing und Mourning/Adjourning: Was zeichnet die einzelnen Phasen aus? Welches Verhalten kann beobachtet werden? Welche Fragen und Bedürfnisse entstehen bei den Teammitgliedern? Welcher Leadership-Style wird benötigt bzw. ist angebracht?Über dieses Thema sprechen wir in dieser Episode. Viel Spaß.Bonus: Was Puppenspieler mit Leadership zu tun haben, warum Kaiserschmarrn immer noch ein Thema ist und wieso das Currywurst-Museum + Bud Spencer-Museum eine Rolle spielt.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksDer Sarg aus Pilzen: https://www.derstandard.at/story/2000140191911/lebender-sarg-auf-dem-wiener-zentralfriedhof Bestattungsmuseum Wien: https://shop.bestattungsmuseum.at/#Podcast Episode zum Thema Tod und Wien, Interview Leiter der Friedhöfe in Wien: https://www.wieneralltagspoeten.at/podcast/episode/c279a1aa/9-wiener-todEngineering Kiosk Episode #33 Andy im Team Lead Bewerbungsgespräch: https://engineeringkiosk.dev/podcast/episode/33-andy-im-team-lead-bewerbungsgespr%C3%A4ch/Google Jamboard: https://jamboard.google.com/Miro: https://miro.com/de/Bruce Tuckmann: https://de.wikipedia.org/wiki/Bruce_Tuckman5 Phasenmodell: https://de.wikipedia.org/wiki/Teambildung#Phasenmodell_nach_Tuckman_und_Klotz Sprungmarken(00:00:00) Intro(00:01:07) Sarg aus Pilzen und das Bestattungsmuseum(00:04:02) Wenn ein Mitglied das Team verlässt, hast du ein neues Team(00:05:10) Dynamiken in einem Team: "Wie läuft es bei dir?"-Floskel(00:08:09) Die 5 Phasen bei der Entwicklung eines Team(00:10:54) Woher kommt das Modell der 5 Phasen bei der Entwicklung eines Team und welche Phasen gibt es?(00:14:28) Phase 1: Forming - Die Einstiegs- und Findungsphase (der erste Kontakt)(00:19:11) Phase 2: Storming - Die Auseinandersetzungs- und Streitphase (der Konflikt)(00:26:54) Phase 3: Norming - Die Regelungs- und Übereinkommensphase (der Vertrag)(00:32:58) Phase 4: Performing - Die Arbeits- und Leistungsphase (die Kooperation)(00:43:56) Phase 5: Mourning/Adjourning - Die Auflösungsphase(00:47:02) Muss jedes Team alle Phasen durchlaufen?(00:50:43) Wie verhalten sich die Phasen und die Team-Dynamik in einem Remote-Setup?(00:53:59) Leadership-Workshops und Erfahrung durch Praxis(00:55:20) Outro und FeedbackHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776
undefined
Nov 1, 2022 • 1h 11min

#43 Cloud vs. On-Premise: Die Entscheidungshilfe

Wann ist die Cloud das richtige für dich und deine Applikation? Oder doch lieber alles selbst hosten?Die Cloud wird oft als "die Lösung" für all deine Probleme beschrieben. Sie ist günstig, man benötigt weniger Personen für den operativen Betrieb, alle Services sind gemanagt und serverless und alle anderen Probleme hat man sowieso nur On-Premise. Sind damit On-Premise Datacenter und Selfhosting ausgestorben und sollten gemieden werden? Oder gibt es sogar Szenarien, wo On-Premise sogar große Vorteile hat? In dieser Episode geht es um diese Frage: Wann ist die Cloud und wann On-Premise / die eigenen Server für dich die bessere Wahl? Wir diskutieren über diese Frage anhand eines Blogposts über eine Migration aus der Cloud von 37Signal's Produkt "Hey.com".Bonus: Was der Produktlebenszyklus vom VW Golf mit der Cloud zu tun hat und warum ein Raid 1 kein Backup ist.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksGoogle Stadia: https://blog.google/products/stadia/message-on-stadia-streaming-strategy/37Signal: https://37signals.com/Basecamp: https://basecamp.com/HEY.com: https://www.hey.com/David Heinemeier Hansson (DHH): https://dhh.dk/Jason Fried: https://twitter.com/jasonfriedBuch "Rework": https://www.amazon.de/Rework-Jason-Fried/dp/0307463745“Why we're leaving the cloud”: https://world.hey.com/dhh/why-we-re-leaving-the-cloud-654b47e0Podcast episode “Leaving the cloud” https://www.rework.fm/leaving-the-cloud/ Engineering Kiosk Episode #34 Wie cloudy bist du?: https://engineeringkiosk.dev/podcast/episode/34-wie-cloudy-bist-du/Changes at Basecamp (politische Diskussionen): https://world.hey.com/jason/changes-at-basecamp-7f32afc5Hetzner Cloud: https://www.hetzner.com/de/cloudOVH: https://www.ovhcloud.com/de/DigitalOcean: https://www.digitalocean.com/UpCloud: https://upcloud.com/Vultr: https://www.vultr.com/de/Stack IT (Lidl Cloud): https://www.stackit.de/de/Planet Scale: https://planetscale.com/Looker: https://www.looker.com/Prometheus: https://prometheus.io/Wartungsfenster Podcast: https://wartungsfenster.podigee.io/"How Bank Of America Is Saving $2 Billion Every Year By Building Its Own Cloud": https://pulse2.com/how-bank-of-america-is-saving-2-billion-every-year-by-building-its-own-cloud/"Evaluating the Total Cost of Ownership for an On-Premise Application System": https://michaelskenny.com/points-of-view/evaluating-the-total-cost-of-ownership-for-an-on-premise-application-system/"How Amazon’s cloud business generates billions in profit": https://www.cnbc.com/2021/09/05/how-amazon-web-services-makes-money-estimated-margins-by-service.htmlSprungmarken(00:00:00) Intro(00:00:54) Return to Monkey Island für Linux(00:02:59) Der letzte Service, der von Google wieder eingestellt wurde: Google Stadia (Cloud Gaming)(00:04:08) Das heutige Thema: Migration aus der Cloud hin zu On-Premise(00:06:20) Warum 37Signal sich mit ihrem Service HEY aus der Cloud zurück zieht(00:13:13) Warum ist eine Migration aus der Cloud ein Thema für den Podcast und die Ansichten von Basecamp/37Signals(00:17:06) Was ist eigentlich die Cloud bzw. was heißt "die Cloud"? Und wo ist die Abgrenzung zu "Cloud Native"?(00:26:19) Verlernen wir, wie Server geracked und Datacenter betrieben werden, wenn wir immer nur die Cloud nutzen?(00:31:44) Was kostet die Cloud vs. On-Premise und wann rentiert sich welches Modell? Total Costs of Ownership, Hardware und die Größe des Operations-Team(00:51:01) War die Migration von On-Premise in die Cloud bei trivago eine gute und sinnvolle Entscheidung?(00:58:00) In welchem Setup würden wir die Cloud und wann On-Premise wählen?(01:06:59) Angst um den eigenen Job bei einer Cloud-Migration(01:09:33) Zusammenfassung und OutroHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776
undefined
Oct 25, 2022 • 54min

#42 Lexer, Parser und Open Source in Counterstrike

Was haben Lexer, Parser und Counter-Strike gemeinsam? Richtig! Eine schöne Open Source Story.Computerspiele sind für viele Software-Entwicklerinnen und -Entwickler der Einstieg. Andere wiederum steigen über den klassischen Bildungsweg eines Informatik-Studiums in die Softwareentwicklung ein. Dabei wird oft viel Theorie wie Lexer, Parser und Compilerbau durchgenommen. Doch was haben Computerspiele mit Lexer und Parser gemeinsam?Andy erzählt eine Story, wie er vor Jahren sich mit Lexer und Parser anhand einer Counter-Strike-Konfigurationsdatei vertraut gemacht hat. Eigentlich nur, um eine datengetriebene Spielanalyse zu betreiben. Raus kam ein Lexer und Parser für das Valve Data Format (VDF).Eine Geschichte voller Over-Engineering, Open Source, Spaß und einem Job-Angebot.Bonus: Wie Wolfgang nur ans cheaten denkt, was autoexec mit Maustreibern zu tun hat und was Landmaschinen auf YouTube mit Rabbitholes zu tun haben.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksReturn to Monkey Island: https://returntomonkeyisland.com/Crash Bandicoot: https://www.crashbandicoot.com/deDreamHack LAN-Party: https://de.wikipedia.org/wiki/DreamHackCounter-Strike: Global Offensive: https://store.steampowered.com/app/730/CounterStrike_Global_Offensive/LANSuite auf GitHub: https://github.com/lansuite/lansuiteEpisode #41 SQL-Injections https://engineeringkiosk.dev/episodes/41Tactical Ops: Assault on Terror: https://de.wikipedia.org/wiki/Tactical_Ops:_Assault_on_TerrorESL: https://esl.com/Source (Spiel-Engine): https://de.wikipedia.org/wiki/Source_(Spiel-Engine)Philips HUE: https://www.philips-hue.com/de-deValve Data Format (VDF) - Format: https://developer.valvesoftware.com/wiki/KeyValuesValve Data Format (VDF) - Sample Configuration File: https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Game_State_Integration#Sample_Configuration_FileCounter-Strike: Global Offensive Game State Integration: https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Game_State_IntegrationA Lexer and Parser for Valves Data Format (known as vdf) written in Go: https://github.com/andygrunwald/vdfEngineering Kiosk #38 Monitoring, Metriken, Tracing, Alerting, Observability: https://engineeringkiosk.dev/podcast/episode/38-monitoring-metriken-tracing-alerting-observability/Drachenbuch (Compiler Bau): https://de.wikipedia.org/wiki/DrachenbuchHandwritten Parsers & Lexers in Go: https://blog.gopheracademy.com/advent-2014/parsers-lexers/InfluxDB: https://www.influxdata.com/Influx Query Language: https://docs.influxdata.com/influxdb/v1.8/query_language/Flow-Status: https://de.wikipedia.org/wiki/Flow_(Psychologie)ANTLR (ANother Tool for Language Recognition): https://www.antlr.org/Erweiterte Backus-Naur-Form: https://de.wikipedia.org/wiki/Erweiterte_Backus-Naur-FormFOSDEM 2023 - Konferenz: https://fosdem.org/Faceit: https://www.faceit.com/deEngineering Kiosk #03 Over-Engineering, das Werkzeug des Teufels?: https://engineeringkiosk.dev/podcast/episode/03-over-engineering-das-werkzeug-des-teufels/Engineering Kiosk #23 Schaltest du noch oder automatisiert du schon: Home Automation: https://engineeringkiosk.dev/podcast/episode/23-schaltest-du-noch-oder-automatisiert-du-schon-home-automation/Open Broadcaster Software (OBS): https://obsproject.com/deAnwendungsfall "Home Assistant CS:GO game state integration": https://www.youtube.com/watch?v=kEM54QmAMlwAnwendungsfall "CS:GO C4 Hue Lights (Game State Integration)": https://www.youtube.com/watch?v=QBdI54MHB-kAnwendungsfall "CS:GO Game State Integration Broadcast HUD": https://www.youtube.com/watch?v=TQPU03yLSoAMonkey Island Sound am Ende https://www.youtube.com/watch?v=qUMKy2Jk3Oo Sprungmarken(00:00:00) Intro(00:00:42) Wolfgang und Computer-Spielen, LAN-Parties, 10 Mbit-Netzwerke und End-Terminator(00:08:57) Der Hintergrund: Wie Andy zu Counter Strike kam und was das mit programmieren zu tun hat(00:14:25) Counter Strike Game State Integration: Webhooks vom Spiel(00:19:52) Valve Data Format (VDF), die Source Game Engine(00:21:29) Daten-getriebene Spiel-Strategien und ein automatischer Installer für eine Webhook-Adresse(00:25:28) Ein Lexer und Parser für das Valve Data Format (VDF)(00:30:03) Was ist ein Lexer? Was ist ein Token?(00:35:14) Was ist ein Parser?(00:39:18) War es notwendig, einen Lexer und Parser zu schreiben? Und die Testphase des Installers(00:41:47) Wird die Lexer- und Parser Library von jemandem verwendet? Und ein Job-Angebot(00:46:31) Anwendungsfälle: Spiele-Analysen, Zimmerlicht auf Basis der Bombe ändern, Streaming-Overlays(00:49:43) Eine schöne Open Source Story(00:51:46) OutroHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776
undefined
Oct 18, 2022 • 1h 9min

#41 SQL Injections - Ein unterschätztes Risiko

SQL Injections: Eine der weitverbreitetsten Sicherheitslücken im Web, auch im Jahr 2022Der Großteil aller Applikationen interagiert in irgendeiner Art und Weise mit einer Datenbank. Deswegen werden die meisten Entwicklerinnen und Entwickler bereits von der Sicherheitslücke "SQL Injection" gehört haben. Seit 24 Jahren ist dies eine der weitverbreitetsten Sicherheitslücken im Internet und es ist kein Ende in Sicht. Was ist eigentlich eine SQL-Injection im Detail? Welche verschiedenen Arten gibt es? Was ist der Grund, dass uns dieses Einfallstor so lange beschäftigt? Woher kommt diese und wer hat sie entdeckt? Wie kann man sich schützen und seine Anwendung ausreichend testen? All das und noch viel mehr in dieser Episode.Bonus: Der Kontrast zwischen Duisburg und Berlin und wie die SQL-Injektion als Nebenprodukt entdeckt wurde.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksPhrack Magazine Volume 8, Issue 54 Dec 25th, 1998, article 08 of 12: http://www.phrack.org/archives/issues/54/8.txtOWASP Top Ten 2021: https://owasp.org/www-project-top-ten/CVE Details - Security Vulnerabilities Published In 2022(SQL Injection): https://www.cvedetails.com/vulnerability-list/year-2022/opsqli-1/sql-injection.htmlAnalyzing Prepared Statement Performance: https://orangematter.solarwinds.com/2014/11/19/analyzing-prepared-statement-performance/SQL Injection Prevention Cheat Sheet: https://cheatsheetseries.owasp.org/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.htmlOWASP Top 10 (2021) - A03:2021 – Injection: https://owasp.org/Top10/A03_2021-Injection/CVE Details - Heartbleed (CVE-2014-0160): https://www.cvedetails.com/cve/CVE-2014-0160/CVE Details - Log4Shell (CVE-2021-44228): https://www.cvedetails.com/cve/CVE-2021-44228/xkcd "Exploits of a Mom": https://xkcd.com/327/HackerOne-Programm von trivago: https://hackerone.com/trivagoOwncloud: https://owncloud.com/TYPO3: https://typo3.org/Wordpress: https://wordpress.com/de/SQL-Proxy: https://github.com/sysown/proxysqlGitHub CodeQL: https://codeql.github.com/sqlmap: https://sqlmap.org/SQLi-Fuzzer: A SQL Injection Vulnerability Discovery Framework Based on Machine Learning: https://ieeexplore.ieee.org/document/9657925OWASP Zed Attack Proxy (ZAP): https://www.zaproxy.org/PlanetScale: https://planetscale.com/Awesome static analysis: https://github.com/analysis-tools-dev/static-analysisSprungmarken(00:00:00) Intro(00:00:42) SQL-Injections aus den 90ern und die Vielfalt in Berlin(00:02:49) Das heutige Thema: Web-Security SQL-Injections in der Tiefe(00:05:07) Was sind SQL-Injections?(00:08:48) Sind SQL-Injections auch im Jahr 2022 noch ein Problem?(00:10:56) Wann gab es die erste SQL-Injection? Woher stammt diese Sicherheitslücke?(00:13:22) Was sind die Gründe, dass SQL-Injections noch so ein großes Problem sind?(00:19:37) Verschiedene Arten von SQL-Injections: Output-Based, Error-Based, Blind-SQL-Injections, Time-Based-SQL-Injections, Out-of-Band-SQL-Injections(00:27:42) Bug Bounty: 2-Channel SQL Injection-Attacke in Kombination mit Cross-Site-Scripting (XSS) bei trivago(00:29:42) Mehrstufige Attacken und Ausnutzung mehrerer Lücken nacheinander(00:33:16) Möglicher Schaden durch eine SQL-Injection: Daten verändern, Befehle auf dem Server ausführen, lokale Dateien lesen und schreiben, SQL-Funktionen ausführen, Denial of Service (DoS)(00:39:09) Gegenmaßnahmen um SQL-Injections zu verhindern: Prepared Statements, Datenbank-Komponenten updaten, limitierte Rechte für Datenbank-User, Web Application Firewalls (WAF)(00:56:42) Möglichkeiten um deine Anwendung automatisch zu testen: Unit-Tests, statische Analyse, dynamische Analyse mit sqlmap und Fuzzing(01:02:51) Maßnahmen um Sicherheit zu gewährleisten von Datenbank as a Service-Providern(01:06:51) OutroHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776
undefined
Oct 11, 2022 • 50min

#40 Wie wird man und Frau zum Senior Dev?

Was ist eigentlich ein Senior Engineer und wie werde ich zu einem?In der Tech-Industrie werden Titel wie Junior-, Senior-, Staff- und Co genutzt, um Levels und Erfahrung auszudrücken. Doch was ist eigentlich ein Senior-Engineer? Was unterscheidet ein Senior von einem Junior? Wie kann sowas in der Praxis aussehen? Ist Zeit ein wirklicher Faktor für eine Beförderung (10 Jahre Berufserfahrung oder 10x 1 Jahr Berufserfahrung)? Ist "Senior" zu sein ein "Einmal-Aufwand" oder ist kontinuierliche Energie gefordert?In dieser Episode beschreiben Andy und Wolfgang einige Attribute, die den Unterschied eines Juniors und Seniors darstellen und beschreiben, wie man den Weg zum Senior einschlagen kann.Bonus: Warum ein Meterstab auch Zollstock genannt wird und warum Wolfgang ein T als hart bezeichnet.Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776Gerne behandeln wir auch euer Audio Feedback in einer der nächsten Episoden, einfach Audiodatei per Email oder WhatsApp Voice Message an +49 15678 136776Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksThe Scoop: Netflix’s historic introduction of levels for software engineers: https://blog.pragmaticengineer.com/netflix-levels/Brendan Gregg: https://brendangregg.com/Backlog Grooming: https://www.agile-academy.com/de/product-owner/product-backlog-refinement-grooming/OWASP Top 10: https://owasp.org/www-project-top-ten/Engineering Kiosk #10 Das Karriere Booster Meeting 1:1s: https://engineeringkiosk.dev/podcast/episode/10-das-karriere-booster-meeting-11s/Engineering Kiosk #35 Knowledge Sharing oder die Person, die nie "gehen" sollte...: https://engineeringkiosk.dev/podcast/episode/35-knowledge-sharing-oder-die-person-die-nie-gehen-sollte/Career framework inspiration from the world's best companies: https://progression.fyi/Circle CI: Engineering Competency Matrix: https://docs.google.com/spreadsheets/d/131XZCEb8LoXqy79WWrhCX4sBnGhCM1nAIz4feFZJsEo/edit#gid=0How to Exhibit Leadership as an Individual Contributor: https://www.tombartel.me/blog/exhibit-leadership-as-individual-contributor/How Individuals Advance at Buffer, Without Becoming Managers: https://buffer.com/resources/career-framework/Engineering Ladders: http://www.engineeringladders.com/Sprungmarken(00:00:00) Intro(00:00:58) Berufserfahrung, Breites vs. tiefes Wissen und Karriere(00:06:23) Wie wichtig ist Karriere und Titel?(00:08:03) Umgang mit Positions-Titeln in Firmen(00:09:28) Heutiges Thema: Wie kann ich ein Senior Engineer werden?(00:13:02) Erste Schritte zum Senior: Übernahme von kleinen Projekten - Die Arbeit pro-aktiv vorantreiben(00:18:18) Impact: Was wird im Produkt wirklich gebraucht?(00:19:34) Technische Skills: Entwicklung von Code und Testing(00:22:34) Technische Skills: Debugging(00:24:43) Technische Skills: Monitoring, Alerting und Skalierung(00:26:13) Technische Skills: Security(00:28:48) Kommunikations Skills: Feedback, positiv gestimmt, Mentoring und Knowledge Sharing(00:35:15) Senior Engineer zu sein ist nicht einfach(00:35:47) Technologie vs. Business-Verständnis: Wann ist eine Lösung gut genug?(00:39:38) In die Senior-Rolle reinwachsen: Erfahrung und Zeit(00:42:54) Unterschiedliches Verständnis von der Senior-Rolle(00:45:07) Der eine Tipp auf dem Weg zum Senior Engineer(00:47:32) Inflationäre Nutzung des Begriffs "Senior"(00:48:37) OutroHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Feedback (gerne auch als Voice Message)Email: stehtisch@engineeringkiosk.devTwitter: https://twitter.com/EngKioskWhatsApp +49 15678 136776

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app