programmier.bar – der Podcast für App- und Webentwicklung

programmier.bar
undefined
Feb 27, 2020 • 59min

Folge 53 - Skalieren von Teams

Ein Team sollte lediglich so viele Personen beinhalten, dass alle von zwei Pizzen satt werden – so sagt es Jeff Bezos, CEO von Amazon, jedenfalls über die ideale Anzahl involvierter Personen in einem Meeting. Die direkte Konsequenz aus dieser Faustregel besteht aus gesteigerter Effizienz und lässt sich in der agilen Softwareentwicklung auf die Größe eines Teams übertragen. Durch die Möglichkeit, Entwicklerteams auf wenige, dafür aber wirksame Köpfe zu skalieren, werden Kommunikationswege kürzer und Verantwortungen gleichmäßig aufgeteilt. In Folge 53 geben wir Lösungsansätze zu üblichen Problemen in Skalierprozessen von Entwicklerteams. Wie kann man vermeiden, dass neue Mitarbeiter keinen Mehrwert bringen, ein Team zu schnell wächst oder Code und Kommunikation zu wünschen übrig lassen? Wir schildern unsere Erfahrungen in der Teamarbeit und erzählen, wie unser Weg hin zu einer agilen Arbeitsweise verlief, die von den größten Vorteilen von Scrum zehrt. Außerdem beschreiben wir, worauf wir bei Bewerbern und neuen Kollegen achten, wie ein umfangreiches Onboarding abläuft und wie wir unser Bestreben zu einer Clean-Code-Base umsetzen. Diese Folge hält auch den ein oder anderen Rat zur Weiterentwicklung der eigenen Fähigkeiten bereit und bietet Futter für Berufsneulinge, Teamplayer und Projektmanager! Timecodes: (01:13) Was sind die größten Probleme mit wachsenden Teams? (05:00) Wie stellt man ein perfektes Team zusammen? (08:37) Was sollten neue Teammitglieder mitbringen? (13:50) Fehler in der Teamzusammenstellung korrigieren (18:00) Größe eines Teams und die “Zwei-Pizza-Regel” (22:37) Teamkonstellationen und Scrum-Prozesse (24:08) Onboarding und Integration eines neuen Teammitglieds (31:10) Änderung der Teamkonstellation (34:09) Einflussnahme der Entwickler auf Human Relations (36:27) Continuous Feedback (38:51) Development-Prozesse und Task-Management (41:05) Codebase und Wissensaustausch (48:30) Remote Work (51:55) Picks of the Day Picks of the Day Sebi: Hilfeseite für Seitenverhältnisse in CSS Fabi: Calibre App – eBook-Management-App zum Übertragen von Dokumenten auf Kindle Jojo: Capacitor Ionic Framework – Bridge zwischen Web- und nativen Apps. Ohne UI, aber Ermöglichung ganz einfachen Zugriffs auf Funktionalitäten wie Push-Notifications, Statusbar, Kamerazugriff usw. Schreibt uns! Schickt uns eure Themenwünsche und euer Feedback. podcast@programmier.bar Folgt uns! Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen. Twitter Instagram Facebook Besucht uns! Erfahrt hier, wann das nächste Meetup in unserem Office in Bad Nauheim stattfindet. Meetup Musik: Hanimo 
undefined
Feb 21, 2020 • 1h 7min

Folge 52 - Technical SEO mit Martin Splitt von Google

