#28 O(1), O(log n), O(n^2) - Ist die Komplexität von Algorithmen im Entwickler-Alltag relevant?

Beim Programmieren ist alles ein Algorithmus. Irgendwie zumindest. Doch wie misst man die Zeitkomplexität?Das ganze nennt sich Big-O-Notation, oder zu deutsch "Bachmann-Landau-Notation". Eigentlich ein recht trockenes Thema, doch auch irgendwie relevant in der heutigen Zeit von verteilten Systemen und großen Datenmengen. Doch was ist die Big-O-Notation? Was sagt sie aus? Wo kommt diese in der Praxis vor? Und inwieweit hat das ganze noch eine Relevanz in Zeiten von Cloud Computing und fast unbegrenzten Hardware-Ressourcen? Darum geht es in dieser Episode.Bonus: Wie Andy und Wolfgang in deutscher Grammatik belehrt werden, ob es OK ist in 1on1s zu fluchen und das Hash-Kollisionen mit der ganzen Sache zu tun haben.Feedback an stehtisch@engineeringkiosk.dev oder via Twitter an https://twitter.com/EngKioskUnsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners LinksPocket Casts: https://pocketcasts.com/Learn Redis the hard way (in production): https://tech.trivago.com/post/learn-redis-the-hard-way/Redis KEYS Befehl: https://redis.io/commands/keys/Redis HSET Befehl: https://redis.io/commands/hset/kSQL: https://www.confluent.io/de-de/blog/ksql-streaming-sql-for-apache-kafka/Engineering Kiosk auf LinkedIn: https://www.linkedin.com/company/engineering-kiosk/Sprungmarken(00:00:00) Intro(00:00:49) Intro: Feedback zur Episode #26 - Deutschland spricht schlecht Englisch(00:03:55) Intro: Feedback zur Grammatik - Der, die oder das Kommentar(00:06:05) Wer hört denn so alles das Engineering Kiosk?(00:07:09) Podcast-Player: Pocket Casts(00:08:32) Was sind die Sachen, die oft sinnvoll sind, du aber doch vergessen hast?(00:10:34) Das heutige Thema: Big-O Notation / Bachmann-Landau Notation (Zeitkomplexität von Algorithmen)(00:13:33) Warum ist die Big-O Notation / Bachmann-Landau Notation relevant(00:15:24) Wo war es das letzte mal wo dir die Big-O Notation vorgekommen ist(00:16:05) Was ist die Big-O Notation / Bachmann-Landau Notation?(00:20:59) Geben wir den best, average oder worst-case der Big-O Notation / Bachmann-Landau Notation an?(00:25:15) Konstanten können zur Vereinfachung einfach weggelassen werden(00:27:00) Big-O Notation bei redis: Die Story wie Andy damit in Berührung kam(00:31:16) Zeitkomplexität vs. Space-Complexity / Raumkomplexität: Zeit vs. Memory(00:32:58) Gibt es was besseres als O(1)?(00:34:26) Ist das setzen eines Keys in einer Hashmap immer O(1)?(00:40:03) Inwieweit kann man die Big-O Notation / Bachmann-Landau Notation auf Datenbanken mappen?(00:42:07) Wie relevant ist die Optimierung der Big-O Notation in Zeiten von Cloud und schnellen Servern eigentlich noch?(00:45:52) Batch-Processing vs. Streaming und die Optimierung von Algorithmen(00:48:49) Optimierungen von Algorithmen in JavaScript / auf Client-Seite(00:52:06) Optimierungen können auch schlecht sein bzw. schlecht aussehen(00:53:09) Outro mit FlachwitzenHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Engineering Kiosk Podcast: Anfragen an stehtisch@engineeringkiosk.dev oder via Twitter an https://twitter.com/EngKiosk

Om Podcasten

Der Engineering Kiosk ist der deutschsprachige Software-Engineering-Podcast mit Wolfgang Gassler und Andy Grunwald rund um die Themen Engineering-Kultur, Open Source, Menschen, Technologie und allen anderen Bereichen, die damit in Verbindung stehen.Wir, Wolfgang Gassler und Andy Grunwald, sind beide Software Engineers und Engineering Manager, die sich bei ihrer beruflichen Laufbahn bei @trivago kennengelernt haben.Zusammen bringen sie über 30 Jahre Tech-Erfahrung an das Mikrofon und lassen dabei zwei Welten aufeinander prallen: Die Österreichische und akademische Welt von Wolfgang mit der praktischen und deutschen Ruhrpottschnauze von Andy.Ziel des Podcasts ist der Austausch zu (Senior) Engineering Themen und ggf. etwas Selbsttherapie 🙃Dieser Podcast ist für alle Software Engineers und -Enwickler, Teamleads, Open-Source- und Indie Hacker, Leute aus dem Tech-Sektor (Product Manager, Data Scientist, etc.) und alle weiteren Engineering-Interessierten.Feedback an stehtisch@engineeringkiosk.dev oder über Twitter @EngKiosk ( https://twitter.com/EngKiosk )