50 BILLION MESSAGES PER DAY WITH 32 ENGINEERS | Prime Reacts

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 ก.ย. 2023
  • Recorded live on twitch, GET IN
    / theprimeagen
    Article link: newsletter.systemdesign.one/p...
    Author: NK | substack.com/@systemdesignone
    MY MAIN YT CHANNEL: Has well edited engineering videos
    / theprimeagen
    Discord
    / discord
    Have something for me to read or react to?: / theprimeagenreact
    Hey I am sponsored by Turso, an edge database. I think they are pretty neet. Give them a try for free and if you want you can get a decent amount off (the free tier is the best (better than planetscale or any other))
    turso.tech/deeznuts
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 456

  • @andrewdunbar828
    @andrewdunbar828 9 หลายเดือนก่อน +1222

    50 billion per day means all of the one-in-a-million edge cases will hit you 50 thousand times a day.

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  9 หลายเดือนก่อน +376

      truly terrifying

    • @Evkayne
      @Evkayne 9 หลายเดือนก่อน +55

      nice way to put it

    • @tastyham
      @tastyham 8 หลายเดือนก่อน +8

      yet shit happens and things doesn't work so it's accurate lol

    • @ilikegeorgiabutiveonlybeen6705
      @ilikegeorgiabutiveonlybeen6705 6 หลายเดือนก่อน

      no but maybe

    • @sismith5427
      @sismith5427 4 หลายเดือนก่อน +9

      At least with Erlang the edge cases won't take down the whole system... Erlangs paradigm was always 'Let it crash', in fact the whole language was designed with Fault tolerance in mind, they knew in critical systems like telecommunications the system needs to always remain up and available, so rather than attempt to defensively program, they viewed there will always be unforeseen bugs. hardware may fail, but they asked how can we ensure those problems never break the wider system.
      Every user action is isolated in its own PID, so when an edge case arises in that PID it just crashes, and a supervising process just restarts it.

  • @jayshartzer844
    @jayshartzer844 9 หลายเดือนก่อน +1141

    They found all the mythical 10x engineers, captured them, and locked them in a basement with only laptops with Linux terminals and a mountain of anime pron to keep them company
    Those engineers have never been more happy

    • @julienmarie_personal
      @julienmarie_personal 9 หลายเดือนก่อน +129

      They are running FreeBSD. Not Linux.

    • @NotYourSpy
      @NotYourSpy 9 หลายเดือนก่อน +7

      lmao

    • @alexandersuvorov2002
      @alexandersuvorov2002 9 หลายเดือนก่อน +58

      ... with monochrome screens and Vi as editor...

    • @kelvintakyi-bobi3155
      @kelvintakyi-bobi3155 9 หลายเดือนก่อน +1

      😂😂😂

    • @jazzycoder
      @jazzycoder 9 หลายเดือนก่อน +11

      No, they found Erlang

  • @dinckelman
    @dinckelman 9 หลายเดือนก่อน +430

    Being rejected by a company, just to be bought out by the same company, is so vindicating

    • @mrlectus
      @mrlectus 9 หลายเดือนก่อน +133

      he probably didn't know how to reverse a linked-list

    • @jamzbraz
      @jamzbraz 7 หลายเดือนก่อน +4

      lol @@mrlectus

  • @xbmarx
    @xbmarx 9 หลายเดือนก่อน +222

    For context about FreeBSD, because the article skims over it:
    For years Erlang developers preferred FreeBSD because IO multiplexing is done in FreeBSD with something called kqueue, which requires one less syscall than the Linux equivalent (epoll). I believe Linux has iouring now.
    Let us just appreciate for a moment that the Erlang VM handles IO so well that the OPERATING SYSTEM ITSELF BECOMES THE BOTTLENECK.

    • @stevenhe3462
      @stevenhe3462 9 หลายเดือนก่อน +8

      BSD also allows running programs in the kernel memory space.

    • @Comeyd
      @Comeyd 9 หลายเดือนก่อน

      @@stevenhe3462so can Linux en.wikipedia.org/wiki/EBPF

    • @ummijaan1448
      @ummijaan1448 8 หลายเดือนก่อน +2

      ​@@stevenhe3462but shouldn't that also be a security issue?

    • @qwoolrat
      @qwoolrat 8 หลายเดือนก่อน +2

      @@ummijaan1448 not if you know what a computer is

    • @ummijaan1448
      @ummijaan1448 8 หลายเดือนก่อน +45

      @@qwoolrat sorry bro i thought I knew what a computer is but turns out I don't. Sorry for wasting your time.

  • @Ragna6765
    @Ragna6765 9 หลายเดือนก่อน +216

    A manager went to the Master Programmer and showed him the requirements document for a new application. The manager asked the Master: "How long will it take to design this system if I assign five programmers to it?"
    "It will take one year," said the Master promptly.
    "But we need this system immediately or even sooner! How long will it take if I assign ten programmers to it?"
    The Master Programmer frowned. "In that case, it will take two years."
    "And what if I assign a hundred programmers to it?"
    The Master Programmer shrugged. "Then the design will never be completed," he said.

    • @albertoarmando6711
      @albertoarmando6711 9 หลายเดือนก่อน +15

      the tao of programming is a masterpiece

    • @maciejtrybilo
      @maciejtrybilo 4 หลายเดือนก่อน +2

      ...and one month if you put one good engineer on it.

  • @dealloc
    @dealloc 9 หลายเดือนก่อน +284

    Just a tiny technicality; Erlang uses "green" processes rather than green threads. Difference is that threads can share state, memory and address spaces, processes are isolated and share nothing (other than by copying values). Erlang implements its processes in its runtime system and is managed in its VM, rather than using OS threads or processes.

    • @sck3570
      @sck3570 9 หลายเดือนก่อน +14

      So are you saying that I should start to use Erlang?

    • @monad_tcp
      @monad_tcp 9 หลายเดือนก่อน +6

      Basically Erlang FORBIDS mutable state (stored in RAM)

    • @monad_tcp
      @monad_tcp 9 หลายเดือนก่อน +19

      @@SeanPoulter Its amazing how easy is to create massively scalable things with Erlang, like most of the heavy lifting is really the programming paradigm. I was reading the Ejjaberd source code and I was impressed how little code in relation to the runtime is necessary to create the core of what is Whatsapp.

    • @monad_tcp
      @monad_tcp 9 หลายเดือนก่อน +22

      Try doing that with C you might save a lot of memory, but you lose all scaling as well. Its almost like C is cheating by being unsafe with its memory model full of aliasing and sharing via the use of pointers.
      You are also going to need 35.000 engineers because C is a shit programming language that requires a lot of stupid work to manage the memory.
      Its ironic that computer were invented to automate industrial process, yet, the very own engineers working with computers decided to not industrialize the most boring and stupid programming task : managing memory. All because in 1970, the PDP11 only have like 8Kb of RAM or something...
      But Erlang coming from the telephony world don't use memory to process data, only to control process that control the data flowing in actual wires, that's the magic. Its the control-plane/data-plane separation.
      Stored program with mutable shared memory and big linear address space was a mistake, and its not even how hardware works anymore anyways, the so called "C" programmers don't even program bare-metal anymore, its all a fad, its only there for their ego or something, that a modern compiler has to make a modern computer look like a 1970's era PDP11.
      And we are forever going to be stuck in this memory model thanks to C and Unix and Intel.

    • @disguysn
      @disguysn 9 หลายเดือนก่อน

      ​@@sck3570if you want a more readable language you can use Elixir, which basically runs on Erlang.

  • @wlockuz4467
    @wlockuz4467 9 หลายเดือนก่อน +142

    That article screams AI generated.
    It describes a bunch of generic best practice things that you would expect from any succesful company.

    • @exShinra
      @exShinra 6 หลายเดือนก่อน +5

      I was thinking the same thing

    • @ChillerDragon
      @ChillerDragon 3 หลายเดือนก่อน +3

      Was about to write the same comment. Such a waste of time. Such a shallow and boring article I do not see how it deserved the youtube upload.

    • @sultanhanga
      @sultanhanga 2 หลายเดือนก่อน +4

      actually it didn't explain why and how WhatsApp could handle all that with just 30 engineers

    • @ben_sch
      @ben_sch 2 หลายเดือนก่อน +2

      Agreed. I learned nothing from this video. Glad I skipped 90% of it. Dev youtubers really should focus more on providing value with their article-based videos. Most of the time it's empty phrases like "if you've never worked on x problem....it's HARD! Like...actually hard" and other trivial statements. Feel like it's more about engaging the dev community by addressing obvious common concerns, struggles and frustrating experiences as a dev more than providing new insights

  • @EndermanAPM
    @EndermanAPM 9 หลายเดือนก่อน +159

    I was expecting more from the article tbh. Yeah, it lists some things, but it's just a lists of concepts that by now I think it's just standard good practices. (Aside from the lang choice and fBSD OS choice). I was expecting the article to go a little deeper. It's nice to know that they located and fix bottlenecks, but I wanted to know, how they identified, what was the issue and how that got fixed.

    • @cenowador
      @cenowador 9 หลายเดือนก่อน +25

      yeah, like, do they store the messages in a txt? how do they query that volume of data? that would be interesting to know

    • @sck3570
      @sck3570 9 หลายเดือนก่อน +56

      Exactly it was so generic, it was like someone had an assignment to write a 500 words essay

    • @trapexit
      @trapexit 9 หลายเดือนก่อน

      It's been a while but I'm pretty sure there are much more thorough articles on the topic of WhatsApp and their Erlang + FreeBSD setup.

    • @notliach
      @notliach 9 หลายเดือนก่อน +1

      Fear of telling too much and then having the information used against you later; fear of clones; industrial secret; or it just takes too much effort to ask the techs how shit is actually working.

  • @SabbraCadabra11
    @SabbraCadabra11 9 หลายเดือนก่อน +431

    Signal is fantastic, I absolutely love it. I wish more people were using it though

    • @PreciousOmegba
      @PreciousOmegba 9 หลายเดือนก่อน +36

      Just do a sponsored ad bro 😂

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  9 หลายเดือนก่อน +99

      agreed

    • @kevyyar
      @kevyyar 9 หลายเดือนก่อน +11

      Yeah I want to use it as well. But tell that to my fam, my friends and co-workers lol

    • @TheDanVail
      @TheDanVail 9 หลายเดือนก่อน

      @@kevyyarjust hack them, add signal to their phone, and then tell them they wouldn’t have been hacked if they had used signal.

    • @Sonerlag
      @Sonerlag 9 หลายเดือนก่อน

      They lost me when they added Cryptocurrencies as In-app Payments

  • @supratiksarkar6336
    @supratiksarkar6336 9 หลายเดือนก่อน +27

    When you don't have useless managers in between engineers can work like cake.

    • @romanmueller3479
      @romanmueller3479 5 หลายเดือนก่อน +6

      That is true for good and smart engineers. The average engineer needs a manager to tell him what to do. :D

  • @rag0a
    @rag0a 9 หลายเดือนก่อน +19

    Erlang is all about creating robust distributed systems as seamlessly as possible. The fact that it is functional and you can hot reload is secondary.

  • @MasterSamus
    @MasterSamus 7 หลายเดือนก่อน +5

    Most of those 50 billion messages are "Good Mornings!" and replies from India.

  • @marcusrehn6915
    @marcusrehn6915 9 หลายเดือนก่อน +61

    Having worked at Ericsson, I can tell you that they mostly dont use Erlang these days. Where I worked there was a lot of Scala and Akka, which is funny to me. One really cool feature of Erlang is that they could predict the amount of hardware needed. X amount of messages means Y hardware requirements, 2X messages 2Y hardware.
    But the coolest feature has to be the suicide pacts of processes

    • @bacon-SG
      @bacon-SG 9 หลายเดือนก่อน +9

      Akka is cool, if only wasn't running under JVM, and if I'm not wrong is just replicating what Erlang already does. Can't figure out why would they do that.

    • @homelessrobot
      @homelessrobot 9 หลายเดือนก่อน +1

      oh yeah I remember the suicide pacts -- 'links'.

    • @daumienebi
      @daumienebi 9 หลายเดือนก่อน

      And where are you working now? Or are you retiredd

    • @marcusrehn6915
      @marcusrehn6915 9 หลายเดือนก่อน

      @@daumienebi I work at Sinch

    • @marcusrehn6915
      @marcusrehn6915 9 หลายเดือนก่อน +2

      @@bacon-SG It's mainly funny to me because the Scala/Akka people often talk about Erlangs influence on them. But I agree, Akka is cool

  • @Opeyemi.sanusi
    @Opeyemi.sanusi 8 หลายเดือนก่อน +10

    If ADHD was a streamer

  • @kennethbeal
    @kennethbeal 9 หลายเดือนก่อน +1

    Thank you for showing where that meme came from, and the potential rapidity of meme generation and sharing. Love it! Am familiar with GIMP but your demo (about halfway through) produced much faster results.

  • @trapexit
    @trapexit 9 หลายเดือนก่อน +10

    @7:40 No, not really green threads. That article misrepresents what is going on in Erlang. Erlang is using actor processes and has practically a full OS like process scheduler. And because it is built into the language and platform it offers features not found elsewhere and often can't be found elsewhere when the feature is an afterthought.

  • @caschque7242
    @caschque7242 9 หลายเดือนก่อน +7

    That’s a cool blog post because it shows a text book development of a product.

  • @trapexit
    @trapexit 9 หลายเดือนก่อน +36

    While Erlang is functional it is perhaps the least important fact about the language and given the syntax and style of Erlang it is very procedural feeling. I find C/C++/Go/Java devs have little issue moving to it once getting used to replacing loops with maps, folds, and tail recursive functions.

    • @GOTHICforLIFE1
      @GOTHICforLIFE1 9 หลายเดือนก่อน +1

      Maps as in applying functions to iterable objects? I learned that Go call key/val pairs for maps after i learned that - So i'm wondering what the actual norm of maps actually is

    • @trapexit
      @trapexit 9 หลายเดือนก่อน

      @@GOTHICforLIFE1 map as in the high order function. Like fold. Check wikipedia for "map (higher-order function)". It is a function / behavior. Not a data structure.

    • @polle5555
      @polle5555 9 หลายเดือนก่อน +2

      @@GOTHICforLIFE1 Both are map, same word used for different things. But I would say more people would use map for applying a function to every element of a collection and call an associative array a dictionary.

    • @disguysn
      @disguysn 9 หลายเดือนก่อน

      It's the features around concurrency and distributing work between multiple machines that makes Erlang so great. I absolutely hate the syntax though

    • @trapexit
      @trapexit 9 หลายเดือนก่อน

      ​@@disguysnReally? I like its relative simplicity. It might be inspired by a rather unpopular and odd language (Prolog) I really never minded it. I certainly prefer it over a number of other functional languages... including OCaml. I think the pattern matching syntax is the nicest I've seen in any language.

  • @amisco333
    @amisco333 23 วันที่ผ่านมา

    First time coming across your channel. Loved the video. Subscribed 👍

  • @arafays
    @arafays 9 หลายเดือนก่อน +7

    okay I think I still am a javascript advocate but @ThePrimeTime is like the Red pill I needed because "You just pushed back 591 messages because you were off by a half millisecond"

  • @MichaelButlerC
    @MichaelButlerC 8 หลายเดือนก่อน +8

    I think perhaps another advantage that WhatsApp has (or had) was lack or server side storage? Generally messages were just sent and lived on client devices. When you went to a new device, if you didn't do a transfer yourself, you'd start fresh. I'm sure there was temporary storage but when you can cut out those huge database challenges you can save more engineering resources

  • @diegolikescode
    @diegolikescode 9 หลายเดือนก่อน +1

    BOE THAT WAS FUNNY kkkkkkkkkkkkkk thanks for the great article, as always

  • @freaklore
    @freaklore 9 หลายเดือนก่อน +15

    Behold the power of Erlang and Elixir. Functional programming is the future.

    • @airman122469
      @airman122469 9 หลายเดือนก่อน +3

      You know what’s really funny about that? That’s how programming kind of started in the first place.

    • @freaklore
      @freaklore 9 หลายเดือนก่อน

      Yes, the irony of it all. The way things are now is way over complicated than it should be. @@airman122469

  • @efkastner
    @efkastner 9 หลายเดือนก่อน +4

    Yahoo brickhouse (and the groups right around there) had the most influential people ever. I wanted to work there SO badly in the early 2000s!

  • @tullochgorum6323
    @tullochgorum6323 9 หลายเดือนก่อน +5

    I have a theory that pretty much any scale of software system can be produced if you stick just a handful of engineers in a couple of rooms. If it's a hard problem, give them £300k plus and hire the very best. It will still work out cheaper than 200 drones grinding away in their corporate cubicles. The effort of coordinating all those low skilled hacks and the quality control bureaucracy you'll need will cost far more than simply hiring good people in the first place.

    • @hydrilara
      @hydrilara 8 หลายเดือนก่อน +1

      I will follow this advice for my company, seems sensible and feasible,

    • @bos9824
      @bos9824 6 หลายเดือนก่อน +1

      where are they paying that kind of money in europe? lol

    • @tullochgorum6323
      @tullochgorum6323 6 หลายเดือนก่อน

      @@bos9824 According to the stats, £300k is around the median for a top-tier engineer in the US and £250k in the EU. If you want the best of the best, you'd have to pay a bit more than the median.

  • @jamesbell9627
    @jamesbell9627 9 หลายเดือนก่อน

    YES!!!! Love the shout out to Signal at the end. It is the best messenger there is, light-years beyond everything else. ❤❤❤❤❤

  • @catcatcatcatcatcatcatcatcatca
    @catcatcatcatcatcatcatcatcatca 9 หลายเดือนก่อน +17

    Joe Armstrong is such an inspirational talker and person. In many ways whatsapp was the perfect showcase of the core ideas of what Erlang was designed for. Instant messaging needs to be low latency, highly reliable and capable of handling partial failures. And it was pretty well defined: Do SMS but over IP, with few new capabilities such as user-defined profile pictures.

    • @gotoastal
      @gotoastal 9 หลายเดือนก่อน +2

      RIP

  • @remigoldbach9608
    @remigoldbach9608 9 หลายเดือนก่อน +11

    I watched the video just to see when FreeBSD is mentioned in the article. It’s one big reason of the performance !

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  9 หลายเดือนก่อน +7

      yeah, i have heard many a good things about it. i also know we use it extensively on our own boxes at netflix

    • @remigoldbach9608
      @remigoldbach9608 9 หลายเดือนก่อน

      @@ThePrimeTimeagen Netflix does contribute to the source code of FreeBSD, they got even more performance out of the network stack !
      Thanks for your reply, I’m honoured 😊

    • @hanes2
      @hanes2 9 หลายเดือนก่อน +2

      Yeah the network stack is blazing

    • @jayshartzer844
      @jayshartzer844 9 หลายเดือนก่อน +4

      Normally I have to pay for it. Thanks for letting me know about FreeBDSM

    • @sck3570
      @sck3570 9 หลายเดือนก่อน

      @@jayshartzer844

  • @romanmueller3479
    @romanmueller3479 5 หลายเดือนก่อน +1

    These are some crazy ass busy engineers to work through 50 billion messages per day.

  • @seeker4430
    @seeker4430 9 หลายเดือนก่อน +4

    4:02 i love that comment.. The difference between 32 and 2000 is about 2000

  • @spikespaz
    @spikespaz 9 หลายเดือนก่อน

    This is one of your best videos, and Flip as well.

  • @AlgoristHQ
    @AlgoristHQ 9 หลายเดือนก่อน +12

    I think that most shops should probably have between 3 and 40 devs depending on the depth of their app ecosystem. It doesn't make sense to have 600 or 40000 developers. That makes communication impossible...

    • @dejangegic
      @dejangegic 9 หลายเดือนก่อน +1

      Some projects have such a large scope that you need a team for every stream. And thus, you get 20 teams and can't figure out who owns which feature

    • @AlgoristHQ
      @AlgoristHQ 9 หลายเดือนก่อน +4

      @@dejangegic I disagree. I’ve been to big and small firms. You don’t need that many devs. You need better leadership.

  • @nefrace
    @nefrace 9 หลายเดือนก่อน +60

    This title sounds funny.
    Imagine 32 engineers sitting here and manually sending all those messages.
    And also it's sad that Telegram now goes on this path of "feature creep". It was a wonderful messenger and now it's full of social networking shit.

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  9 หลายเดือนก่อน +23

      signal is the way

    • @Cookiekeks
      @Cookiekeks 9 หลายเดือนก่อน

      Telegram never was a wonderful messenger, it's spyware

    • @zanez7953
      @zanez7953 9 หลายเดือนก่อน

      Telegram was always apooky

    • @catto-from-heaven
      @catto-from-heaven 9 หลายเดือนก่อน

      I like Signal's simplicity, but I wouldn't replace Telegram for it by any means. It's still really useful for communities, way better than Discord.

  • @EvanBoldt
    @EvanBoldt 9 หลายเดือนก่อน +3

    Would have been cool to see some specifics on bottlenecks and stuff.

  • @Wako_san91
    @Wako_san91 9 หลายเดือนก่อน

    1:20 "He double hockey sticks" is the most Flanders statement I've ever heard 😂

  • @NeonGreenT
    @NeonGreenT 9 หลายเดือนก่อน

    "classic 2008, everyone was there" 1:13 - I don't know why this cracked me up so much

  • @ilohnen
    @ilohnen 9 หลายเดือนก่อน +5

    Prime on CI/CD: "Everyone does that." (2008 btw)
    On the other end, here I am, trying to convince the company to let me implement pipelines in the repos while waiting for my boss to "deploy" with one-week delays using a copy-paste bash script, saying that it's good enough: 🤡

    • @bossgd100
      @bossgd100 9 หลายเดือนก่อน

      😂😂

  • @user-tb4ig7qh9b
    @user-tb4ig7qh9b 9 หลายเดือนก่อน +12

    Erlang elixir baby 😂

  • @Chaunton
    @Chaunton 4 หลายเดือนก่อน +2

    Signal was broken. They got all of Tucker Carlson’s chats.

  • @bulldogjob
    @bulldogjob 9 หลายเดือนก่อน

    Erlang was specifically designed to ensure reliable operation in network and telecom applications, so yeah... makes sense.

  • @tedchirvasiu
    @tedchirvasiu 9 หลายเดือนก่อน +17

    3:33 - True, with all due respect, at the end of the day it is a messaging app with not a whole lot of features. By its very nature it is easy to parallelize and scale. Most messages are sent between 2 people and the group limit is 1024 (compared to other apps such as Telegram which support 200.000 or Discord which supports 250.000 members or more). The app existed for over 14 years now, so plenty of development time went into it already. 32 engineers (especially talented ones) is a lot for a problem as narrow as this. Past a certain point you simply can't split responsibilities anymore and you don't wanna end up having 3 senior engineers solely responsible for styling the Send button.

    • @joaovmlsilva3509
      @joaovmlsilva3509 9 หลายเดือนก่อน +7

      There wasn't 32 people just for the client, aws didn't exist, and docker/kubernetes wasn't a thing

    • @tedchirvasiu
      @tedchirvasiu 9 หลายเดือนก่อน

      @@joaovmlsilva3509 I didn't assume there were 32 people just for the client, 32 engineers for the whole operation is a lot. And pretty sure they didn't require infrastructure to support 50 billion messages / day from launch day. Back in 2009 very few had smart phones world-wide. Now even people in starving 3rd world countries use smartphones and Whatsapp.

  • @jitx2797
    @jitx2797 9 หลายเดือนก่อน +3

    They missed DB
    Any idea about db that they were using?

  • @elmersbalm5219
    @elmersbalm5219 9 หลายเดือนก่อน +1

    There was Douglas Crockford gutting javascript and scavenging the good parts.

  • @DonAlcohol
    @DonAlcohol 9 หลายเดือนก่อน

    another thing about yahoo engeneers , of all the big name .commers, they were the only ones toe also register bitflip domain names , where the rest only rigistered the typo domain names ... they foresaw and closed that vulnerability long before anyone ever came up with abusing it

  • @SauravTiru
    @SauravTiru 5 หลายเดือนก่อน

    The article was like ughhh nothing great just textbook definitions slapped upon.

  • @AntranigVartanian
    @AntranigVartanian 9 หลายเดือนก่อน +2

    One important thing the author has missed: FreeBSD. it was very important for them to run FreeBSD for two reasons. 1. The co-founders were very familiar with the internals of FreeBSD. 2. The FreeBSD network stack was (and still is) way better than other open-source operating systems (e.g. Linux). They were able to support 2-3 million concurrent connections on a single commodity server.

    • @AntranigVartanian
      @AntranigVartanian 9 หลายเดือนก่อน

      hah, turns out the author DID mention FreeBSD :D should've watched the video completely before commenting :D

  • @JP-hr3xq
    @JP-hr3xq 8 หลายเดือนก่อน

    We have a very serious communication problem in our "team" right now. I put "team" in quotes because it's actually about 50 people in six work streams that are identical. It's so bad that I can't make any breaking changes to our API at all since it is practically IMPOSSIBLE to communicate with everyone involved in a certain feature since there is no central person who knows who is working on what since the six work streams actually all do the same thing and work on the same code base.

  • @anandsharma7430
    @anandsharma7430 9 หลายเดือนก่อน +2

    1:40 I still don't understand why YUI was not maintained. I mean NodeJS and React and all that are good, but nothing beats a well designed, single-source comprehensive JS framework. It was the JDK of Javascript.

  • @gonzalooviedo5435
    @gonzalooviedo5435 9 หลายเดือนก่อน +9

    I know it, Elixir is the way to go!, long live to Erlang!

    • @thepedrorriva
      @thepedrorriva 9 หลายเดือนก่อน +1

      I find Erlang syntax SO much better, is Elixir really he future? I have to make this choice.

    • @sck3570
      @sck3570 9 หลายเดือนก่อน

      is it faster than Erlang?

    • @trifalgarh
      @trifalgarh 9 หลายเดือนก่อน

      Instructions unclear accidentally learnt Go

    • @stevenhe3462
      @stevenhe3462 9 หลายเดือนก่อน

      @@sck3570 No. It compiles to BEAM byte code.

  • @joshyoerger5271
    @joshyoerger5271 9 หลายเดือนก่อน

    8:34 “Edge lord with a beard.” Got em. Rekt.

  • @gwaptiva
    @gwaptiva 5 หลายเดือนก่อน

    Small peeve: one does not eliminate bottle necks, one merely moves them to somewhere else

  • @D9ID9I
    @D9ID9I 2 หลายเดือนก่อน

    that's a lot of engineers for such tiny load

  • @emceha
    @emceha 7 หลายเดือนก่อน +1

    Feature creep can be harder than people think. One of the reasons why Linux is a thing, was Linus understanding that there has to be someone with power to say "No" to anything proposed.

  • @cern1999sb
    @cern1999sb 9 หลายเดือนก่อน +1

    At netflix you had less than 2000 engineers. That's not a comparison, you had 2 orders of magnitude more engineers

  • @MichaelButlerC
    @MichaelButlerC 8 หลายเดือนก่อน +1

    I love that he got rejected by Facebook, then they acquired his company --7 years later for billions... I've heard it described before as the "most expensive hire ever" 😅

  • @neunmalelf
    @neunmalelf 9 หลายเดือนก่อน +1

    The ONE THING BUILT WELL from Amazon was the idea behind AWS. Amazon the shop is just a (self paying) self Advertising for AWS 😉

  • @batlin
    @batlin 9 หลายเดือนก่อน

    Love that ending.

  • @hawkingradiation3774
    @hawkingradiation3774 9 หลายเดือนก่อน

    i always wondered this but couldnt find any anwer so here i am, why there is no netflix app for mac?

  • @burhanuddinrashid891
    @burhanuddinrashid891 29 วันที่ผ่านมา

    A part of how scalable the backend system is, we miss an important point here: the offline-first app. It's very hard to build an offline-first app even today, where we have the majority of problems already solved by third-party SDKs and packages.
    Building a seamless offline app in 2008 is some level of engineering to marvel at.

  • @muyewahqomeyour7206
    @muyewahqomeyour7206 3 หลายเดือนก่อน +1

    JavaScript catching the stray 😂

  • @danirogerc
    @danirogerc 5 หลายเดือนก่อน

    I cried at the Jan impression

  • @rogsiel
    @rogsiel หลายเดือนก่อน

    Wish Telegram shared more insight into their operation. Apparently they too have 30 engineers and no HR team. Mind blowing

  • @monad_tcp
    @monad_tcp 9 หลายเดือนก่อน +2

    The reason the are able to do that is precisely because they only have 32 engineers.

  • @akshatkotpalliwar
    @akshatkotpalliwar 29 วันที่ผ่านมา

    i dont know how much i get offended when ever out of nowhere primeagen calls out javascript

  • @doltramir
    @doltramir 9 หลายเดือนก่อน +12

    SMS in Ukraine is still expensive. We pay for every 100-200 messages, depending on provider. And 100 messages is equivalent in price to 50Gb of internet, on my provider.

    • @catto-from-heaven
      @catto-from-heaven 9 หลายเดือนก่อน +1

      Why are you still paying for them?

    • @doltramir
      @doltramir 9 หลายเดือนก่อน

      ​@@catto-from-heavenFortunately I am not paying for them. But there are not that many plans, that do not have SMS included. There is an option to make your own plan, but its base cost is higher, than my whole plan. So, we just look for what is closest to what we need. And even then, we still get some things, that we do not use, nor need, but are still forced to pay for. My plan, for example, has 250 minutes per 4 weeks, to call other providers' numbers. Even if I use 10-12 of them at most, I still pay for them, as there is just no better plan, that suits my needs. And there are plans, that have 400 and even 600 SMS, that cost 8-12 times of my plan. There's a lot of them actually. If you have good internet - it's 99% that you'll get a ton of useless SMS with it. I literally never even once heard of anyone, who would use SMS, even if their plan provides them (and it usually does). Though, I get 3-4 daily spam ads via SMS. So yeah, people do not use it. The ad companies do. But we are still paying for them.

    • @uadev
      @uadev 7 หลายเดือนก่อน

      But no one uses them

  • @jonathan-._.-
    @jonathan-._.- 7 หลายเดือนก่อน

    post makes it sound like the engineers hand delivered each message

  • @sasukesarutobi3862
    @sasukesarutobi3862 9 หลายเดือนก่อน

    Rare Signal W, which is not what I was expecting in a video about WhatsApp

  • @HyperionStudiosDE
    @HyperionStudiosDE 9 หลายเดือนก่อน

    Signal's UI looks like Fisher-Price, though. Can't get myself to use it, let alone convince others which is always a problem when switching a messaging app.

  • @systemdesign42
    @systemdesign42 9 หลายเดือนก่อน

    hey, thanks for reading my newsletter post :)

    • @tcc1234
      @tcc1234 9 หลายเดือนก่อน

      It looks like AI generated (no offense). Looked like those generic "best practises" articles...
      You could've made it more technical provided you had more information at hand.

  • @okgoogle4206
    @okgoogle4206 9 หลายเดือนก่อน +1

    1 ms is a long time in computer science

  • @vnshngpnt
    @vnshngpnt 9 หลายเดือนก่อน

    But yeah good video. And yes, FP shines through baby ❤

  • @zestynotions
    @zestynotions หลายเดือนก่อน

    haha for those os us old enough to remember SMS was FREE (Yes you read that right!) then some realized the traffic and said " I want to be rich so lets charge for this free service " and thus they became rich.

  • @techsuvara
    @techsuvara หลายเดือนก่อน

    There’s a difference between public data and content moderation, compared to a stored db of data.

  • @MegaMurcelago
    @MegaMurcelago 9 หลายเดือนก่อน

    The wild thing - mesage with Whatsapp API cost more than a SMS

  • @thisandthatguy1156
    @thisandthatguy1156 9 หลายเดือนก่อน +1

    Telegram is great too without group size limitations like WhatsApp. Wonder how they engineered it.

  • @jackhales6179
    @jackhales6179 9 หลายเดือนก่อน

    Nice 10:30PM Sydney release

  • @SurfsUpSeth
    @SurfsUpSeth 9 หลายเดือนก่อน

    Bruh you’re the doc of the programmer stream world 😂

  • @Gleem
    @Gleem 5 หลายเดือนก่อน

    Just async it all and you only need 1 engineer.

  • @mikayilgacek
    @mikayilgacek 9 หลายเดือนก่อน

    The Arnold accent killed me

  • @timothyvandyke9511
    @timothyvandyke9511 9 หลายเดือนก่อน

    Ty for Signal shoutout.

  • @fuzzy-02
    @fuzzy-02 9 หลายเดือนก่อน

    4:46 this is pure gold. Lmao

  • @edumorangobolcombr
    @edumorangobolcombr 9 หลายเดือนก่อน +2

    SMS were so expensive in Brazil back then that even now that it is cheap people only use WhatsApp. And some of less tech ones savvy don’t event know what an sms is

    • @luskira
      @luskira 9 หลายเดือนก่อน +1

      huehue brbr

  • @krox477
    @krox477 8 หลายเดือนก่อน

    Whatsapp is the result of when you put curious and smart people in room together

  • @Christian-ry3ol
    @Christian-ry3ol 9 หลายเดือนก่อน

    Wait until he learns WA uses Signal's encryption

  • @WiseWeeabo
    @WiseWeeabo 6 หลายเดือนก่อน

    Wow, that means each engineer handled 1.5 billion messages just by himself.
    Must have taken him ALL DAY!

  • @patternwhisperer4048
    @patternwhisperer4048 15 วันที่ผ่านมา

    Yahoo were pioneers in scaling early day web setvices, so the statement about how early day engineers were among the greatest of their time doesn't surprise me

  • @Aplysia
    @Aplysia หลายเดือนก่อน

    Meanwhile, I can't get my leadership to add a third engineer.

  • @paulwillisorg
    @paulwillisorg 4 หลายเดือนก่อน

    Signal TRULY is not secret from the NSA.

  • @Elfcheg
    @Elfcheg 27 วันที่ผ่านมา

    14:56 bless you!

  • @Mentioum
    @Mentioum 9 หลายเดือนก่อน

    Most of YC's original partners were from Yahoo too.

  • @codewithfelix3940
    @codewithfelix3940 4 หลายเดือนก่อน

    best reaction vid frm u

  • @vnshngpnt
    @vnshngpnt 9 หลายเดือนก่อน

    The saddest part of this video Yahoo being king of the internet and somehow losing everything

  • @hkravch
    @hkravch 9 หลายเดือนก่อน

    Small team of 32 engineers 💀👀

  • @jairajsahgal7101
    @jairajsahgal7101 8 หลายเดือนก่อน

    thank you

  • @MenkoDany
    @MenkoDany 9 หลายเดือนก่อน

    "Mo nads, less problem" HA

  • @nikilpatel1730
    @nikilpatel1730 7 หลายเดือนก่อน

    Signal is good but the other person also needs to use that.

  • @oddmerlin9797
    @oddmerlin9797 9 หลายเดือนก่อน

    1:30, it is a thing! yahoo used to have all the best engineers!

  • @Alkis05
    @Alkis05 6 หลายเดือนก่อน

    He clearly didn't do enough leet puzzles to get into facebook. That's probably what happened.

  • @laughingvampire7555
    @laughingvampire7555 9 หลายเดือนก่อน +11

    everyone has green threads because they were copying Erlang, even the Go guys knew about Erlang but Erlang is even better than Go, Rob Pike also recommends Erlang.
    Erlang code always lives in a green thread, and all of their green threads are individual erlang runtimes with their own heap so when you kill one of them you are automatically collecting garbage, giving Erlang "arenas" by default.
    Erlang's hot reloading works due to always running on a green thread, because they can load v1 and v1.1 in different threads, last time I checked it had only support for 2 simultaneous versions.

    • @dealloc
      @dealloc 9 หลายเดือนก่อน +3

      Erlang code lives in Erlang processes (or "green processes") since they are isolated and cannot share state, unlike threads.

  • @GameBully2K
    @GameBully2K 4 หลายเดือนก่อน

    Gaven Bilson was at yahoo at that time that's why