Einblicke hinter die Kulissen von bewertungsgetriebener App Entwicklung und Apples ML Core Framework

Shownotes

In dem Gespräch diskutieren der YouTuber und IOS Entwickler Kevin Chromik und Janis über Kevins Entwicklungsarbeit bei seinem Arbeitgeber WaipuTV, einschließlich der Zusammenarbeit zwischen iOS- und Backend-Teams. Es gibt auch einen Ausflug in die Implementierung von KI-Use Cases wie Bilderkennung auf iOS-Geräten mithilfe von Apple's ML Core Framework. Sie tauschen auch persönliche Erfahrungen aus, darunter Herausforderungen bei der Arbeit mit einem kleinen Team und dem Umgang mit Fehlern.

Schaut gerne bei Kevin Chromik vorbei:
https://www.youtube.com/@KevinChromik
https://www.linkedin.com/in/kevinchromik/

Transkript anzeigen

Janis (00:00.53)

Nee, ich dachte, wir fangen schon früher an, dann können wir auch länger machen. Ach so. Ja, ich dachte, das ist pure Nächstenliebe. Nee, alles gut.

Kevin (00:04.302)

Ich musste früher anfangen, nicht damit ich mehr Zeit habe, sondern weil wir dann zum Frühstücken gehen. Ich habe ja gewusst, wir werden am Anfang ein bisschen quatschen und so weiter. Ich glaube, um 10.30 Uhr haben wir die Reservierung.

Janis (00:19.122)

Okay, dann geht's gleich frühstücken. Aber alles gut, wir starten einfach mit dem Podcast. Wir haben einen Gast im Alienauten Podcast. Das ist quasi die zweite Premiere. Der zweite Gast insgesamt momentan, Kevin Kromig. Hallöchen. Servus aus München.

Kevin (00:34.062)

Servus aus München! Danke für die Einladung!

Janis (00:37.618)

Super gerne, danke fürs Erscheinen. Und ich kann jetzt sagen, eigentlich kann es ab heute nur noch bergab gehen. Wir haben quasi den ersten Star bei uns im Podcast, will ich behaupten. Du begeisterst monatlich tausende Zuschauer. Auch das kann ich so sagen. Willst du dich mal kurz vorstellen?

Kevin (00:55.438)

Ja, also ich bin Kevin Gromig für die Leute, die mich nicht kennen. Ich bin Software Entwickler. Also ich mache YouTube nur nebenbei. Mache das jetzt schon seit 10 Jahren. Hauptsächlich im iOS Bereich. Also ich bin App Entwickler bei verschiedenen Unternehmen, aber immer bei Product Companies und genau aktuell arbeite ich bei Wipo TV an der Apple Plattform, also iPhone, iPad, Apple TV, also alles, was irgendwie mit.

.. Apps bespielt werden kann, machen wir. Und genau, ich habe vor, weiß gar nicht, fünf Jahren oder so... .. habe ich mein erstes Video auf YouTube hochgeladen. Und genau, und habe seitdem eigentlich nicht mehr aufgehört. Also geht es eigentlich auch darum, ich spreche halt darüber,... .. wie die Softwareentwicklung ist. Ich habe halt Bock, die Leute dazu zu begeistern,... .. einen Einstieg in die IT zu machen,... .. ob jetzt mit Studium Quereinstieg oder selbst beigebracht oder so.

Wenn man damit auch keine Karriere macht, macht es auch einfach Spaß, irgendwas zu programmieren. Und dafür versuche ich die Leute zu begeistern.

Janis (01:54.866)

schaffst du auf jeden Fall, will ich behaupten. Also dir ist es wahrscheinlich gar nicht bewusst, aber du spielst eine signifikante Rolle in meinem Leben an zwei Stellen. Die erste Stelle ist, an zwei Stellen, pass auf, die erste ist eine Live Du hast irgendwann mal dein Dest-Setup gezeigt und da war ein Tipp dabei und...

Kevin (02:04.846)

an zwei Stellen.

Janis (02:18.45)

Der hat, das war mind blowing, will ich behaupten. Ich bin direkt danach zum Baumarkt gegangen und habe mir ein Verlängerungskabel geholt. Quasi ein einzelnes Kabel, welches auf meinem Schreibtisch liegt, wo ich meine Kopfhörer zwischendurch dran einstöpseln kann, wo ich meine Tastatur dran anstöpseln kann. Ja, also man hat ja immer das Problem, dass man immer genau ein Gerät irgendwie zwischendurch mal laden muss. Ja, und damit ich mir nicht immer ein Kabel ziehen muss,

Kevin (02:21.774)

Oh ja.

Kevin (02:43.118)

Ja, ja.

Janis (02:48.404)

eine Verlängerungsschnur geholt und der Tipp kommt tatsächlich von dir. Ich weiß nicht, ob du es selbst noch nutzt, aber ich nutze es und ich bin begeistert. Ne, das ist tatsächlich ein Stromkabel. Ich kann es dir jetzt gerade nicht zeigen.

Kevin (02:55.118)

Ist das ein einfaches USB-C Kabel oder?

Kevin (03:01.838)

Ach so, ja, das Stromkabel habe ich jetzt tatsächlich ersetzt. Weil die meisten Geräte, die ich auflade, sind ja tatsächlich USB-C-Geräte. Und gerade so was wie die Maus und Tastatur habe ich es nochmal auf ein anderes Level gebracht. Ich weiß nicht, wie gut man das sehen kann. Ich habe mir hier so ein MagSafe-Ding gekauft.

Janis (03:06.226)

Ja?

Kevin (03:19.214)

USB-C. Davon habe ich jetzt ein paar, die habe ich in so ein paar Geräte reingesteckt, die halt immer hier liegen. Und genau, wenn ich dann mal sehe, okay, da ist nicht mehr so viel Akku drin, dann habe ich hier einfach ein Kabel, das liegt an meinem Schreibtisch und dann muss ich das nicht mal irgendwie so reinfummeln, sondern das geht einfach magnetisch an meine Tastatur, dann an die Maus, da habe ich es auch dran.

Janis (03:39.25)

Ja, das ist nicht verkehrt. Den Trick werde ich mir aber nicht abschauen. Da bin ich noch nicht fancy genug für ausgestattet. Ist aber auch nicht schlimm. Der zweite Tipp, den du mir gegeben hast, ohne es zu wissen. Du siehst ja im Hintergrund so einen Stuhl, ne?

Kevin (03:55.246)

Ah, das ist der Steelcase Stuhl.

Janis (03:57.138)

Das ist der SteelCase-Stuhl, genau, den hast du empfohlen. Den habe ich nicht unbedingt speziell nach deiner Empfehlung geholt, das muss ich dazu sagen.

Es war eher so, dass ich so einen alten Chefsessel hatte. Und der ist irgendwann durchgesessen gewesen. Die sind zwar im ersten Moment sehr gemütlich und sehr bequem, aber wenn man mal länger darauf arbeitet, dann ranzen die sich schon ganz gut ab. Und der hat 5-6 Jahre gehalten und dann war der einfach durch. Und dann kam so der Moment, was für einen Stuhl hole ich mir jetzt eigentlich als nächstes. Und...

Kevin (04:09.07)

Mhm.

Kevin (04:19.822)

Mhm.

Janis (04:29.49)

Dann guckt man sich so ein paar Stühle an, darunter auch das Dealcase, den du mal empfohlen hast. Und dann darf die Freundin auch mitentscheiden, welchen sie am schönsten findet. Und da hatte...

Kevin (04:38.126)