Welche Inhalte und technischen Faktoren sind dafür verantwortlich, dass eine Webseite über Suchmaschinen leicht gefunden werden kann? Es gibt bis zu 200 Signale pro Webseite, die Google zur Klassifizierung der Suchergebnisse nutzt. Was dabei gern unterschätzt wird, ist der Fakt, dass etwa 50% der Suchfaktoren technisch bedingt sind! Beispielsweise spielen Performance oder die Architektur weiterführender Links eine Rolle. In Podcast-Folge 52 haben wir einen wahren SEO-Experten zu Gast – Martin Splitt, Developer Advocate bei Google, Speaker, Autor und Blogger! Mit wem könnten wir besser über SEO, kurz für Search Engine Optimization, sprechen als mit ihm? Deshalb erforschen wir gemeinsam die technischen Rahmenbedingungen, die es braucht, um eine Webseite in Suchmaschinen gut einzustufen und an der Spitze der Ergebnisliste anzeigen zu lassen. In dieser Folge bekommt ihr praktische Tipps, mit denen ihr es schafft, eure Webseite in einer Suchmaschine gut zu ranken – Reinhören lohnt sich also! Hier findet ihr die weiterführenden Links von Martin, die er in dieser Folge anspricht: SEO-Anleitung für Webentwickler Structured Data Gallery Google Search Console Teste deine Webseite: Mobile-friendly test Rich Results Test Youtube-Kanal Google Webmasters Office Hours Official Google Webmaster Central Blog Picks of the Day Sebi: Workout App mit frei konfigurierbaren Workouts, Apple Health Integration, Kalender und Erinnerungen Fabi: Hello Rust Youtube-Kanal von Matthias EndlerMartin: Google Codelabs Martin findet ihr unter dem Handle @g33konaut auf Twitter. Auf seinem Blog 50 Lines of Code schreibt er regelmäßig über Software Engineering, Open Source und Software Quality. Schreibt uns! Schickt uns eure Themenwünsche und euer Feedback. podcast@programmier.bar Folgt uns! Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen. Twitter Instagram Facebook Besucht uns! Erfahrt hier, wann das nächste Meetup in unserem Office in Bad Nauheim stattfindet. Meetup Musik: Hanimo
undefined
Feb 14, 2020 • 1h 1min

Folge 51 - Unit Testing

Das Entwickeln vielversprechender Softwareprojekte besteht neben dem grundlegenden Schreiben des Codes auch daraus, diesen zu testen. Oft stellt sich dabei die Frage, ob es sinnvoll ist, den Code erst einmal bis zum Ende durchzuplanen, um einmalig finale Tests anzuschließen oder bereits an früherer Stelle mit dem Testen zu beginnen. Mit Unit Testing ist es einfach, den eigenen Code in isolierte Teile zu untergliedern, um Änderungsaufwände zu minimieren. In Folge 51 plaudern wir aus dem Nähkästchen und erzählen, für welche Anwendungsfälle wir Unit Tests schreiben, wie wir sie aufbauen und was ein AAA-Pattern (kurz für Arrange, Act und Assert) ist. Wir besprechen die drei Varianten Fakes, Mocks und Stubs, mit denen wir Testing Doubles implementieren und geben euch Anwendungsbeispiele. Hier geht's zum Artikel, den wir besprechen: Lynch, Michael (2018): Why Good Developers Write Bad Unit Tests. Solltet ihr durch diese Folge neugierig auf verschiedene Methoden des Software-Testings geworden sein, hört doch gleich auch in Folge 46 rein, in der wir einen Überblick verschiedener Herangehensweisen in der Web- und App-Entwicklung geben! Picks of the Day Dennis: Inspizieren und Verändern von CSS-Eigenschaften mit dem Google Chrome-Plugin VisBug Jojo: Kochbücher digitalisieren und organisieren durch OCR-Erkennung mit Recipe Keeper und CookBook Fabi: Keynote von Robert C. Martin (“Uncle Bob”) auf den VoxxedDays 2019 mit interessanten Thesen über das Entwickler-Dasein Schreibt uns! Schickt uns eure Themenwünsche und euer Feedback. podcast@programmier.bar Folgt uns! Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen. Twitter Instagram Facebook Besucht uns! Am 27. Februar 2020 ist es wieder soweit! Das nächste Meetup steht an und wir freuen uns, euch persönlich kennenzulernen. Diesmal spricht Stefan Judis über "HTTP headers for the responsible developer". Jetzt kostenfrei anmelden! Meetup am 27.02.20 Musik: Hanimo
undefined
Feb 7, 2020 • 1h 6min

Folge 50 - Knative mit Dr. Roland Huß

