MircroServices (and a story about Netflix) | Prime React

Ғылым және технология

Recorded live on twitch, GET IN
Perhaps the greatest meme master: • Microservices
Author: / @krazam
/ theprimeagen
MY MAIN YT CHANNEL: Has well edited engineering videos
/ theprimeagen
Discord
/ discord

Пікірлер: 490

  • @asimov647
    @asimov647 Жыл бұрын

    So much work for something where everyone I know was like "Oh weird it starts with season 4, better switch to S1E1 manually"

  • @akhil1996kc

    @akhil1996kc

    Жыл бұрын

    Hard agree, everyone I know thought it was a bug and manually changed to S01E01

  • @4idenn

    @4idenn

    Жыл бұрын

    This so much, wasted effort imho

  • @ernesto906

    @ernesto906

    Жыл бұрын

    This is a text book example of something "cool" that someone in management, marketing, UX, etc comes with That makes engineering a suffers for a while for little or nothing.

  • @chriscatino5950

    @chriscatino5950

    Жыл бұрын

    In these situations I always remind myself "errybody gettin paid"

  • @needsloomis7164

    @needsloomis7164

    Жыл бұрын

    loool, is that what they ended on? Just pointing you to a different season? I assumed they were switching the metadata to make S1E1 a different video, like they did with Love Death and Robots

  • @KRAZAM
    @KRAZAM Жыл бұрын

    all happy developers are alike... every unhappy developer is unhappy in their own way

  • @GeorgeTsiros

    @GeorgeTsiros

    Жыл бұрын

    pppppppft you speak as if you know... you weren't there man... _you weren't there!!!_

  • @strigon

    @strigon

    Жыл бұрын

    The “Anna Karenina” dev principle

  • @herzog0

    @herzog0

    11 ай бұрын

    This is the best crossover episode I could've witnessed ❤

  • @godowskygodowsky1155

    @godowskygodowsky1155

    10 ай бұрын

    What is this thing you call a happy developer?

  • @markm1514

    @markm1514

    8 ай бұрын

    ​@@godowskygodowsky1155 A retired developer

  • @happilyconfuseddog8951
    @happilyconfuseddog8951 Жыл бұрын

    The fact that this problem arised serving up Black Mirror contains irony that is not lost on me.

  • @gregoryshields4258

    @gregoryshields4258

    Жыл бұрын

    “arose”

  • @publicalias8172

    @publicalias8172

    Жыл бұрын

    @@gregoryshields4258 "penis"

  • @GordonChil

    @GordonChil

    Жыл бұрын

    “arisen”

  • @yojou3695

    @yojou3695

    11 ай бұрын

    "aroseth"

  • @dmsalomon

    @dmsalomon

    11 ай бұрын

    "arizethed"

  • @nateedwards1313
    @nateedwards1313 Жыл бұрын

    Watching you draw S's like a psycho feels like Black Mirror

  • @bdlowery

    @bdlowery

    Жыл бұрын

    That's how left handed people write S's ;)

  • @banditosdoritos

    @banditosdoritos

    Жыл бұрын

    What's wrong with the way he writes the 'S'?

  • @schism15

    @schism15

    Жыл бұрын

    ​@@bdlowery Nah, I'm left handed and I don't write my "s"es like that. Don't put that on just us 😂

  • @sudonick2161

    @sudonick2161

    Жыл бұрын

    @@bdlowery he's not left handed tho :)

  • @jorgeimo

    @jorgeimo

    Жыл бұрын

    holy shit, now I can't unsee it, the way he writes the four is also weird for me

  • @ISKLEMMI
    @ISKLEMMI Жыл бұрын

    This skit raised my blood pressure, but the PM's reaction at the end brought it back down. Then your diagram raised it again.

  • @LordFokas

    @LordFokas

    Жыл бұрын

    Yes but the middle name thing is like "we'll be going through this again very soon"

  • @B20C0
    @B20C0 Жыл бұрын

    4 months and multiple services for something most people considered to be a bug. I now look at my boring job in a whole different light, thanks for that. 😀

  • @Extys

    @Extys

    11 ай бұрын

    Yes, but you don't make tens of thousands of dollars a month like in big tech lmao

  • @vanweapon
    @vanweapon Жыл бұрын

    Wow I remember trying to introduce someone to Black Mirror after S4 but i had already watched it, and i remember how S4 would play first and it was really confusing. Can't believe that was you lmao

  • @ThePrimeTimeagen

    @ThePrimeTimeagen

    Жыл бұрын

    Gotem

  • @woojify

    @woojify

    Жыл бұрын

    @@ThePrimeTimeagen galactus at it again, predicted time and space for the episodes that must be watched before the viewer knows what they want to watch

  • @linusdannull1247
    @linusdannull1247 Жыл бұрын

    Somewhere around 11 mins, I just started laughing as it was so clear he was completely re-enacting the video

  • @ThePrimeTimeagen

    @ThePrimeTimeagen

    Жыл бұрын

    its... literally the netflix architecture when i did the change... its not a joke, which hurts.

  • @linusdannull1247

    @linusdannull1247

    Жыл бұрын

    @@ThePrimeTimeagen I'm about to start a Mastercard internship using Java Springboot... so I'm looking forward to understanding the pain :D

  • @sortsvane

    @sortsvane

    3 ай бұрын

    ​@@linusdannull1247I'm one month into my internship at AMEX and the pain is growing every single day.😞

  • @martendittmann5431
    @martendittmann5431 Жыл бұрын

    I was showing my younger brother this video and before you got around to your story. Black Mirror was mentioned and he said 'Oh, the show where they screwed up the order of the seasons.'

  • @thefrub
    @thefrub3 ай бұрын

    The fact that he can just rebuild this whole system from memory shows how much he had to deal with all this every day

  • @svilen12345

    @svilen12345

    Ай бұрын

    LoL I initially thought you meant the K video and not actual primagen😂

  • @datguy4104
    @datguy4104 Жыл бұрын

    People got paid like $300k a year to come up with this solution... and it took 4 months...

  • @temper8281

    @temper8281

    Жыл бұрын

    Yep. Starting to think big tech is just a giant ponzi scheme

  • @TheMsksk

    @TheMsksk

    Жыл бұрын

    And all the end users thought it was a bug and manually changed it to S01E01😂 Brilliant.

  • @fulconandroadcone9488

    @fulconandroadcone9488

    Жыл бұрын

    @@TheMsksk Must be one of those more expensive bugs

  • @ricardoamendoeira3800

    @ricardoamendoeira3800

    Жыл бұрын

    @@TheMsksk It was a bug, it just happened to be written by a product manager at the spec level, instead of by a programmer at the code level.

  • @TheMsksk

    @TheMsksk

    Жыл бұрын

    @@ricardoamendoeira3800 I like this way of looking at it

  • @earthling_parth
    @earthling_parth Жыл бұрын

    Lol, my friends and I just switched to S1E1 manually because it started from S4 🤣😂🤣 I feel bad for you Prime 😅

  • @brssnkl
    @brssnkl3 ай бұрын

    When you have 3600 hammers connected with unique cog sizes in a 4D map with multiple space time continuum flaws, everything starts to look like a nail to you.

  • @rapzid3536
    @rapzid3536 Жыл бұрын

    OMG, I was like "Man, what does Black Mirror specifically have to do with microservices?". Hold onto your monoliths tight peeps. As long as you can, never let go.

  • @erickmoya1401
    @erickmoya1401 Жыл бұрын

    Leseon learned: Dont use "smart" names for your services. Racoon, bingo, etc. It gets easier to communicate later to other devs if every service has a boring name related to what it is supposed to do.

  • @zyzlol

    @zyzlol

    Жыл бұрын

    Bonus points if you can avoid acronyms

  • @SemiMono

    @SemiMono

    Жыл бұрын

    @@zyzlol Yep, exactly. I've worked with both. I find the "smart" names, or random names, easier. Cause then you're saying real words rather than just spewing letters that are ultimately meaningless. The real thing to avoid is making services with illogical responsibilities. If something is a bit of logic, put it in a library. If something stores some data, make it a service. And if you're going to make a service, THINK about it. But in large organizations people are looking for something to do to prove themselves, because the organization over-hired. Then everyone wants to make a service, and you get nightmare fuel.

  • @Krasshirsch

    @Krasshirsch

    Жыл бұрын

    I disagree, every service must be named according to a matching Warhammer 40k unit, obviously.

  • @vecter

    @vecter

    10 ай бұрын

    Except for Video Metadata Service... which didn't store any video metadata.

  • @Ehal256

    @Ehal256

    9 ай бұрын

    I thought the lesson was don't fall for the microservice scam

  • @mvargasmoran
    @mvargasmoran Жыл бұрын

    Prime... I would've just hardcoded the Black Mirror ID and sort that out hardcoded on the front-end. Yes, do I that crap when they want things for yesterday, I do it in a 1~2 days and then I would take the 4~6 months to do it properly and remove the Hardcoded stuff, I call this: "Tech Debt Quantitative Easing" as Manager most likely would never want me to pay that debt.

  • @TheBswan

    @TheBswan

    Жыл бұрын

    I hate that I can relate to this. We have feature flags, but there's no backend bandwidth so let's just hardcode org IDs in the UI application and we'll clean it up never.

  • @dealloc

    @dealloc

    Жыл бұрын

    @@TheBswan Yes the universal word for "later" and "another point in time" in tech is "never".

  • @rand0mtv660

    @rand0mtv660

    Жыл бұрын

    @@dealloc make sure to put a TODO comment in code so that you can read it in 5 years and see how useful it was.

  • @earthling_parth

    @earthling_parth

    Жыл бұрын

    @@rand0mtv660 LMAO. Those TODO comments are like troll posts from the distant past all around in codebase 🤣😂

  • @dealloc

    @dealloc

    Жыл бұрын

    @@rand0mtv660 "FIXME: This is a hack that should be fixed later"

  • @sushantbhargav4652
    @sushantbhargav465210 ай бұрын

    Irony is that the way he tells it, it feels like those 4 months were a black mirror episode in itself

  • @tanthole0306
    @tanthole0306 Жыл бұрын

    Some years ago, I watched that video and did not feel much because I was a student. Now as someone who has recently done a new feature with many microservices involved, I totally feel the pain. Sometimes I wonder, are microservices actually a better way than monoliths to do things.

  • @hotrodhunk7389

    @hotrodhunk7389

    Жыл бұрын

    Spoiler: Fucked up how everybody abandoned him. He took one for the team and they just left him to hang...

  • @moneymaker7307

    @moneymaker7307

    Жыл бұрын

    The problem with software engineering is that there is no such thing as a senior or we got to point where because there are so few senior software engineers that the blind started leading the blind. Back in the day, we were building this beautiful machine that is sending us bunch of data from space. Me being a young engineer that is full of ideas brought up the idea of using micro services to process the data and it sounds like this micro service idea help a lot with scalability. A engineer on the team that having been coding since the 80s. Went home and did a bunch of research on micro services. What he found out was shocking. It turns out that micro service are services with the world micro attach to it. After studying SOAs in depth. I came to the same conclusion also..

  • @josefaguilar2955
    @josefaguilar2955 Жыл бұрын

    I'm currently working at a place that does a hybrid microservice /monolith style of architecture. The decision to structure it this way came about from specific needs (think content creation vs content moderation) and many code refractors (services being deprecated quickly so it's hard to rely on one). The monolith single responsibility app consistently performs better than the microservices based apps. I think we'll see the industry start to realize sometimes it's better to have a tiny monolith single org responsibility style repo vs microservices hell.

  • @fulconandroadcone9488

    @fulconandroadcone9488

    Жыл бұрын

    I right now work on a fe that support multiple themes ( think of same app for different country or slightly different ui ). Project manager who is also main be dev made a decision to split one int o a separate repo ( which dev ops need to set up and they don't seem to have enough time as it is ). I could not figure it out how it will make anything easier for us since you don't need to share code if it is the same repo what difference is there if a directory is in the same repo or not? Then I got a little story how they have 20 repos on the back end and ever since then I don't bother to even try sway anything anymore. Few months back we got 2 user tokens so 1 user could change and see data of the other user. But you have to send the token from the correct user to see what is going on.

  • @alpacamax3404

    @alpacamax3404

    2 ай бұрын

    If I remember correctly, Netflix used to have a monolithic architecture. They eventually switched to a microservice architecture because they realized the cost of developing and maintaining a microservice architecture is lower than the loss of revenue caused by more frequent crashes from a monolithic architecture.

  • @ledjon
    @ledjon Жыл бұрын

    I love the Netflix story here. Perfect example of microservices in practice.

  • @apidas

    @apidas

    Жыл бұрын

    it's a mess. microservice given time doesn't really makes sense for the use case it's intended for. usage and complexity grows.

  • @georgytioro

    @georgytioro

    6 ай бұрын

    Nope, MS should never be overcomplicated, they should be simple individual jobs of.execution. this.type.of overcomplification is just showing "rush.to.complite the job", not ever take a second to think and design proper solution. Basically is.showing difference between Developer and Engineer. Prime is a developer, very good.and experienced developer, but Engineer would solve this quite differently

  • @simonabunker
    @simonabunker Жыл бұрын

    Are you sure the service you couldn't remember why called Galactus?

  • @wilkyarny3012
    @wilkyarny3012 Жыл бұрын

    Learned a lot today love Content Metadata Service uh, but we'll talk next week about adding a new reverse button player. Awesome sounds good, take care. 😂😂👌💪

  • @Slashx92

    @Slashx92

    Жыл бұрын

    Lmao 💀

  • @EricLS

    @EricLS

    Ай бұрын

    *Roto-levitates out of room*

  • @CaptainToadUK
    @CaptainToadUK11 ай бұрын

    I always wondered why the episode numbering for Black Mirror was broken. Figured someone dropped a bollock in the database, never occurred to me it might be deliberate... 😆

  • @VivekYadav-ds8oz
    @VivekYadav-ds8oz Жыл бұрын

    So much energy and network bandwidth used for something so simple. Feels like rather than writing code for business logic, we're calling services and composing their results to build the logic up. Then again, I'm just a student and have no idea about the kinds of compromises that happen in production code.

  • @reralt

    @reralt

    Жыл бұрын

    I am also a student but I guess this much complexity is because of Scalability. Simple things are complex to do but large scale stuff become easier I guess.

  • @VivekYadav-ds8oz

    @VivekYadav-ds8oz

    Жыл бұрын

    @@reralt I feel this is because they're using the same components that are used to solve bigger issues, to solve small issues. It seems like you send a condition to a service that evaluates it to true and false returns the result to you - kinda thing.

  • @TheMsksk

    @TheMsksk

    Жыл бұрын

    @@VivekYadav-ds8oz I agree. Basically all they do is build abstractions based on some assumptions that are invalidated by a business requirement later on. So they have to do all of this patching and jumping around just so that their existing abstractions can be reused. Modifying your existing abstractions is a no-go because it can break more things than you can imagine. I find it funny to be honest.

  • @VivekYadav-ds8oz

    @VivekYadav-ds8oz

    Жыл бұрын

    @@TheMsksk Yeah this! You put it into words better than I could. It is funny tbh yeah XD

  • @apidas

    @apidas

    Жыл бұрын

    back in the days, when you're not a "student" microservice isn't a thing. and suddenly gets trendy and becomes the "norm" as with any innovation that comes in the industry. and then goes to your curriculum in school. until we learn something in the industry.

  • @Nazani
    @Nazani Жыл бұрын

    Convinced that if we made web devs make big online video games everything would take a year to make, would never be patched and would run at 2 fps

  • @Sonsequence

    @Sonsequence

    5 ай бұрын

    Dead right apart from the patching. Everyday it'd be patches to patch the patch's patch.

  • @Sonsequence

    @Sonsequence

    5 ай бұрын

    But as some defense to my tribe, for all the complexity of game dev, we have one problem they don't. Let's forget multiplayer for a second coz I promise their backend is just as webby tangled as ours'. Single player is the core and there the task is just making the best game that can get the most out of one computer. We server side engineers are trying to make a massive brain out of thousands of networked computers with the assumption that they're never all working. It has to be able to take some wrench strikes to the head on a bad day and keep limping on. That means your system has to be architected a lot less like a single expert airplane pilot and more like a committee of various flaky halfwits who each know how to operate one control or are middle management. I mean that's the microservices way. You could do it the Google monorepo way but you need their insanely advanced internal development platform for it to stand a chance.

  • @Nazani

    @Nazani

    5 ай бұрын

    @@Sonsequence Is it really that much harder than what Fortnite does? or better yet an MMO? and if so is it just self imposed difficulty?

  • @mattiassantoro2469

    @mattiassantoro2469

    3 ай бұрын

    True. But convinced also of the opposite. Ask game devs to realize an enterprise web platform, and you'll endup with 10s responses and unmaintainable stuff.

  • @TheRicherthanyouguy
    @TheRicherthanyouguy Жыл бұрын

    I have so many feelings from this because currently this is my life at work. I nearly wrote a giant paragraph about how this made me feel then needed to delete it sigh.

  • @EricLS

    @EricLS

    Ай бұрын

    Oh man. I’ve been on the internet long enough I basically delete anything past a certain number of lines. All but guaranteed to be a toxic vent on unsuspecting strangers if you go on that long, and you feel like shit afterward. I feel you.

  • @progfix
    @progfix Жыл бұрын

    Was the craziness of all this explained to the person(s) who wanted that feature? Maybe after seeing the cost of developing all this would have made them change their mind

  • @max3446

    @max3446

    Жыл бұрын

    The original seasons were better than the Netflix ones as well anyway lmao.

  • @Yous0147

    @Yous0147

    9 ай бұрын

    I've tried explaining to the affected that the solution they were asking for, even if it seems simple, would complicate our current architecture because it was essentially a departure from the initial spec of the project, but it's hard to make someone who only thinks in features instead of maintainability actually see any value in forgoing a feature for a healthier stack.

  • @johnrodger5467
    @johnrodger5467 Жыл бұрын

    That guy could tell you some stories though. I heard he was later teaching Javascript to a small pack of primates.

  • @isaac.omondi
    @isaac.omondi Жыл бұрын

    Just how much data is replicated across all these services?

  • @sohn7767

    @sohn7767

    Жыл бұрын

    Yes

  • @EricLS
    @EricLSАй бұрын

    13:54 “I told you, it’s the design of our back end!”

  • @brandonjoaocastillo7490
    @brandonjoaocastillo7490Ай бұрын

    This is your best video by far, loved it.

  • @frootflie2968
    @frootflie2968 Жыл бұрын

    For what its worth, I went back and rewatched the PF video after this. Positive side effect to microservice architecture.

  • @ZantierTasa
    @ZantierTasa Жыл бұрын

    Reverse season order is such garbage. When it first came out, it was easy to accidentally start watching from a later season rather than S01E01. And it's such horrible UX to scroll through the episodes and them not be in order. You want to promote a certain season? Sure, fine. But when I'm viewing the full episode list, show them in gogdarn order!

  • @Skorps1811
    @Skorps18119 ай бұрын

    LMAO i now remember s4 thing, and I remember also how somewhat satisfied I felt “you’ve a bug there Netflix, gotcha!” 😂

  • @tuftman6092
    @tuftman6092Ай бұрын

    I remember when I first got into black mirror it started playing s4e1 and I was like wait, why is it playing from the start of season 4, and I remember wondering why they did that. It's cool that I now know why that was. lol

  • @CaptTerrific
    @CaptTerrific7 ай бұрын

    12:25 - what I'm hearing is that it should be far easier to hack my way into watching temporarily blocked episodes/videos than I expected!

  • @ToPFeE1234
    @ToPFeE1234 Жыл бұрын

    It relatable to me as well. Business guys don't care what you working on they just want a result.

  • @JustCode39
    @JustCode39 Жыл бұрын

    now I'm just an itty bitty teeny tiny fullstack web dev, so my understanding is limited, but would you say that backend was over-engineered? or was every services' existence justifiable?

  • @Elb.ossama

    @Elb.ossama

    Жыл бұрын

    This is why everything is so buggy and slow despite our blazing fast hardware

  • @ripple123

    @ripple123

    Жыл бұрын

    when you're dealing with the scale of Netflix, things like this happen

  • @videoguy640

    @videoguy640

    Жыл бұрын

    It's over engineered. The system starts simple but as you add more features, adding another service becomes the fastest way to solve business problems. The problem is simplifying the system is hard to justify and even harder to quantify. Deprecating and migrating services can take a looong time. All these factors make deprecation projects risky. And so... things just tend to get increasingly complicated over time.

  • @hfspace

    @hfspace

    Жыл бұрын

    ​@@videoguy640i feel the problem here is mostly the restrictive access to data for a service when you have multiple disconnected datasources which are all associated to their micro service.

  • @jamesking2439

    @jamesking2439

    Жыл бұрын

    ​@@videoguy640 Just throw more money and bodies at the problem.

  • @wtfusernamecrap
    @wtfusernamecrap Жыл бұрын

    I LOLd at VMS. Maybe I'm slowly getting the microservice scepticism. I'm definitely doubling down on 1.) a minimum number of layers in an architecture and 2.) well defined layers and terminology.

  • @richie7425
    @richie742511 ай бұрын

    recently finished helping modernise a monolith. Treasure your microservice architecture. you think that takes a while to get stuff done. 25 years of code piled on top. took me months to migrate just the db out

  • @Rockyzach88
    @Rockyzach88 Жыл бұрын

    I knew there was something fucked up when I went to talk about the episodes with friends and I realized the order of the episodes everyone watched was different from mine.

  • @blackfrog1534
    @blackfrog1534 Жыл бұрын

    As the team leader for the BE team on the project I'm working on, Primes story made feel better on two fronts. First of all I feel better about our microservice architecture after seeing that diagram that prime drew. But the best part is when he said how the front end guys complained about the naming of the flag... like yesss thanks for sharing this, now i feel like this is something that is just happening to me! P.S. Love you Prime but the way you write the letter s should be illegal xD

  • @hfspace

    @hfspace

    Жыл бұрын

    well, i feel that the architecture could be better. Microservices are fine but what do you think about just using a distributed database like yugabytedb where each microservice can read the data it needs. I mean the goal of these services is to provide data, isn't it. So why not let the database handle the scalability issues when you want to provide data to all the users. Even if you call other microservices to access data in the end you will create a request to a database, you added just a lot of network requests

  • @blackfrog1534

    @blackfrog1534

    Жыл бұрын

    @@hfspace That sounds super cool to me, i would be down to try something like that. But sometimes you are constrained with the tech you can use. For example if because of budget constraints you can only use the cheap AWS serverless services like lambdas with DynamoDB and do as best as you can with that. But what you said sounds super interesting to me :)

  • @hfspace

    @hfspace

    Жыл бұрын

    @@blackfrog1534 well, at my client, we also don't do it like that. I would also like to try it out, but i did not have the opportunity, yet. In my mental model micro services are the ones handling the application logic, but the data access would be managed by such a distributed database, which makes sense imo as you want to protect data at the source.

  • @dealloc

    @dealloc

    Жыл бұрын

    @@hfspace What happens if the data is one thing when one microservice reads it but changed before another microservice reads it, etc? Then they have different data from the same place. How is this handled? Who knows what is the correct data and sync it?

  • @hfspace

    @hfspace

    Жыл бұрын

    @@dealloc one thing: you define responsibilities. Only the microservice who owns it, writes to the table. That would at least be my suggestion. The other microservices can only read which will be needed for aggregation of data.And you can set up roles for that in the database. For reading before writing, i think that problem can happen all the time even in the architecture as described here in the video

  • @ceriusgeek2749
    @ceriusgeek2749 Жыл бұрын

    This is so incredibly accurate.

  • @luissolanodev
    @luissolanodev Жыл бұрын

    Don't come into this chat with your VS code vibes😂😂

  • @airman122469
    @airman122469 Жыл бұрын

    Lol and I thought the system I’m working on right now is a hot mess. Thank you for making me feel a little better about my job.

  • @alpacamax3404
    @alpacamax34042 ай бұрын

    I'm still not quite sure why you need to do all of this to reverse the season number. Why can't the website team put some special cases in JS code for Black Mirror? Is it just for the sake of decoupling frontend and backend?

  • @halim7725
    @halim7725 Жыл бұрын

    Man I must be extremely dumb because I came up with the same question as in the end and I thought wait I need to re-watch, and now I feel like the interior of my skull is a gigantic ocean of nothing because I'm still wondering why you needed all those microservices to reverse a fucking list of videos

  • @CaptainWumbo
    @CaptainWumbo Жыл бұрын

    it was both cathartic and gave me extreme existential dread.

  • @ExpertOfNil
    @ExpertOfNil Жыл бұрын

    It is so infuriating starting a new show, only to realize I was starting somewhere in the middle 😕.

  • @Tony-dp1rl
    @Tony-dp1rl7 ай бұрын

    It is funny to me looking back - micro-services done well are identical to what we already had established and working in the 1990's (even 80's) with SOA. :)

  • @DryBones111
    @DryBones1119 ай бұрын

    Do I even want to ask what changes needed to be made to support the varied episode ordering of Kaleidoscope?

  • @doc8527
    @doc8527 Жыл бұрын

    I fainted 3 times while watching the Netflix microservices graph grows.

  • @TimoWelde
    @TimoWelde2 ай бұрын

    Oh wow, thanks for the background. The opposite season sorting on black mirror always just looked like a bug 😅

  • @grim.reaper
    @grim.reaper Жыл бұрын

    🤯🤯🤯🤯 I think this is true with any service that has been around long enough and has accumulated a lot of dependency…

  • @someguy9440
    @someguy9440 Жыл бұрын

    if y'all only knew how the product page worked on your last amzn purchase.

  • @Agent_Six_
    @Agent_Six_2 ай бұрын

    He pauses so often he misses half of the jokes. "See bingo knows ev..." *Pause then 5 minutes of talking * *Unpause* "...ryones name-o"

  • @Ronoaldo
    @Ronoaldo2 ай бұрын

    OMG that was wild. A real black mirror episode in real life while handling black mirror episode ordering... 😮

  • @boot-strapper
    @boot-strapper Жыл бұрын

    I bet Netflix performance and ease of development would be improved with monolith. Lol

  • @Aimsport-video
    @Aimsport-video7 ай бұрын

    Pure genius to migrate the “Ooops, something went wrong.” microservice to the Netflix “Whoops, something went wrong.” microservice. On par with Under Construction animated GIF.

  • @mvargasmoran
    @mvargasmoran Жыл бұрын

    And that's why we are so slow, Omega Star don't support ISO timestamps like they said they will A MONTH AGO! We are constantly blocked! My story is the same but with old IBM ecommerce software.

  • @konfcyus4865
    @konfcyus4865 Жыл бұрын

    I still dont understand why they couldnt order the list on FE for when it is necessary , yes it is messy but so is the pipeline that is being shown for it.Would appreciate if anyone can help me understand

  • @israelafangideh

    @israelafangideh

    Жыл бұрын

    Same

  • @lvlinty

    @lvlinty

    Жыл бұрын

    Probably something along the lines of: Netflix is supported on a wide range of devices, some of which may be eol and not receiving updates. Solid chance trying to do this on the front end would result in patches for hundreds or thousands of different types of devices.

  • @DF-ss5ep

    @DF-ss5ep

    Жыл бұрын

    ​@@lvlinty No, but they did something with the hidden flag names, and even had to switch them, so they had to do updates. Maybe the FE team didn't want to bloat the bundle size. IMO, the FE doesn't look good in this picture, maybe it's their fault. The issue with the flag names hints at an obsession with procedure. "This is not the right way" kind of mentality.

  • @dealloc

    @dealloc

    Жыл бұрын

    @@DF-ss5ep Doesn't make sense, since most of the lolomo things are server-side rendered. Only things like interaction, streaming and loading additional content after first load is fetched on client. I'm sure they have a sort of BFF that could do the mapping.

  • @apidas

    @apidas

    Жыл бұрын

    the idealistic argument is "it's should be done in backend"

  • @jesse2667
    @jesse26679 ай бұрын

    I was feeling every second of that video skit. It all was too relatable. About The PF episode, I watched the show from the first season. I love the show and listened to the explaination, but it sounds like several services and rewiring with a v2 for what was a single use case. If it is broadly used for more purposes now, it is fine, but if it is just for PF, I'd say some hardcoding and to put to bed those PFs nightmares and never forbid speaking of it again 🙊.

  • @darkarie
    @darkarie Жыл бұрын

    this one is awesome

  • @kevinkkirimii
    @kevinkkirimii Жыл бұрын

    I just wanted to watch season 1 episode 1.

  • @tkg__
    @tkg__ Жыл бұрын

    I still don't get why you couldn't get all seasons as a list of lists, and then move the fourth list (a fourth season) to the beginning of the list without reordering anything else. Feature flag it and make the front-end reorder them.

  • @lettucemode8643

    @lettucemode8643

    3 ай бұрын

    My theory is they wanted it to be done all in the backend because then it would work across every device Netflix is on without having to ship new versions for all of them.

  • @dank8981
    @dank8981 Жыл бұрын

    I am a RF hardware designer who sometimes codes too. If the system so inflexible to make it “impossible” to add feature and so difficult, isn’t that a sign of bad software design to begin with? I apologize in advance for potentially asking stupid question.

  • @megatronusv2215

    @megatronusv2215

    7 ай бұрын

    Absolutely

  • @thewhitefalcon8539

    @thewhitefalcon8539

    6 ай бұрын

    Have a look at Uncle Bob vs Casey Muratori. Bob (a Clean Code book selling guru) argues for these kinds of highly separated architecture so it's easier to change. Casey (a game dev) argues for just telling the computer what you want it to do, because either way it's not going to be easy to change and you might as well write less code and when you inevitably have to rewrite it later, have less code to rip out.

  • @thewhitefalcon8539

    @thewhitefalcon8539

    6 ай бұрын

    TLDR: all these architectures are supposed to bring flexibility benefits but they don't really

  • @sanjarcode
    @sanjarcode11 ай бұрын

    Couldn't a popup to start from S4E1 ("recommended") vs S1E1, at the frontend solved the problem?

  • @carltonnnn
    @carltonnnn3 ай бұрын

    audibly saying "oh nooo" at every new service in the netflix story lol

  • @paulsanchez5030
    @paulsanchez5030 Жыл бұрын

    this engineering failure vulnerability here is giving me signlas prime

  • @valeenoi2284
    @valeenoi2284 Жыл бұрын

    I shared this with junior level developers a year ago... nobody felt my pain. 😭

  • @paulvalladares7469
    @paulvalladares7469 Жыл бұрын

    this was very entertaining 😂

  • @Brandon-hd4vg
    @Brandon-hd4vg Жыл бұрын

    Ngl got an ad for jimmy johns and thought it was a micro service. Good job you got me.

  • @DustyBilbo
    @DustyBilbo Жыл бұрын

    Krazam is the best! Thank you for doing this. 😂😂

  • @CalebStephensPlaysPiano
    @CalebStephensPlaysPiano6 ай бұрын

    I’m just now watching this… PF is legendary 😂

  • @timndichu
    @timndichu Жыл бұрын

    This is crazzy. BECAUSE OF ONE SHOW

  • @godofcows4649
    @godofcows46492 ай бұрын

    Fools, I store everything inside a single CVS for all data.

  • @_bsmusic_
    @_bsmusic_3 ай бұрын

    This was the closest reenactment of that It's Always Sunny In Philadelphia meme

  • @lishhhhmm
    @lishhhhmm Жыл бұрын

    Did i just watch a video and then a recreation of that video in the same video? xd

  • @fredrikaverpil
    @fredrikaverpil Жыл бұрын

    Yeah this is a documentary of our lives, huh? I died when I saw this the first time. 😂

  • @nateedwards1313
    @nateedwards1313 Жыл бұрын

    God struck down the Tower of Babel

  • @borjinator

    @borjinator

    Жыл бұрын

    Banger

  • @MegaMurcelago
    @MegaMurcelago Жыл бұрын

    when i watched about neflix services - i wondered, why there are so many of them. Now it kinda makes sense

  • @cgme9535
    @cgme95357 ай бұрын

    The fact that this somehow works is truly astonishing

  • @varunsharma5582
    @varunsharma55822 ай бұрын

    Why not have an api contract which sends the episode urls in a json structure that can be easily sorted on the frontend? [{season1: {episodes:[], location: {}, meta_data: {}}, season2: {}...], something like this could have been easily sorted at the frontend. So, in the end, wouldn't it have been much more cheaper to alter the api contract than to over-engineer a mess like this?

  • @gr1nch3
    @gr1nch36 ай бұрын

    lol, I now understand why i tried watching black mirror and it started from S06E01

  • @rado147
    @rado147 Жыл бұрын

    my brain went for a smoke and I found it hiding under the chair outside

  • @danielwalley6554
    @danielwalley65546 ай бұрын

    This is where companies need to be willing to bite the bullet and refactor. The initial architecture is always going to be a mess because you don't know what you don't know. But the lessons learned from it allow you to create a much better successor.

  • @ascourter
    @ascourter Жыл бұрын

    Sounds like a distributed monolith lol. Twice the headaches and none of the benefits. (from the skit)

  • @lethanhan9084
    @lethanhan9084 Жыл бұрын

    krazam's content is gold

  • @d0x2f
    @d0x2f Жыл бұрын

    Who tf writes their S's from the bottom up?

  • @ThePrimeTimeagen

    @ThePrimeTimeagen

    Жыл бұрын

    This guy

  • @nomad-oz6nl

    @nomad-oz6nl

    Жыл бұрын

    Bs, Ds, Ss it's just more efficient

  • @irlshrek
    @irlshrek Жыл бұрын

    Using (and setting) a compositor like picom fixed my screen tearing issues!

  • @chiefsiege
    @chiefsiege10 ай бұрын

    all i could think during that diagram draw was "JOHN FUCKING MADDEN"

  • @ResonantFrequency
    @ResonantFrequency9 ай бұрын

    The pain will always be present. Sure we'd love to have simple straightforward services that do exactly what we think they should, but we also want performant systems that will last a long time as it turns out product doesn't want the user to get hit with a 5 second query at request time so we build caches and indexes to solve that problem. Turns out you from 5 years ago did not possess a third eye that can see into the future and anticipate what product wants today so you don't have direct access to the data you want that is guaranteed to be up to date and valid for a transaction and now you have to make elaborate changes to accommodate that feature. Ultimately this is why any sufficiently long lived codebase starts to look like a hoarder's house as you build seemingly redundant features that meet varying use cases.

  • @memebro3181
    @memebro3181 Жыл бұрын

    Truly microservices hell

  • @mykhailomiroshnikov
    @mykhailomiroshnikov Жыл бұрын

    What a glorious story.

  • @g.c955
    @g.c9559 ай бұрын

    what's the sort order based on? could you change S4 to S04 so it comes before S1?

  • @SpeedfreakUK
    @SpeedfreakUK Жыл бұрын

    jfc webdev is even more of a hellscape than I could have ever imagined. And I thought gamedev was bad.

  • @jagagemo8141
    @jagagemo81418 ай бұрын

    11 seconds in this guy gets in a somber mood, lights a cigarette, "Let me tell you something about war."

  • @alex6337
    @alex6337 Жыл бұрын

    You can tear my monolith from my cold, dead hands

  • @iamloonix
    @iamloonix Жыл бұрын

    we can all feel the pain in your laugh at 8:59

  • @overclucker
    @overclucker2 ай бұрын

    I'm surprised that you didn't have a way to weight items in the sorter.

Келесі