Das war natürlich bei mir auch ein Punkt, weil meine Frau, die hat auch gestern gesagt, stell auf gar keinen Fall so einen hässlichen Stuhl bei uns, weil damals hab ich noch zu Hause gearbeitet und ich soll ihn auf keinen Fall dort reinstellen.

Janis (04:48.37)

Ja.

Genau, so lief das bei mir auch. Und dann gab es noch die Kostenfrage. Und bei mir war das Gute.

Ich arbeite überwiegend im Homeoffice und wir bei uns bei der Arbeit haben kein ganz klares Agreement, was das Homeoffice-Budget eigentlich angeht. Das bedeutet, ich habe mal gesagt, so, hey mal, Chef, Alex, ich brauche einen neuen Stuhl, was willst du mir denn da dazu tun? Und die Frage war nur so, ja, was für einen Stuhl willst du denn haben?

Kevin (05:09.166)

Mhm.

Janis (05:22.61)

Da hab ich dir mal so einen Link geschickt. Und die zweite Frage war, hast du auch eine Filiate-Link, wo der da ein bisschen günstiger wäre? Und es kann sein, dass da wirklich dein Link im Spiel war. Ja.

Kevin (05:29.614)

hast du meinen Link benutzt. Ich weiß gar nicht, also der Link an sich, ich glaube da, also da bekommt man glaube ich den Rabatt gar nicht, sondern man muss glaube ich einen Gutscheincode an. Aber ja, also auf jeden Fall, also schon guten Rabatt, den man da bekommt, also kann ich mich noch dran erinnern.

Janis (05:47.122)

Ja, ich weiß nicht, ob ich den damals gekriegt habe oder ob ich den durchreichen konnte, aber das war auf jeden Fall eine sehr glückliche Fügung. Und da muss ich sagen, ich muss mich jetzt einmal, ich hab die Chance, ich kann mich nicht nur in den Kommentaren bei dir bedanken, sondern auch ganz offiziell. Das sind zwei sehr lebensbereichernde Umstände. Also insofern klare Empfehlung an deinen YouTube-Channel und ein Riesendankeschön für, ja doch, diese beiden, eine große Sache, eine Kleinigkeit.

Kevin (06:14.734)

Falls ich hab vor zwei Tagen ein neues Video raus gemacht, da hab ich eine Room Tour gemacht. Und dort sieht man mein ganzes Setup. Also da geh ich mal durch meinen ganzen Raum durch und alles was man so sieht.

Janis (06:20.562)

Hm?

Kevin (06:27.342)

erkläre ich, wieso ich das und das habe. Vielleicht kommt da noch ein anderer Tipp. Im Prinzip ist es ja nie fertig. So ein Setup ist ja immer so eine Never-Ending-Story, so eine ewige Baustelle. Dann sieht man irgendwo was anderes und denkt sich, das könnte ich bei mir auch machen, dann baut man wieder alles um. Und so geht es schon seit Jahren so. Es ist halt immer so eine kleine Selbstoptimierung.

Janis (06:46.258)

Ja, die Kabelfächer, die hole ich mir auch. Aber nicht speziell wegen deines Videos. Mir fällt es gerade nur ein, dass du die in den Schubladen hast, diese Einlegeböden. Ich habe mir die letzten Tage sehr viel Productivity Setups fürs Büro angeschaut und da ist das sehr, sehr oft bei. Aber ich könnte jetzt schammernd lügen und sagen, die habe ich aus deinem Video. Ich werde jetzt heute nach Ikea fahren und mir die Dinger kaufen. Das wird tatsächlich auch der Fall sein. Ich bin heute bei Ikea und werde genau das tun.

Kevin (06:59.854)

Mhm.

Kevin (07:09.774)

Ja.

Janis (07:16.228)

Aber ja, auch das habe ich gesehen mit großer Freude. Pass auf, das Thema heute, da geht es so ein bisschen in deine Welt, die Appentwicklung. Ursprünglich hatte ich was ganz anderes in Planung, im Kopf. Da ist mir aber aufgefallen, ich habe viel zu wenig Ahnung von der Appentwicklung und wie es da eigentlich läuft.

Kevin (07:29.518)

Mhm.

Janis (07:35.794)

Und du darfst mich jetzt heute mal aufschlauen. Und ich bedanke mich herzlich dafür, dass du es tust. Und wir reden einfach erst mal so ein bisschen über Bewertungen und schauen dann, wohin uns das Gespräch führt. Vielleicht einmal ganz allgemein erst mal für dich als YouTuber und danach als App-Entwickler. Welche Rolle spielen eigentlich Bewertungen oder geschriebenes Feedback für dich in deinem YouTube Alltag?

Kevin (08:02.894)

Ja, eine große Rolle. Also im Prinzip, jeder YouTuber, der sagt, ah, die Likes sind mir egal, die Abonnenten, also die Abonnentenzahl ist mir egal und was die Leute schreiben ist mir egal. Das ist kompletter Schwassinn. Natürlich ist es wichtig, also sowohl das positive als auch das negative Feedback. Also wenn ich ein Video rausbringe und die Leute schreiben drunter so, hey, voll cool, das hat mir geholfen.

voll die Bereicherung, also da kann ich was mitnehmen, da habe ich was gelernt. Dann, da, da, da, damit habe ich ja angefangen. Also ich habe mir mit Tutorials angefangen und wenn die Leute dann geschrieben haben, so hey cooles Tutorial hat mir, ich habe viel gelernt, dann habe ich ja, dann habe ich ja was richtig gemacht. Andersrum natürlich auch wenn ein negativer Kommentar kommt, dann wiegt der in der Regel mehr als positive Kommentare, also es ist immer so. Also

Die beschäftigen einen dann schon ein bisschen mehr. Da kommt es natürlich auch immer darauf an, was für Kommtage. Also ich bin zum Glück von Hate verschont. Also ich weiß noch nicht, ob die ITler da einfach ein bisschen humaner unterwegs sind, obwohl es da natürlich auch sehr viele...

Ja, Meinungen geht. Also wenn ich ein Video mache, ja, ich finde... .. native iOS-Entwicklungen... .. gefällt mir besser als jetzt so was wie Flutter oder React Native. Da kommen dann viele Leute, die... .. irgendwas anderes erzählen. Da gibt es immer viele Meinungen. Oder Gehälter und so weiter. Da gibt es dann halt auch viele Meinungen. Oh, zieh doch irgendwo anders hin. Oder das ist ja... .. Schweinerei, wie viel man in der IT nur verdient. Das ist ja viel zu wenig. Woanders verdient man viel mehr. Oder als Freelancer verdient man viel mehr.

Und alles, was du erzählst, ist Quatsch. Also da muss man halt immer ein bisschen abwägen. Aber es ist natürlich schon wichtig, was die Leute schreiben, weil im Prinzip... .. die Community steuert ja auch ein bisschen, wie der Kanal sich entwickelt. Also wenn ich ein Video zu einem Thema mache und... .. weil ich irgendwas Neues ausprobiert habe, weil ich mache ja auch Themen, die mich alle interessieren. Also jedes Video, da habe ich ja Lust drauf. Und wenn dann Leute sagen so, das hat mir richtig gut gefallen und die Aufrufe... .. sind überproportional.

Janis (10:02.13)

Hm.

Kevin (10:11.406)

hoch, dann wird die Wahrscheinlichkeit auch größer sein, dass ich in der Zukunft mehr solche Sachen mache. Weil wenn ich dann sehe, ok, da ist ein höheres Engagement, die Leute feiern den Content, dann mache ich natürlich auch mehr davon.

Janis (10:26.13)