Serverlose Applikationen ganz easy auf nur einer Plattform einrichten, bereitstellen und verwalten? Mit Knative geht das, sagt Dr. Roland Huß, unser Gast in Folge 50! Timecodes: (00:28) Knative und Kubernetes – Was ist das? (03:13) Unterschied zwischen Serverless (Knative) zu Kubernetes (04:55) Null Skalierung und cold start (07:30) Wie kann ich Knative hosten? Was ist Istio? (10:30) Skalierung – HTTP-Request-basiert und Panic Mode (13:15) Knative Eventing (15:44) Autoscaling: EventSources auf Null skalieren – Projekt Keda von Microsoft (18:48) Konfiguration von Services (21:45) Koexistenz von Knative- & Kubernetes-Services auf einem Cluster (23:45) Core Benefits Knative (25:20) Was ist das Side Car Pattern? (29:50) Knative client – kn cli (31:30) Verbreitung von Knative (35:00) Was ist die einfachste Möglichkeit auf Knatvie zu deployen? (Knative Build - Tekton) (43:45) Arbeitsweise, Governance Modell und Organisation von Knative (55:40) Pick of the Day Knative wurde als Open-Source-Projekt gestartet. Heute arbeitet daran neben Weiteren auch Red Hat – ein Anbieter von Open Source-IT-Lösungen für Unternehmen. Wir haben Dr. Roland Huß, Principal Software Engineer bei Red Hat, eingeladen um mit uns die Plattform genauer unter die Lupe zu nehmen. Wenn ihr häufig mit Kubernetes in Kontakt kommt, lohnt sich definitiv ein Blick in Knative! Direkt zu Beginn der Folge erläutern wir, worin sich die serverlose Variante und Kubernetes unterscheiden. Besonders hervorhebenswert ist das Server-Autoscaling, mit dem http-Requests antizipiert und Serverkosten so effizient reduziert werden können. Doch die Plattform bietet weitere Vorteile, die wir zusammen mit unserem Gast erörtern! Solltet ihr neugierig geworden sein, schaut doch gleich auf GitHub vorbei und erfahrt mehr über die Arbeitsweise mit Knative, indem ihr bis zum Schluss dran bleibt! Picks of the Day Sebi: Streak App Die Aufgabenliste für gute Gewohnheiten Fabi: Videokonvertierung mit HandBrake Roland: Smart Home Steckdose mit eigener Firmware flashen zur Maximierung der Datensicherheit  Schreibt uns! Schickt uns eure Themenwünsche und euer Feedback. podcast@programmier.bar Folgt uns! Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen. Twitter Instagram Facebook Besucht uns! Erfahrt hier, wann das nächste Meetup in unserem Office in Bad Nauheim stattfindet. Meetup Musik: Hanimo
undefined
Jan 31, 2020 • 1h 7min

Folge 49 - Rust mit Matthias Endler

“Rust hat alle Vorteile von Go, PHP, C und JavaScript und ist dazu noch typsicherer als alle anderen Sprachen,” sagt Matthias Endler, ein waschechter Rustacean, den wir in Folge 49 zu Gast haben!Rust ist eine Programmiersprache, die vor allem auf Performance und Sicherheit ausgelegt ist. Während sie systemnah ist und leistungsstarke Abstraktionen bietet, die stark an dynamische Sprachen wie Ruby oder Python erinnern, hat sie außerdem eine Speichersicherheit ohne Garbage Collector auf Lager! So macht sie die Low-Level-Programmierung einfacher und sicherer.In Folge 49 plaudern wir mit Matthias Endler über die Vorzüge der Programmiersprache. Er erzählt, dass der Code tatsächlich lauffähig sei, wenn der Compiler das sagt, und dass in Rust geschriebene Services monatelang problemfrei laufen können! Diese Vorteile hören wir uns genauer an und sprechen dabei auch über Plug-ins, die man mit Rust in anderen Sprachen einbinden kann, grundsätzliche Konzepte wie Borrowing und Ownership, und wie Rust auf CDN Edges mit WebAssembly ausgeführt werden kann.Pssst! Wir haben gehört, dass die Programmiersprache sogar von SpaceX verwendet wird… Na, wenn das mal nicht ein Reinhören wert ist! ;)Wenn ihr Lust habt, Matthias zu treffen und beim Thema Rust auf dem Laufenden zu bleiben, besucht doch das nächste Meetup von Rust Cologne in Köln! Unbedingt empfehlenswert findet Matthias außerdem Aerorust, die Working Group von Rust und Aerospace.Picks of the DayFabi: Dynamo für MacOS – als Extension für Safari nutzen und effizient Werbung skippen!Lesenswerter Artikel zu Actix Web postmortem von Nikolay Kim, 17.01.2020.Matthias: PICO-8 – ein Emulator, mit dem man eigene 8-Bit-Spiele basteln kann!Schreibt uns!Schickt uns eure Themenwünsche und euer Feedback.podcast@programmier.barFolgt uns!Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen.TwitterInstagramFacebookBesucht uns!Erfahrt hier, wann das nächste Meetup in unserem Office in Bad Nauheim stattfindet.MeetupMusik: Hanimo
undefined
Jan 23, 2020 • 50min