Und wie läuft das mit den Kommentaren ab? Also hast du schon so viele Kommentare unter deinen Videos, dass du da irgendwelche Clustering-Tools nutzen musst oder liest du die alle noch und hast die im Kopf Schrägstrich, hast eine Liste, die du führst? Wie kann ich dir das vorstellen?

Kevin (10:35.374)

Nein. Ich li...

Kevin (10:41.23)

Ich habe tatsächlich eine bekommen, also so viele Kommentare sind es nicht. Also ich kann ja mal reinschauen. Also ich habe diese YouTube Studio App, das ist halt so die, wo die ganzen Konten so weiter managen kann. Ich habe pro Video es kommt halt drauf an, so 50 60 Kommentare oder so. Da klar, wenn ich über Gehälter spreche, dann in dem Video waren es mal 180 Kommentare.

Also, aber es ist so, dass ich für jeden Kommentar bekomme, bekomme ich tatsächlich eine Push Habe ich noch nicht ausgestellt. Also, und das habe ich nicht mal bei Instagram. Genau, ich bekomme die in Echtzeit mit. Und ich lese mir auch jeden Kommentar durch. Ich beantworte nicht jeden Kommentar, aber ich lese mir wirklich jeden durch. Weil bei manchen Sachen weiß ich halt noch nicht, was ich schreiben soll.

Janis (11:11.922)

Oh! Und dann liest du sie quasi in Echtzeit mit.

Janis (11:22.546)

Okay und

Janis (11:26.962)

Und dann behältst du die quasi mehr oder weniger im Kopf, oder ist es dann so, dass du versuchst, deine Kommentare in irgendeiner Weise zu klustern, um sie zu sortieren? Gar nicht.

Kevin (11:37.742)

Nein, gar nicht. Ich lese mir die einfach durch, ganz wert, wertefrei. Und, genau. Nein, nein, nein, so viele sind es ja nicht. Also ich versuche ja auch, die meisten Kommentare zu beantworten, wo es halt geht, oder irgendwie so ein Herz dran zu geben. Das mache ich ja schon, weil ich denke mir, wenn ich einen Aufruf in einem Video mache, schreibt sie in die Kommentare, und dann reage ich nicht auf die Kommentare. Das ist halt auch ein bisschen so weird.

Janis (11:42.578)

Okay. Machs noch keine Raketenwissenschaft draus. Okay.

Janis (11:52.178)

Ja.

Kevin (12:05.422)

Ich will ja auch, dass die Leute... Das ist ja auch das Problem, dass so eine Kommunikation auf YouTube ist ja eher so... So eine Einwegkommunikation. Die Leute haben ja auch das Gefühl, dass sie mich kennen.

Janis (12:17.714)

Stimmt, so ein bisschen auf jeden Fall.

Kevin (12:18.67)

Und es ist ja schon ein paar Mal natürlich vorgekommen, dass ich irgendwie Leute in irgendwelchen Situationen getroffen habe, die meine Videos auch schauen.

Kevin (12:30.062)

Und die geben einem das Gefühl, ich kenne dich und so weiter. Aber es ist komisch, weil ich keine Ahnung habe, wer die Leute sind. Und...

Janis (12:39.794)

Du bist noch nicht drin in der Rolle als Star, ja?

Kevin (12:42.446)

Ja gut, das sagen wir, was ich nicht sagen würde. Also es passiert ja nicht so, dass ich nicht mehr durch die Straßen gehen kann. Also die IT-ler sind wahrscheinlich eh dann vor ihren Computern zu Hause. Die sind dann vielleicht nicht... Nein. Genau, aber...

Janis (12:47.57)

Mmh.

Janis (12:51.89)

Autogramme auf Tastaturen musstest du noch keine geben, oder auf Mäuse.

Kevin (12:57.518)

Ich versuche natürlich dann diese Einwegkommunikation noch mal ein bisschen zu verbessern. Ich habe eine Discord-Community, das sind ja auch so dreieinhalbtausend Leute. Und dort lese ich auch viel durch und schreibe selbst irgendwie Nachrichten rein, damit die Leute sich auch ein bisschen vernetzen können.

Also wenn ich natürlich Tipps gebe, wie versucht ihr ein Projekt vielleicht irgendwie mit anderen Leuten zu machen, damit ihr so einen realistischen Einblick bekommt, wie so eine Arbeit als bezahlter Softwareentwickler aussieht, dann tun sich die meisten Leute halt auch schwer, jemanden zu finden, um daran zu arbeiten. Deswegen habe ich halt gedacht, irgendwann dann versuche ich denen halt auch noch eine Plattform zu bieten, wie sie sich vernetzen können. Kostet ja nichts, außer halt Zeit. Aber da habe ich ein nettes Moderatoren-Team, die das...

Janis (13:34.674)

Hm.

Janis (13:41.65)

Ja.

Kevin (13:46.35)

die das alle freiwillig machen.

Janis (13:48.946)

Ja, das ist am besten. Aber Apropos bezahlter Softwareentwickler. Jetzt haben wir so ein bisschen über YouTube geredet. Das ist ja so dein Ding. Wie funktioniert das denn in der Appentwicklung eigentlich? Also gleiche Frage mit den Bewertungen anfangs gestellt. Also welche Rolle spielen Bewertungen und Feedback in der Appentwicklung?

Kevin (14:06.51)

Ja, also durch das, dass so eine App-Entwicklung, das ist ja im Prinzip der Klein, der was bei den Leuten dann auf dem Handy drauf liegt, das ist ja so ein Team-Ergebnis. Das heißt, da ist ja nicht nur die App, sondern da ist ja auch ein Backendsystem, das ist die ganze Customer Care, wenn irgendwas nicht funktioniert, wie die funktionieren, das ist ja so eine ganze Experience, die die Leute bekommen. Dort würde ich sagen, lese ich mir die Bewertung eher pragmatisch durch.

Also Erde die negativen Sachen, also das positive Feedback, das bekommen dann unsere Product Manager und so weiter, füllen dann die raus um.

Janis (14:42.674)

Du liest tatsächlich das Feedback selbst durch im App Store regelmäßig? Okay.

Kevin (14:47.342)

Also wir haben tatsächlich bei uns in Slack eine Automatisierung. Da bekommen wir dann einmal am Tag die Bewertungen. Die werden gegrappt und dann dort reingeworfen. Und dort aus den verschiedenen App-Stores für die verschiedenen Plattformen. Ich lese mir dann natürlich nur das durch, was für meine Plattform relevant ist. Weil sonst würde ich ja... Ich meine, da kommen ja so viele Bewertungen rein. Das ist halt für mich nicht relevant.

Janis (14:58.258)

dann aus verschiedenen Appstores.

Kevin (15:13.518)

Und gerade wenn wir irgendwie ein neues Feature und Redesign oder sowas released haben, dann schaue ich da schon mal rein. Und aber im Prinzip ist es ja eh so, dass wenn da mal irgendwas Negatives reinkommt, dann und es wirklich ein Problem ist, dann geht es sowieso über Customer Care rein.

Janis (15:19.762)

Hm.

Kevin (15:35.726)

Also die Leute schreiben dann eine E-Mail. Das geht in unser Customer Care Team. Und wenn die nicht weiterhelfen können, weil es vielleicht... .. wirklich ein technisches Problem ist,... .. dann geben die das an Second Level, also an uns direkt weiter. Und dann haben wir nicht direkt Kontakt mit den Kunden,... .. aber wir sind in dem Verlauf drin,... .. die ganzen Nachrichten und so weiter. Wir können das dann analysieren. Wir können unser Feedback geben. Okay, das ist kein Bug, probiert das und das und das mal aus. Oder...

Janis (15:36.146)

Okay.

Kevin (16:01.742)

.. oder ja, haben wir auf dem Schirm,... .. werden wir fixen... .. und... .. genau. Das Ticket geht dann zurück an Customer Care... .. und Customer Care kommuniziert das dann... .. an die Kunden weiter.

Janis (16:11.89)

Ja gut, das ist dann so der klassische Bugfall. Wie ist das denn mit Wünschen nach Features? Werden die zur Kenntnis genommen oder wie kann ich mir den Prozess vorstellen?

Kevin (16:21.326)

Ja, natürlich. Also es gibt natürlich auch Leute, die schreiben dann halt irgendwie Wünsche oder haben eben einen Bug und dann schreiben sie in der gleichen E-Mail noch einen Wunsch rein. Also ich notiere mir das dann oft, weil wenn ich denke, okay, das ist sinnvoll, ich notiere mir dann nicht alles. Das ist ja auch nicht meine Aufgabe oder meine Hauptaufgabe als Entwickler, da neue Features sich selbst auszudenken. Das macht dann eher das Prod Aber...

Janis (16:46.034)

Ja.

Kevin (16:47.886)

Aber es ist auch nicht so, dass wir einfach nur die Features über den Zaun geworfen bekommen. Also wir entwickeln auch die Features gemeinsam mit und unsere Ideen gehen da auch rein, weil wir die Plattform halt auch sehr gut kennen als Entwickler. Das können wir auch machen, weil unser Team auch sehr klein ist. Also wir haben ja...

Wir sind ja insgesamt auf jeder Plattform, die irgendwie streamen kann, vertreten. Und wir haben ja in dem iOS-Apple-Team die iPhone-App, eine iPad-App, also die hat ja auch wirklich ein anderes Design. Also das sieht nochmal anders aus. Apple TV haben wir als Big Screen, haben wir auch als Plattform. Und dann haben wir ja jede App, haben wir ja zweimal. Wir haben ja die WIPO-App und dann haben wir eine White Label-App, O2 TV.

Also wenn du O2 dir einen Vertrag klickst, also so ein Smartphone Vertrag, dann hast du oft die Option, so hier noch TV mit dazu buchen. Und dann bekommst du Vaipu. Das ist halt einfach nur mit O2 gebrandet. Also das ist auch kein Geheimnis, das steht auch da. O2 TV powered by Vaipu TV.

Janis (17:32.21)

Okay.

Janis (17:50.226)

Okay, ich muss mal in meinen Vertrag schauen, muss ich ehrlich sagen. Ich bin bei O2, aber ich glaube, ich hab's nicht.

Kevin (17:54.062)

Ja, kannst ja mal gucken, ob es sich für dich lohnt. Genau. Und wir sind nur zu zweit im iOS-Team. Genau, wir sind nur zwei Entwickler. Aktuell.

Janis (18:01.138)

als ganzes iOS Team. Also für das iPad, iPhone und Apple TV. Und auch die Mac Devices. Also ich habe jetzt hier ein M2 Mac neben mir.

Kevin (18:10.382)

Genau. Für alles.

Kevin (18:17.678)

Ja, genau. Da läuft ja im Prinzip die iPad-App drauf. Die du aber skalieren kannst. Ja, ist schon knackig, aber ja, also wir waren eine ganze Zeit lang zu dritt, aber ein Kollege hat uns jetzt leider verlassen nach sieben Jahren. Und genau, aber eine dritte Person, die wird doch bald beginnen. Aber wir werden das auch weiterhin wahrscheinlich dann in der Zukunft nur zu dritt machen.

Janis (18:21.906)

So was kann man mit zwei Leuten machen. Verrückt.

Kevin (18:44.046)

Das funktioniert auch ganz gut. Deswegen sind wir ja relativ schnell, weil wir wenig Abstimmungen brauchen. Und das heißt, wenn wir Feature-Ideen haben, dann müssen die nicht irgendwie im großen iOS-Team stundenlang diskutiert werden, weil 1000 Meinung, sondern wir geben unsere Ideen rein. Also was wir halt irgendwie über Customer Care und so weiter bekommen. Das bekommen wir ja nicht nur wir. Also das geht ja dann auch direkt an Produktmanagement. Also Produktmanagement und Customer Care, die arbeiten ja auch, weil Customer Care ist halt wichtig, weil die praktisch die direkte Schnittstelle zu den Kunden.

Janis (19:03.474)

Ja.

Kevin (19:13.934)

sind und wenn dort vermehrt Feedback zu einer bestimmten Funktionalität reinkommt, dann geben die das auch direkt an Produkt weiter.

Janis (19:24.626)

Okay, dann wird es quasi so Hand in Hand entwickelt und ich meine, ihr habt ja jetzt auch eine Android-App und ich nehme an, dass die iOS-Features, die ihr da entwickelt, bestenfalls auch in die Android-App integriert werden und ihr nicht auf euren Systemen isoliert entwickelt. Das heißt, irgendwo findet noch eine Absprache mit anderen Teams statt dann.

Kevin (19:38.926)

Genau.

Kevin (19:43.662)

Ja, genau. Wir haben jetzt keine strikten Feature-Teams. Wir arbeiten jetzt mittlerweile viel enger mit Android zusammen, weil wir halt auch versuchen, die gleichen Features gleichzeitig zu implementieren. Aber es ist jetzt nicht so, dass Funktionen, Redesigns und so weiter immer auf beiden Plattformen gleichzeitig veröffentlicht werden. Also das ist gar nicht der Fall. Da kann es schon mal ein paar Monate irgendwie Unterschied geben zwischen Releases.

Janis (20:08.178)

und

Janis (20:13.714)

Dann ist das eine Team eben schneller als das andere. Oder?

Kevin (20:16.206)

Genau, aber das Gute ist halt, dass wir auch von den Learnings profitieren. Das heißt, wenn Android schon an einer Funktion arbeitet und ein großes Refactoring macht, was auf allen Clients gemacht werden muss, dann arbeiten wir zum Beispiel eng in Abstimmung mit unserem Backendsystem.

weil vielleicht die API sich geändert hat und dort vielleicht noch ein paar Sachen irgendwie auffallen, dann müssen wir das nicht alle gleichzeitig dem Pain durchmachen, sondern man macht halt Android dem Pain durch oder halt iOS und das ganze Wissen geht dann halt an die anderen Teams weiter. Also das ist natürlich auch ein Vorteil.

Janis (20:41.394)

Hm.

Janis (20:51.218)

Und wie kann ich mir das jetzt vorstellen? Nehmen wir mal an, ja, released ein Feature und die User sind nicht so happy damit. Gibt es dann, gibt es dann irgendwelche Krisen-Meetings zwischendurch mal? Hastest du sowas schon? Kannst du dich an irgendwas in der Richtung erinnern?

Kevin (21:05.23)

Ja, so Krisenmeetings jetzt nicht, aber... .. ist natürlich, also wenn FeaturemW... .. entwickelt wird, dann... .. gibt es natürlich auch innerhalb der Teams,... .. gibt es natürlich immer Diskussionen. Also, dass wir vielleicht irgendwie... .. anderer Meinung sind, wie Produkt... .. oder Design oder so. Aber im Endeffekt... .. muss man sich ja für was auf was einigen... .. und bringt das raus. Und... .. ja, dann... .. horchen wir halt einfach, was die Leute sagen. Wir haben ja auch nicht wenig Nutzer. Und... .. klar, es gibt immer Leute, die...

die sich gerade bei einem Redesign, wo sich Leute halt beschweren, weil sie halt Sachen nicht finden. Man muss natürlich auch dazu sagen, dass unsere Kundschaft im Durchschnittsalter eher höher ist. Also sie sind eher älter als jetzt der typische Instagram Nutzer. Weißte? Und...