Folge 48 - Vue.js – die besten Features, Teil 2

Ihr könnt von Vue.js nicht genug kriegen? Wir auch nicht!Deswegen gibt’s hier die schon dritte Folge über das Web-Framework. Darin gehen wir auf einzelne Funktionalitäten einiger Features ein, wie etwa klassische Vererbung, Filter, Transitions und Slots. Außerdem bringen wir die Sprache auf Events in Vue und betrachten dabei V-model und Event Modifier genauer. Im Anschluss erzählt Sebi von den tückischen Fallstricken, die mit Reactivity auftauchen können, und zeigt dann auf, wie man ihnen easy aus dem Weg gehen kann.Solltet ihr gerade erst auf Vue.js gestoßen sein, lohnt sich das Reinhören in Folge 16 - Vue.JS, das JavaScript Framework für reaktive Single Page Webentwicklung!Unsere ersten Feature-Highlights von Vue präsentieren wir euch in Folge 43 - Vue.js – die besten Features.Picks of the DayDennis: 7 Minuten Workout - Seven – Fit ins Jahr mit Heimsport via App!Sebi: Google Flights – Super schnelle Flugsuche!Jojo: Blog von Felix von Leitner über aktuelle Tech Entwicklungen, kritische Sicherheitslücken aber auch interessante Informationen aus anderen Bereichen. Immer eine Herausforderung an die eigene Medienkompetenz!Fabi: Audio-Midi-Setup für den Mac durch Aggregate DeviceSchreibt uns!Schickt uns eure Themenwünsche und euer Feedback.podcast@programmier.barFolgt uns!Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen.TwitterInstagramFacebookBesucht uns!Erfahrt hier, wann das nächste Meetup in unserem Office in Bad Nauheim stattfindet.MeetupMusik: Hanimo
undefined
Jan 17, 2020 • 57min

Folge 47 - Unity im Indie-Game-Development mit Jonas Tyroller