Janis (21:53.65)

Habt ihr da so ein Board? Kann ich mir das so vorstellen, dass ihr so ein demografisches Board habt, wo ihr alle drauf guckt und dann eure Nutzer kennt oder...

Kevin (22:02.094)

Also ich schaue da jetzt nicht drauf, aber ich bin mir sicher, dass wir auch irgendwie Informationen haben. Also ich weiß jetzt nicht, wie weit die Informationen jetzt, also wie tief die sind. Ich weiß es nicht irgendwie alt, aber man sieht halt auch einfach die Nachrichten, die man so bekommt. Also da... Ja, genau. Also man weiß halt auch einfach, dass...

Janis (22:21.938)

ganze Sätze und so.

Kevin (22:27.95)

gehen wir davon aus, dass unser Marketing-Team unsere Zielgruppe auch gut kennt. Und es ist ja auch so, dass dieses lineare Fernsehen ist ja gerade bei der ganz jungen Zielgruppe nicht so vertreten wie bei älteren.

Ich weiß nicht, wie viele Leute, also junge Leute, noch viel Fernsehen schauen. Also schauen schon noch einige, aber in der Masse sind es ja eher die älteren Leute. Also die Netflix und Co, YouTube und so weiter ist dann vielleicht bei den jungen Leuten TikTok oder so. Also ich glaube, viele junge Leute können sich gar nicht mehr eine Stunde irgendwie auf den Film konzentrieren, sondern die swipeen halt nur noch von einem TikTok ins nächste.

Janis (23:06.386)

Bist du jung oder alt?

Kevin (23:08.75)

Ich bin 35, also ich fühle mich sehr jung.

Janis (23:10.29)

Also gezielt guckst du noch Fernsehen? Ich meine, okay, ist jetzt eine Frage, wenn du bei WaipuTV unter Umständen arbeitest, aber zu welcher der beiden Gruppen würdest du dich zählen?

Kevin (23:17.422)

Mhh...

Kevin (23:23.15)

Ja, also Fernsehen an sich muss ich ganz ehrlich sagen, schaue ich gar nicht so viel. Das liegt aber nicht daran, dass ich nicht gerne Fernsehen schaue, sondern daran, dass meine Frau und ich, wir unterhalten uns halt ausschließlich auf Englisch. Und wenn wir halt irgendwie deutsches Fernsehen anmachen, dann... Ja, ich weiß nicht, dann...

Das gefällt uns dann doch nicht so gut, deswegen schauen wir halt irgendwie Video on Demand an, wo wir halt die Tonspur auf Englisch umstellen können, dann schauen wir uns halt das an. Aber bei Linearfernsehen ist das halt nicht so einfach. Aber was wir machen, wir haben ja...

Das Schöne ist, wir haben eine Aufnahmefunktion auf der Plattform. Das heißt, du kannst dann halt auch ein Scheduling machen oder halt sagen, die Sendung möchtest du jetzt aufnehmen oder jede Folge dieser Serie möchte ich aufnehmen und kannst es dann später anschauen. Und wir schauen zum Beispiel gerne Hülle der Löwen an. Wir schauen es uns aber nicht live an, weil, wie gesagt, wir haben Kind und das ist man halt nicht immer so flexibel. Und wenn es dann halt läuft, dann ist es halt ganz gut, wenn man das einfach aufgenommen hat. Und dann schauen wir uns das an, wenn wir dann Zeit haben.

Janis (24:14.866)

Okay, ja.

Janis (24:22.866)

Hm.

Janis (24:28.85)

Wir haben im Vorfeld schon darüber gesprochen, aber ich möchte jetzt mal eben einen Kollegen grüßen. Kevin, würdest du sagen, dass das letzte halbe Jahr das anstrengendste in deinem Leben war? Mit Kind?

Kevin (24:40.27)

Ich würde sagen, die letzten zehn Monate. Ja. Die letzten zehn Monate. Ich muss aber sagen, dass es einfacher wird. Aber es ist schon... Es gibt schon Zeiten, wo alles echt brutal... Aber deswegen, wenn man jungen Eltern zuhört, dann... Also, wenn du einen Kinderwunsch hast, dann frag nicht junge Eltern so, wie ist das? Weil wenn sie ehrlich sind, dann hast du danach keine Lust mehr auf ein Kind.

Janis (24:44.018)

Das... das... Okay.

Janis (24:53.234)

Ja, das ist jetzt...

Janis (24:57.554)

Hm.

Janis (25:03.73)

Okay, ja.

Janis (25:07.762)

Haha

Nee, ich muss auch eben einen Freund und Kollegen in die Pfanne hauen. Ich hoffe, er hört gerade auch mit seiner Frau zu. Weil der David, der hat gesagt, dass das letzte halbe Jahr und er hat einen Doktor in Physik in Regelstudienzeit gemacht. Aber er sagt trotzdem, dass das letzte halbe Jahr mit Kind das anstrengendste seines Lebens war. Aber ich finde es schön, dass du, Kevin, das jetzt auch so bestätigen kannst. Und gut, der Podcast ist jetzt auf Deutsch. Ich weiß nicht, ob du dir den mit deiner Frau anhörst und ob sie die gleiche Meinung hat wie du.

Kevin (25:37.102)

Ich weiß, dass sie die gleiche Meinung hat.

Janis (25:40.306)

Ja gut, vielleicht ist das auch ein offenes Geheimnis, so als Außenstehender ist das ja manchmal schwer.

Kevin (25:45.454)

Das ist ja auch in Ordnung, wenn man das offen zugibt. Ich meine, wem mache ich was vor? Also ich muss ja keinem was beweisen, wenn ich sage, dass es irgendwie... Keine Ahnung. Also wenn jemand einen Marathon läuft, dann ist es ja auch okay, wenn die Person dann am Ende sagt, ja, das war echt brutal anstrengend. Ist ja trotzdem eine gute Leistung, wenn man es durchgezogen hat.

Janis (26:04.178)

Stimmt. Nee, gut, das wollte ich nur mal kurz reingestreut haben. Es hat gerade gepasst. Du hast den Topf aufgemacht und ich hatte die Chance. Mal eine andere Frage zurück zum Thema. Wie gut verstehst du dich eigentlich oder ihr als App-Entwickler euch mit den Backend-Teams? Seid ihr da so Freunde, habt ihr da Rivalitäten? Wie kann ich mir das vorstellen? Macht das Backend-Team auch manchmal Mist, den ihr auspügeln müsst?

Kevin (26:27.662)

Ich würde es nicht sagen. Also ich würde sagen generell ist die Stimmung sehr gut. Also jetzt nicht nur bei der Firma, wo ich jetzt arbeite, also auch bei allen Firmen, wo ich bis jetzt gearbeitet habe. Weil im Prinzip, wenn man professionell arbeitet, dann ist es eigentlich völlig egal, werde, also wo der Fehler gemacht wurde. Weil die Kunden sind nicht interessiert. Wenn die App nicht funktioniert, ist es denen doch egal, ob das jetzt am kleinen, am Backend oder so was liegt. Für die ist das eine App, die laden sich runter, die verstehen halt...

Nur, okay, ich brauche für die App Internet und das war's. Aber was da im Hintergrund passiert, ist ja egal. Das ist ja das Gleiche, wenn du dir Netflix irgendwie anschaust und das setzt dich vor den Fernseher und dann läuft das Stream nicht. Dann du als...