Wie entwickelt man eigentlich ein Spiel? In dieser Folge freuen wir uns, euch ein brandheißes Interview mit Jonas Tyroller präsentieren zu können! Wir hatten den Spieleentwickler zu Gast und sprachen mit ihm über die Spiel-Engine Unity, Indie-Game-Development im Allgemeinen und seine aktuellen Projekte. Jonas gibt uns eine Einführung in die Grundlagen von Unity und erzählt, wie und mit welcher Programmiersprache die Entwicklungsumgebung ideal funktioniert. An seinen Erfahrungen in der Spieleentwicklung lässt er uns teilhaben und verrät, welche Disziplinen einzurechnen sind, um eigenständig ein Projekt veröffentlichen zu können. Als wären 3D-Modelling, Sound und Game-Mechaniken nicht schon herausfordernd genug, spricht er außerdem über das Marketing und die Plattformen, auf denen ein Spiel erscheinen kann. Mit unserem Kollegen Julian, der in dieser Folge Podcast-Premiere feiert, hat er dabei (neben uns ;)) einen ebenbürtigen Gesprächspartner, da Julian selbst Erfahrung in der Spieleentwicklung mitbringt.Jonas betreibt einen erfolgreichen englischsprachigen YouTube-Kanal, auf dem er praktische Tipps für die Spieleentwicklung gibt und die seiner eigenen Spiele erlebbar macht. Noch im Jahr 2020 soll sein neues Spiel “Will you snail?”, ein mit GameMaker entwickelter, actiongeladener Platformer, auf Steam erscheinen.Picks of the DayJulian: McGonigal, Jane (2010): Reality is Broken: Why Games Make Us Better and How They Can Change the World. Grundlagenliteratur zur Verortung von Spielen in der Gesellschaft.Fabi: DaisyDisk Mac-Tool zum leichten Aufräumen der Festplatte.Jonas: Ratschlag: "Fangt mit kleinen Spielen an, wenn ihr in die Spieleentwicklung einsteigen wollt!"Spiele-Empfehlung aus dem Genre Exploration: Outer Wilds (2019)Schreibt uns!Schickt uns eure Themenwünsche und euer Feedback.podcast@programmier.barFolgt uns!Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen.TwitterInstagramFacebookBesucht uns!Meldet euch hier für das Meetup am 23. Januar 2020 über Rust an!MeetupMusik: Hanimo
undefined
Jan 10, 2020 • 1h

Folge 46 - Testing – ein Überblick

Software-Testing ist ein wesentlicher Bestandteil, wenn es um die Umsetzung eines Programmier-Projekts geht. Doch wie soll man den Durchblick behalten und wissen, was die richtige Methode für das eigene Vorhaben ist? Und wie wichtig ist Testing eigentlich?Bei der programmier.bar geht es munter weiter und wir geben euch in der ersten Folge des neuen Jahres einen Überblick zu verschiedenen Methoden des Software-Testings. Wir unterteilen hier in funktionale (Unit- und Device-Testing, Akzeptanz-, Integrations-, System- und Smoke Tests) sowie nicht-funktionale Tests (Last-, Performance-, A/B-, User- und Monkey-Tests, Apache Bench und eigene Herangehensweisen). Während wir von unseren Erfahrungen erzählen, sprechen wir auch über Yegor Bugayenko, der mit seiner Ansicht, Testing sei nur dann sinnvoll, wenn etwas nicht richtig läuft, schon für diverse Kontroversen sorgte.Weitere nützliche Tools, über die wir in dieser Folge sprechen:AWS Device FarmFirebase Test Lablocust.iocucumber.ioWenn ihr mehr über AB-Testing erfahren wollt, hört doch mal in Folge 41 - Google Firebase Teil 2!Mehr über Lasttests gibt's in Folge 42 - Realtime Updates für die Massen.Hier nochmal der Testing-Witz, dessen Pointe Sebi ausließ. ;)"A QA Engineer walks into a bar. Orders 1 beer. Orders -0 beers. Orders 2.5 billion beers. Orders -15 beers. Orders affsdffssfd. Orders lizard. Orders 9999dg beers. The first real customer walks into a bar and asks where the bathroom is. The bar bursts in flames, everyone is dead."Nicht verpassen!Am 23. Januar 2020 findet das nächste Meetup in unserem Office in Bad Nauheim statt! Matthias Endler wird uns eine Einführung in Rust geben und dabei auf die besten Features der performanten und sicheren Programmiersprache eingehen.Meldet euch gern kostenfrei an, lauscht Matthias und plauscht mit uns bei Snacks und Getränken!Picks of the DayFabi: Michael Lynch (2018), “Why Good Developers Write Bad Unit Tests” auf MTLYNCH.IO – Ein Preread für eine kommende Folge über Unit-Tests. Wenn ihr den Artikel lest, schreibt uns, was ihr darüber denkt und tragt zu unserer Diskussion bei!Dennis: Spark Desktop-App (und nicht doofe Gmail-Oberfläche ;)) – Benachrichtigungen nur für die wichtigen Mails erhaltenSebi: Geschwindigkeitsmesser GPS – cool für’s Fahrrad und als HUD im AutoJojo: Component | Element – sehr umfangreiche und gute vue.js-KomponentenbibliothekSchreibt uns!Schickt uns eure Themenwünsche und euer Feedback.podcast@programmier.barFolgt uns!Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen.TwitterInstagramFacebookBesucht uns!Erfahrt hier, wann das nächste Meetup in unserem Office in Bad Nauheim stattfindet.MeetupMusik:
undefined
Dec 20, 2019 • 1h 13min