als Techie, du weißt dann vielleicht, okay, ich gucke mal an meinem Router, vielleicht liegt es irgendwie am Internet. Ansonsten liegt es an der App, aber dann ist es dir ja egal, ob das jetzt an der App liegt oder am Backend oder so. Deswegen, Revalitäten würde ich da nicht sagen, dass es die gibt. Aber wir arbeiten schon sehr eng zusammen. Also gerade wenn es irgendwie ein Problem gibt oder wenn wir eine neue API designen, dann müssen wir natürlich uns dann halt überlegen, okay, welche...

Aufgaben liegen jetzt im Packend-Bereich, welche Aufgaben sollen jetzt im Frontend-Bereich liegen, weil App-Entwicklung ist ja im Prinzip Frontend. Also, ist ja, sagen wir mal, nicht das Gleiche wie Web-Frontend, aber es ist ja schon fast das Gleiche. Also im Prinzip ist es halt das, wo die Leute dann die Kleinstand benutzen. Aber es gibt natürlich immer so Kleinigkeiten. Ich meine, sowas wie, du bekommst immer eine Liste mit Daten vom Packend. Und dann ist halt die Frage...

Wo sollen die sortiert werden? Auf dem Client oder im Backend? Da gibt es dann halt immer die Diskussion. Ja, ist doch egal, wie die Daten ankommen, weil später möchtet ihr die vielleicht doch irgendwie anders anzeigen. Dann könnt ihr die auf dem Client, müsstet ihr die dann sowieso sortieren. Das sind halt solche Sachen. Oder welche Daten überhaupt kommen müssen, welche Daten sollen wir uns irgendwas an, an APIs zusammenziehen. Da ist natürlich dann, würde ich sagen, gibt es halt mehr Abstimmung. Aber ich würde es nicht sagen, dass es da irgendwie...

Janis (28:08.114)

Ja.

Kevin (28:34.606)

Beef zwischen denen, zwischen denen Abteilungen gibt. Also gar nicht. Aber ich würde sagen, wir arbeiten schon nicht sehr eng zusammen. Also wir sitzen jetzt nicht ständig zusammen und arbeiten an einer neuen Zeit, so wie wir jetzt aktuell arbeiten.

Janis (28:49.49)

Und nehmen wir mal an, also ihr als App-Entwickler rollt ja regelmäßig Sachen aus und das Backend separat auch. Wie oft kann ich, wie oft zerschießt das ein Backend Rollout erfahrungsgemäß bei dir, muss jetzt nicht nur dein aktuelles Projekt sein, kann auch alles Mögliche sein. Wie oft ist dir das schon passiert, dass die lieben Backend-Entwickler, Data Engineers und Data Scientisten euch die Features zerschießen? Kommt das vor?

Kevin (29:14.414)

Gar nicht so oft muss ich sagen, weil es ist halt auch die Aufgabe des Clients, solche Sachen abzudecken. Dass halt, wenn jetzt zum Beispiel irgendwie Daten fehlen, dass die App nicht komplett unbrauchbar wird. Dass wir halt eine ordentliche Fehlermeldung anzeigen zum Beispiel. Weißt du, dass wenn wir zum Beispiel irgendwie, keine Ahnung, sagen wir mal, wir bekommen, für das Profil laden wir den User.

User-Jason als Daten bekommen wir alles her. Dann müssen wir natürlich genau wissen, was sind jetzt optionale Daten, was sind jetzt nicht-optionale Daten und müssen das dann in der App richtig abbilden. Wenn dann aus einmal irgendein Geschlecht zum Beispiel, wir sagen, das ist jetzt nicht optional, man muss halt irgendwie angeben, zu welchem Geschlecht man gehört. Und dann ändert sich im Backend was.

Und man muss uns jetzt nicht mehr verpflichtend, das irgendwie anzugeben. Dann, das war jetzt bei meiner ersten Firma, wo ich gearbeitet habe, das ist halt eine Fitness App, da ist es halt relevant, anzugeben, zu welchem Geschlecht man gehört, weil es dann einfach den Algorithmus für die Trainingserstellung, für den Trainingsplan muss berücksichtigt werden. Da müssen wir natürlich dann trotzdem damit rechnen, dass manche.

Janis (30:18.482)

Ja, ist...

Kevin (30:35.822)

Informationen hat einfach fehlen und dann da muss die App halt trotzdem funktionieren und das Feld wird dann halt nicht angezeigt. Das sind halt so Kleinigkeiten, aber wenn man halt bei einem guten Design irgendwie aufpasst, dann sollten die meisten Fälle auch abgedeckt werden.

Janis (30:49.522)

Okay. Ja, das sind aber so Logikfälle. Das heißt, im Falle der Logik denkst du dann oder noch nicht mal Logikfälle. Das, was du jetzt beschreibst, ist ja mehr oder weniger, wie man Daten repräsentiert. Also welche Felder es gibt und wie man Sachen validiert. Aber es gibt ja auch Performance. Nehmen wir mal an, du willst irgendwelche Plots anzeigen und es dauert drei Minuten, bis sie erst mal angezeigt werden.

Und da stellt sich dann auch auf die Frage, wo geht eigentlich die Zeit verloren?

Janis (31:23.634)

Vielleicht welches Team musst du dann nachziehen? Kennst du solche Fälle? Und wenn ja, wie geht ihr damit um?

Kevin (31:32.686)

Also ja, bei TV-Streaming ist natürlich sehr viel mit Performance gearbeitet werden. Es ist ja ein bisschen komplexer als die Standard 0815-App, wo man Jason vom Backend bekommt, stellt die hübsch dar, macht irgendwas mit den Daten und schickt dann wieder irgendwie einen Request ans Backend.

Janis (31:41.522)

Ja.

Kevin (31:55.502)

Und wenn halt was nicht funktioniert, dann bekommst du halt einen Pop-up, ein Fehler ist aufgetreten, bitte nochmal probieren oder sowas. Ja, sagen wir so, da muss schon viel mehr auch mit Analytics gearbeitet werden, um halt auch irgendwelche Probleme zu identifizieren. Also wir haben ja auch Stre und so weiter, was man halt ein- und ausschalten kann. Das heißt, wenn sich ein Kunde beschwert, hey, bei mir zu Hause buffern die Streams zu lange.

Da müssen wir dann halt das Tracking aktivieren und müssen dann halt reinschauen, wie der Datendurchsatz usw. ist. Also da müssen wir dann schon ein bisschen genauer hinschauen und das dann auch ein bisschen komplexer zu debuggen. Weil das kann natürlich sein, weil unser Backendsystem ist ja nicht einfach nur Daten, also irgendwie JSON-Daten oder so. Da haben wir natürlich auch...

Aber gerade diese Streamsachen, das ist natürlich nochmal was anderes. Das ist ja eine riesen Infrastruktur. Und die Leute, die halt in diesem Videoteam arbeiten, die halt dafür zuständig sind, dass das Videosignal von den Satelliten dekodiert wird und dann in unser System eingespeist wird, das sind schon sehr, sehr fähige Leute. Also das kann es nicht...

jeder einfach mal so machen. Das heißt, wenn es dann da mal ein Problem gibt, dann ist es natürlich sehr hilfreich, dass man damit mit Profis zu tun hat.

Janis (33:26.13)

Das heißt für mich jetzt so, ihr könnt die Probleme schon relativ gut allokieren. Also auch so komplexe Probleme. Ihr wisst relativ früh schon, in welche Bereiche ihr reinschauen müsst. Ihr habt quasi, ich sag mal, ausreichend gemonitort, wenn ich das jetzt so richtig rausgehört hab.

Kevin (33:40.814)

Ja, aber es geht ja nicht anders. Also müssen wir, weil im Endeffekt, wenn halt jemand den... Also wir haben ja zum Beispiel... Unser größter Konkurrent ist ja nicht irgendwie ein anderer TV-S sondern das ist ja Kabel- und Sate