Folge 45 - Glühwein und zu viele Jingles

Wir wünschen euch fröhliche Feiertage! Nehmt euch einen Glühwein oder Kinderpunsch und lehnt euch zurück, während ihr unserer letzten Episode des Jahrzehnts lauscht. Wir blicken zurück und erzählen euch, welche Programmier-Projekte wir in unserer Freizeit verfolgen und welche Erfahrungen wir in Vergangenheit dabei sammeln konnten.Dennis berichtet, wie er eine Website und das Warenwirtschaftssystem eines Weltladens eingerichtet hat. Sebi nimmt euch in die Welt des Theaters mit und verrät, wie er ein Ticket-Buchungssystem für den Theaterverein Assenheim programmierte. Jojo spricht über die Website des Naturheilvereins und geht dabei auf Cockpit, Nextcloud und Only Office ein. Und Fabi hat nicht nur eine Website für seine Band gezaubert, die mit Stripe und Paypal gespickt war, sondern auch ein automatisiertes System zur Band-Bewerbung. Kommt gut ins neue Jahr und begleitet uns ins nächste Jahrzehnt! Wir haben 2020 aufregende Dinge für euch geplant. Dranbleiben lohnt sich! Picks of the Day Jojo: Wichtel-o-Mat – Die Rettung für alle Weihnachtsgestressten!Sebi: ngrok – Macht euren lokalen Server im Internet bekannt wie ein bunter Hund.Fabi: Dokument-Management auf iOS mit der Document- und Scanner Pro App Schreibt uns! Schickt uns eure Themenwünsche und euer Feedback. podcast@programmier.bar Folgt uns! Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen. Twitter Instagram Facebook Besucht uns! Erfahrt hier, wann das nächste Meetup in unserem Office in Bad Nauheim stattfindet. Meetup Musik: Hanimo
undefined
Dec 13, 2019 • 1h 17min

Folge 44 - Preact hält Code klein

Wir haben Marvin Hagemeister zu Gast und sprechen mit ihm über das Frontend-Framework Preact. Die von ihm und seinem internationalen Team entworfene Open Source JavaScript-Bibliothek verwendet die gleiche API wie React.js und zeichnet sich durch seine schlanke Größe von maximal 3 kB aus. In dieser Folge erzählt uns Marvin, wie das überhaupt möglich ist und erklärt, wie er es schafft, schnell und problemlos Abschnitte seines Codes zu löschen. Außerdem verrät er uns, wie es das Remote-Team von Preact meistert, sich über mehrere Landesgrenzen hinweg zu synchronisieren und gemeinsam an einem Strang zu ziehen.Dass Marvin jede Zeile seines Codes auswendig kennt, hat er am 12. Dezember 2019 auch in seinem Vortrag "The Art of Deleting Code" in unserem Büro in Bad Nauheim unter Beweis gestellt.Picks of the DayDennis: Loopback – ein virtuelles Audio InterfaceFabi: console.re – die Remote Javascript ConsoleMarvin: htm – rapid prototyping für React, Angular etc.Sebi: Unicode-Tastatur – für alle Unicode-Freaks unter euch, die häufig Sonderzeichen brauchen und jeden Code auswendig können.Schreibt uns!Schickt uns eure Themenwünsche und euer Feedback.podcast@programmier.barFolgt uns!Bleibt auf dem Laufenden über zukünftige Folgen und Meetups und beteiligt euch an Community-Diskussionen.TwitterInstagramFacebookBesucht uns!Erfahrt hier, wann das nächste Meetup in unserem Office in Bad Nauheim stattfindet.MeetupMusik: Hanimo

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