Weil die meisten Leute haben halt einfach noch so eine Box irgendwie unterm Fernseh stehen und bekommen halt dafür Fernsehen. Und da ist man halt gewohnt, dass man, wenn man umschaltet, dass es praktisch fast instant ist. Also du schaltest um und du hast sofort einen neuen Sender drauf. Bei uns ist es ja ein bisschen anders, da passiert ja ein bisschen was, ein bisschen mehr. Und das heißt, da ist es halt schon wichtig, dass... Also wenn die Umschaltzeiten mehr als ein paar Sekunden sind, dann ist es schon schlecht.

Also da müssen wir dann auch wirklich dran arbeiten und das ist halt auch wichtig, weil wir wollen den Leuten dann praktisch das gleiche, also mindestens das gleiche Erlebnis bieten, eher besser, weil wir halt durch das, dass wir halt so eine App-Plattform sind, können wir halt viel mehr Funktionen anbieten als jetzt so ein klassisches Kabelfernsehen.

Janis (34:29.105)

Ja.

Janis (34:50.002)

Das ist dann wahrscheinlich eine Metrik, die direkt erfasst wird, auf irgendeine Weise.

Kevin (34:53.902)

Genau, also wir tracken da Metrigen schon mit. Und da geht es dann auch gar nicht drum, so, wer hat jetzt irgendwie Bockmist verzopft, sondern wie können wir das Problem lösen? Und was wir auch machen, sind solche Post-Mortems. Das heißt, wenn jetzt irgendwie ein größeres auf guter, äh, nicht mal gut Deutsch, also wenn so ein größeres Fuck-Up passiert, dann...

geht es ja nicht darum, mit dem Finger zu zeigen, sondern wir müssen halt einfach herausfinden, wie können wir das in Zukunft besser machen. Wie können wir daraus lernen? Wird ein Postmortem geschrieben? Genau wie die ganze Kausalitätskette, wieso dieser Fehler aufgetreten ist, das wird festgehalten, damit das halt in Zukunft nicht mehr passiert.

Janis (35:32.21)

Ja.

Janis (35:37.042)

Wann war denn dein letztes Postmortem? Meins war letzte Woche.

Kevin (35:43.118)

Ja, also ich glaube Anfang des Jahres, da hatten wir was. Das hat jetzt nicht so viele Leute betroffen, aber wir haben halt unser ganzes Projekt ein bisschen hin und her geschoben, haben ein paar Sachen umbenannt und dann auf einer Plattform hat, gab es irgendwie so eine tote Verlinkung auf ein Framework, was jetzt wo anders lag und im Simulator.

Janis (35:47.794)

Ah, auch.

Janis (35:52.306)

Ja.

Kevin (36:10.638)

konnte das nicht irgendwie so einfach reproduziert werden, weil da irgendwie Sachen noch gecashed wurden, aber dann halt auf dem Client. Aber das hatte halt nur eine App in einer bestimmten Ausprägung betroffen, auf einer Plattform, die jetzt nicht die größte ist für uns. Deswegen haben wir halt, das ist halt das Problem, dass wir nur zu zweit sind. Wir können halt nicht alles testen. Und genau, und da ist es dann halt einfach passiert.

Janis (36:34.45)

Und dann ist sie, also da hatte die jetzt auch, ich sage mal, das Postmortem ist dann menschlich korrekt abgelaufen. Die Stimmung war wahrscheinlich, war sie angespannt in dem Fall schon oder war das

Kevin (36:49.55)

Ja, es war okay. Im Endeffekt kommuniziert man, wir sind da dran, wir machen das jetzt. Und da kommt dann auch keiner so, wie sieht es aus, wie sieht es aus, weil das hilft ja nicht. Wenn wir sagen, wir machen das jetzt, dann verstehen auch alle Leute, die arbeiten jetzt dran und sagen nicht einfach nur, nerv jetzt nicht. Die wissen ja, dass wir Profis sind an dem, was wir tun.

Janis (37:11.634)

Nee, ich finde es, ja.

Kevin (37:18.446)

Und die einzigen Leute in der Firma, die das fixen können, sind ja wir. Und wenn wir sagen, wir machen das jetzt, dann hilft es ja nicht, wenn dann andere Leute noch drum rumstehen und zugucken. Genau, also...

Janis (37:31.474)

Nee, das stimmt. Ich muss sagen, eigentlich war das ja meine ursprüngliche Themenidee, nicht speziell über Postmortems zu sprechen, sondern über Inzidenz, weil das für mich selbst ein sehr, sehr wichtiges Thema ist, auch die letzten Tage war. Nicht zuletzt, weil ich selbst ein, zwei Inzidenz erursacht haben könnte. Und für mich ist es irgendwie auch sehr befriedigend zu hören, dass es woanders auch genauso passiert.

Kevin (37:56.046)

Ja, ganz ehrlich, es war lustig. Ich weiß nicht, kennst du die YouTuber von Programmieren lernen? Yunus und Manu? Ja, also mit denen bin ich ganz gut... Ja, aber genau, also ich bin mit denen ganz gut befreundet. Also ich mach mit denen auch regelmäßig Sachen. Und wir haben so eine... Das war ganz lustig. Wir haben eine WhatsApp-Gruppe.

Janis (38:02.514)

Also nicht persönlich, aber ja.

Kevin (38:13.742)

wo wir uns abstimmen und so weiter. Und dann hat Yunus einen Screenshot gemacht von der WhatsApp-App, wo er halt irgendwie ein Bug war, ein bisschen ein UI-Bug. Dann hat er ihn in die Gruppe reingeschickt und hat gesagt, schau mal, sogar WhatsApp hat Bugs. Dann habe ich geantwortet, die kochen ja auch nur mit Wasser. Und es ist ja immer so. Also klar, bei manchen Apps oder so fällt es nicht so auf, aber...

Janis (38:14.13)

Hm.

Janis (38:31.058)

Stimmt, stimmt.

Kevin (38:39.79)

Aber ja, im Endeffekt sitzen überall Entwickler, wo Entwickler sitzen, werden halt auch Fehler gemacht. Also, ist ja völlig normal.

Janis (38:45.17)

Ja, bin ich ganz bei dir. Aber wie gesagt, für mich gerade beisahm für meine Seele. Ich habe da vielleicht auch ein, zwei Geschichten, die man so erzählen kann, die jetzt aber ein bisschen den Rahmen sprengen würden. Ich würde dir eine Abschlussfrage stellen, weil ich weiß, du bist zum Essen verabredet und ich will nicht, dass deine Frau böse auf dich ist, wenn du zu spät zum Frühstück erscheinst.

Kevin (39:03.118)

Ja.

Kevin (39:07.758)

Nein, nein, nein, die ist ganz verständnisvoll.

Janis (39:10.354)

Sehr gut. Eine letzte Frage, die mich interessiert. Wir machen ja mehr oder weniger einen Podcast mit KI-Themen auch. Das war jetzt nicht sehr KI-lastig, außer jetzt vielleicht ein, zwei Fragen Richtung Fragenclustering. Aber wo jetzt auch keine K-Means-Methoden gedroppt wurden oder sowas. Aber was mich mal interessieren würde, du bist ja iOS-Entwickler. Kannst du auf...

dem iOS Device schon KI-Use Cases implementieren, ohne ein Backend zu brauchen? Also, weiß nicht, so was wie Bilderkennung oder wie lineare Regression, Schrägstrich Vorhersagen. Hast du da schon Möglichkeiten? Kannst du das selbstständig als iOS Entwickler implementieren?

Kevin (39:52.142)

Ähm, ja, also Machine Learning. Also es gibt ML Core, Machine Learning Core, das ist so ein Framework von Apple. Da kannst du dann nativ solche Models einfach aufs Gerät in das Bundle reinlegen. Und kannst dann halt offline zum Beispiel Bilderkennung machen. Also da hab ich sogar mal ein Video gemacht, da hab ich mich mit Programmieren lernen, haben wir uns gebattled. Wer den besseren Pokedex programmiert? Web Frontend oder iOS?

oder halt native Mobile-Entwicklung. Und dann haben wir halt gesagt... Genau, den Hotdog, im Prinzip war das dort das Gleiche. Und dann haben wir halt gesagt, okay, so die Grundfunktion sind halt irgendwie Pokémon-Anzeigen in der Liste, du kannst suchen und kannst dann halt, wenn du auf den Pokémon draufklickst, hast du eine Detailansicht. Wir haben dann aber auch gesagt, okay, jeder muss noch einen Killer-Feature reinbringen.

Janis (40:22.482)

Ja.

Du hast nicht nur das gemacht, du hast auch einen Hotdog-Scanner gemacht.

Kevin (40:45.23)

Und mein Killerfeature war halt ein Machine Learning Model,... .. was Pokémons mit der Kamera halt dann halt erkennt. Das heißt, ich habe dann einfach direkt auf meinem Mac hier... .. so einen Model erstellt, habe halt... .. ich weiß gar nicht mehr, wie die Webseite hieß,... .. wo du dir solche Trainingsdaten runterladen kannst. Irgendwo mit K, das habe ich jetzt vergessen. Und habe mir dann ganz viele Pokémon-Bilder runtergeladen... .. und habe dann meinen Model damit trainiert... .. und dann konntest du halt in der App einfach ein... .. Bild machen, von irgendeinem Pokémon.

Und es wurde dir dann halt angezeigt, welches Pokémon es ist und du konntest dann halt direkt auf die Detail an sich gehen. Also...

Janis (41:20.466)

Würdest du sagen, sowas ist schon produktionstauglich, also wird es in der Praxis richtig gemacht, dass die iOS-Entwickler selbst Machine Learning Models in die Apps integrieren?

Kevin (41:29.454)

Hab ich jetzt bis jetzt noch nicht gesehen, muss ich ganz ehrlich sagen. Weil ich habe jetzt noch keinen Anwendungsfall dafür gehabt.

Janis (41:36.114)

Also nette Spielerei.

Kevin (41:39.182)

Ja, würde ich jetzt so nicht sagen, weil ich meine, da müsste man wahrscheinlich, da gibt es wahrscheinlich jetzt genügend Leute, die dann sagen, ach nein, nein, Kevin, nein. Da und da benutzen wir das schon und das ist schon sehr sinnvoll. In meinem Umfeld war es eher eine Spielerei.

Janis (41:49.81)

Hm?

Kevin (41:56.622)

Aber ich habe noch nicht so viel mit Bilderkennung gemacht, aber ich glaube, da kann sie schon viel mehr mitmachen. Also ich glaube schon sehr potent. Aber es ist natürlich auch sinnvoll, wenn du da viel Zeug einfach auslagerst, ins Backend legst. Und dann hast du halt auch kein Problem damit, wenn du ein neues Modell deployen willst.

Janis (42:13.298)

Ja gut, ich sag mal, sowas wie Autokorrektur findet ja mittlerweile auch bei den Devices selbst statt. Das ist ja auch schon KI.

Kevin (42:19.054)

Ja, genau. Garantiert Ende des Jahres, wenn wir in einem Jahr nochmal sprechen, dann werden wir da ganz anders drüber sprechen. Also ich glaube, dieses Jahr wird ganz viel passieren, auch im Mobile-Bereich. Also Android macht ja schon sehr viele Sprünge. Ich glaube, das ganze Betriebssystem wird ja, glaube ich, so AI-Assistent-mäßig aufgebaut werden. Und bei Apple...

Janis (42:24.594)

Ich werde das mal als Einladung.

Janis (42:33.234)

Ja.

Kevin (42:45.966)

Ja, wurde jetzt noch nichts offiziell angekündigt, aber nach dieser ganzen KI-Thematik da aus dem letzten Jahr bin ich mir hundertprozentig sicher, dass wir bei der WWDC im Juni wahrscheinlich sehr viel mit KI zu tun haben werden. Also, garantiere ich dir. Oder sie machen weiter mit ihrem AR, VR Zeugs und Spatial Computing. Man weiß es nicht. Aber die müssen AI reinbringen, also garantiere ich dir, dass da was kommt. Also irgendwas müssen sie machen.

Janis (43:02.098)

Ja.

Janis (43:09.042)

Ja, gut.

Janis (43:14.386)

Und glaubst du, dass du perspektivisch als iOS-Entwickler mehr mit den KI-Themen zu tun haben wirst? Oder denkst du, baust?

Kevin (43:23.31)

Ich denke schon, dass das das Benutzerelebnis in vielen Fällen verbessern kann. Also wenn Apple da schöne APIs bereitstellt, kann ich mir gut vorstellen, dass wir die auch integrieren. Also wir versuchen da schon immer die Entwicklung im Auge zu behalten, um die dann eventuell in die App zu integrieren.

Janis (43:40.946)

Kevin, vielen, vielen, vielen Dank für deine Zeit. Es war mir eine Freude und eine Ehre. Ja, super, super gerne. Und ich wünsche an der Stelle, außer du hast noch abschließende Worte. Also möchtest du noch etwas Abschließendes sagen? Hast du noch was auf dem Herzen?

Kevin (43:46.958)

Vielen Dank, dass ich eingeladen wurde.

Kevin (43:57.07)

Ja, keine Ahnung. Also wenn ihr Bock habt, irgendwie irgendwas zu entwickeln oder so, dann setzt euch hin, schaut euch ein 10 Minuten Videotutorial an auf YouTube und legt einfach los. Gibt keinen Grund, einfach... Na, da gibt's gute andere Tutorial-Kanäle. Ich mache ja nicht mehr so viele Tutorials.

Janis (44:08.018)

Am besten von dir oder von jemand anderem.

Janis (44:13.554)

Ja, ja gut, ich habe mir aus Spaß dein allererstes Video angeguckt, streckst dich deine ersten fünf noch vor diesem Podcast. Ich fand das schon sehr charmant. Also, genau, da war auf jeden Fall noch viel Tutorial-Kram bei. Von daher, sehr gut. Vielen Dank, Kevin. Und ich wünsche dir einen guten Hunger mit deiner Frau beim Frühstück. Frage zuletzt, geht ihr zu zweit essen oder habt ihr quasi ein Doppeldate?

Kevin (44:22.126)

Ja.

Kevin (44:25.934)

die frühen Anfänge.

Kevin (44:30.062)

Ja.

Kevin (44:37.966)

Ja.

Kevin (44:42.414)

Ne, zu zweit, also zu viert. Mit Kind und Hund. Ja, genau. Double date.

Janis (44:46.802)

Okay, Doppeldate, sehr gut. Viel Spaß und guten Hunger dabei.

Kevin (44:51.374)

Ja, Dankeschön.

Janis (44:54.706)

Sooo...

Neuer Kommentar

Dein Name oder Pseudonym (wird öffentlich angezeigt)
Mindestens 10 Zeichen
Durch das Abschicken des Formulars stimmst du zu, dass der Wert unter "Name oder Pseudonym" gespeichert wird und öffentlich angezeigt werden kann. Wir speichern keine IP-Adressen oder andere personenbezogene Daten. Die Nutzung deines echten Namens ist freiwillig.