Factorio teaches you software engineering, seriously.

Поділитися
Вставка
  • Опубліковано 8 тра 2024
  • / tonybutpatreon
    / tonybutx
    / tonyneedsattention
    / tonybutlive
    A video essay about how Factorio shares an incredible amount of similarities with Software Engineering and Computer Science. And how playing the game makes you a Software Engineer! (kinda sorta really).
    If you're feeling ~especially~ generous, feel free to check out my Amazon wish list: www.amazon.com/hz/wishlist/ls...
    Unless otherwise specified, all assets (besides logos) are either licensed legally through Envato Elements (not sponsored just paranoid) or self-created.
    Business Inquiries: doyouhavemoneyfortony@gmail.com
  • Ігри

КОМЕНТАРІ • 5 тис.

  • @TonyZhu
    @TonyZhu  5 місяців тому +2804

    Man this is the best fking community ever, ya'll are too nice and so freaking wholesome

    • @itsjustrobby
      @itsjustrobby 5 місяців тому +6

      This is such a good video. Thank you!

    • @teknoid5878
      @teknoid5878 5 місяців тому +5

      And the game is like a decade old, but still great with DLC quality mods. Already a month on K2 + Space exploration, still half of the tech tree. :D

    • @Sunneyred
      @Sunneyred 5 місяців тому +10

      Great video youre gonna blow up dude keep uploading it will happen, you earned my sub

    • @teaser6089
      @teaser6089 5 місяців тому +5

      The Factory Must Grow

    • @santi_z48
      @santi_z48 5 місяців тому +3

      U da 🐐

  • @DoshDoshington
    @DoshDoshington 5 місяців тому +11476

    Being a software engineer turned me into a Factorio Player

    • @pyaehtetaung
      @pyaehtetaung 5 місяців тому +196

      I dream to be a game dev. I think I will turn into a Factorio player when dlc is released. 😅

    • @TonyZhu
      @TonyZhu  5 місяців тому +734

      Dosh ooc have you had any success with talking to your fans' moms?
      Huge fan btw.

    • @TheCheese117
      @TheCheese117 5 місяців тому +51

      Teach me how to play space exploration Dosh 🙏

    • @mg-by7uu
      @mg-by7uu 5 місяців тому +9

      Me too but only when I don't have enough jobs to fill my brain to capacity.

    • @KreyMcKii
      @KreyMcKii 5 місяців тому +27

      Being a Factorio player will have turned me into a software engineer(if I can stop playing Factorio for long enough and actually pass my exams)

  • @enyakstew7107
    @enyakstew7107 4 місяці тому +4149

    Playing factorio gave me the idea of pursuing software engineering. After 3 years as a Software engineer, I finally reached my goal, which is to get better at Factorio.

    • @chadwells7562
      @chadwells7562 4 місяці тому +24

      😂

    • @piemaster6512
      @piemaster6512 4 місяці тому +120

      The factory MUST grow.

    • @austin-poole
      @austin-poole 4 місяці тому +40

      Factorio > $500K package from Netflix 😂😂

    • @sailorjune2121
      @sailorjune2121 4 місяці тому +5

      Same but with bitburner

    • @kh4i2h4r3
      @kh4i2h4r3 4 місяці тому +7

      esport is a thing, now lets make Factorio a courses too....or maybe it already did....

  • @alexcrouse
    @alexcrouse 3 місяці тому +526

    The new invention that blows my mind in this video is: a funny software engineer.

    • @nuisanceguru
      @nuisanceguru Місяць тому +12

      he's had the luck of not being an electrical or computer engineer

    • @tomchambers4537
      @tomchambers4537 13 днів тому +6

      Yeah seriously this is like a different angle of micheal Reeves. If this guy keeps at it and improves he could actually do really well on here.

  • @rashkavar
    @rashkavar 7 днів тому +27

    One thing that's worth noting: a lot of these shared terms actually come from a third, much older discipline called industrial engineering. Which is pretty much playing Factorio for real. Say you're running a textile business in the early industrial revolution. You work with linen, so you buy flax, you have to break it down into fibres, you have to spin those fibers into thread, you have to run that thread through a loom to make fabric, and you need to bundle that fabric up into bolts to be sold. And to make things complicated, you also make bedsheets and tablecloths, so you also do some sewing using thread and fabric to make your sheets and tablecloths. (No idea if these were available off the shelf in those days, I know clothing generally wasn't, but this is just to make a point.
    Ok, so you've got a facility that produces thread and fabric. How many spinning jennies do you need? How many powered looms? What kind of steam engine do you need to run all that? And because the steam engine is noisy and disrupts the people who are sewing your sheets and tablecloths, you have them in a different facility - how often do you need to cart a shipment from your textile factory to your sewing people. The only facility available for this was across town, did you decide to transport your stuff all the way across town, or just pay some folks living nearby to make product for you in their own homes? If you did the latter, how are you managing your deliveries of materials and picking up of product?
    These are literal business decisions that have had to be made pretty much since the advent of the factory in its earliest form, and have been studied by actual engineers for a similar length of time. I still have my notes from that class!

    • @sergiod3v
      @sergiod3v 2 дні тому

      great comment, very interesting, thank you!

    • @PhazerTech
      @PhazerTech 2 дні тому +2

      You could compare Factorio to pretty much any process that humans do, some which have existed for thousands of years. For example, farming. People have been trying to optimize farming since the beginning of time. More food = good. But it's not that simple, it requires a bunch of little details and other smaller tasks to do. Someone could probably do a 1 hour video comparing all the similarities with Factorio and farming.
      Also there have been plenty of games before Factorio which are essentially the same thing. Off the top of my head Sim City and Roller Coaster Tycoon. At the end of the day it's just management. I think it's fun that people are comparing Factorio to software engineering but at the same time some people might be taking this too seriously.. the reality is learning Factorio doesn't make you a software engineer. There are a ton of other skills required to be a successful engineer.

  • @Trupen
    @Trupen 4 місяці тому +2763

    Factorio is like the best part of programming turned into game
    Which literally makes it a crack for engineers...

    • @loltroll2
      @loltroll2 4 місяці тому +168

      You can never watch a Factorio Video in peace... everytime you find out TRUPEN WAS ALREADY HERE!

    • @kyand920
      @kyand920 4 місяці тому +40

      Trupen is everywhere.

    • @Jakub-vv2sc
      @Jakub-vv2sc 4 місяці тому +39

      He's like Big Brother who watching all factorio comiunity

    • @Trupen
      @Trupen 4 місяці тому +77

      @@loltroll2

    • @daze8410
      @daze8410 4 місяці тому +8

      I would like two cracks please

  • @GKRainwater
    @GKRainwater 5 місяців тому +1718

    My mom really liked this video

    • @aa898246
      @aa898246 5 місяців тому +28

      your mother is a really nice person

    • @mattshu
      @mattshu 5 місяців тому +16

      she's a nice lady

    • @noname-dj7vj
      @noname-dj7vj 5 місяців тому +37

      Can confirm, I am his mother and I like this video

    • @LinkRammer
      @LinkRammer 5 місяців тому +3

      Cap

    • @s0kulite
      @s0kulite 5 місяців тому +13

      Can confirm, I am his brother and my mother liked this video.

  • @privatesocialhandle
    @privatesocialhandle 15 днів тому +90

    Bro is so charismatic I only caught that he's wearing socks mid vid.

    • @SUpeREleCtRoSTaLIN
      @SUpeREleCtRoSTaLIN 7 днів тому

      My eyes was on hes cool socks. Video stats ending and i realize he is cool asian guy.

    • @SUpeREleCtRoSTaLIN
      @SUpeREleCtRoSTaLIN 7 днів тому

      My comment here was deleted. Did i say something wrong? I just make reverse socks joke :(

    • @robertdracosu8115
      @robertdracosu8115 День тому

      me too

  • @jk_lol9266
    @jk_lol9266 10 днів тому +18

    bro, the attention aid you added to the "Storytime" section unironically kept me engaged and listening to the entire story. Idk why I'm so impressed by this, but i am.

  • @programmer437
    @programmer437 5 місяців тому +1320

    If you build city blocks, you’re heavily into object oriented languages. If you build main bus, you code procedurally. If you build spaghetti, you code in perl.

    • @angeldude101
      @angeldude101 5 місяців тому +15

      What style would be best suited for a functional programmer?

    • @programmer437
      @programmer437 5 місяців тому +98

      @@angeldude101 - functional and procedural are sortof two sides of the same coin in my opinion. But I think a functional programmer would lean slightly more towards city blocks, or at least dedicating certain areas of the base to certain things.
      A true Object oriented developer who understands things like super classes and inheritance might lean towards more generic blocks (mining block, chemical block) that can fit multiple needs while functional programming would be more specific (electric motor block, light oil block, etc).

    • @TonyZhu
      @TonyZhu  5 місяців тому +128

      Pretty solid analogy and interesting thoughts! Definitely am thinking more about functional programming after reading these comments :)

    • @angeldude101
      @angeldude101 5 місяців тому +23

      @@programmer437 Functional programming is largely about composing small pieces into larger blocks. This sounds more like creating blueprints for each individual recipe and then plugging the output of one directly into another before blueprinting the whole thing as another block.

    • @haraldbackfisch1981
      @haraldbackfisch1981 5 місяців тому

      But the train is the main bus, or is this Rust then?

  • @entangledatoms7153
    @entangledatoms7153 4 місяці тому +509

    Imagine taking a Software Engineering class and the teacher just gives you a computer that has Factorio on it.

    • @mistowasabi5443
      @mistowasabi5443 2 місяці тому +5

      Highschool freshman year, and the dots are just clicking softmore year of college 👍

  • @AtraxX98
    @AtraxX98 3 місяці тому +39

    I was confused when you told that story that I didn’t see the cutting soap video first. But when I saw it and red the subtitles I laughed SO HARD. You’re probably becoming one of those UA-camrs who rarely upload but when you upload it’s something unique and a lot of fun to watch.

  • @AB-nu7wr
    @AB-nu7wr 2 місяці тому +105

    Stylistically....don't change a thing, I was absolutely hooked all the way through and LOVE this format. (Thank you for the "attention" videos during story time 6:24 )
    As someone about to embark on their software engineering journey, I hope you continue to make this kind of content!

  • @MuhsinFatih
    @MuhsinFatih 5 місяців тому +1183

    I'm a software engineer and you just convinced me to play factorio. Not even kidding

    • @TonyZhu
      @TonyZhu  5 місяців тому +288

      As I said in another comment, please consider carefully about this - especially if you have real life responsibilities like eating and sleeping! Half jokes aside, I'm happy to hear that I'm making an impact in the Factorio AND software engineering community. Thank you for commenting!!

    • @Spheraz
      @Spheraz 5 місяців тому +67

      just doing your job in another format without the part where you get paid lmao

    • @jmatya
      @jmatya 5 місяців тому +68

      It has been 14 hours now, please consider going to the toilet and get some sleep

    • @galfisk
      @galfisk 5 місяців тому +5

      Factorio is seriously fun, but I found it a bit limiting that there is a clear "best" way to do many things, just by figuring out the ratios of production and consumption. I enjoy the constrained freedom of the Zachtronics games even more, and have finished SpaceChem and started TIS-100 and Shenzhen IO so far. Kerbal Space Program is also a ton of fun, though it lacks consistent goals and challenges (I find many of the procedural contracts to be soulless) - but you can set your own or accept those set by others to infinity.

    • @dripthanos5595
      @dripthanos5595 5 місяців тому +8

      @@galfisk i mean sure there is the "best" way, but there are so many ways of achieving that "best" way.
      personally i like making my production into fractions of 900, since thats the normal belt speed per minute

  • @michaelclifton2436
    @michaelclifton2436 4 місяці тому +955

    Bros got some clean editing skills. This video must have taken forever.

    • @TonyZhu
      @TonyZhu  4 місяці тому +138

      It did lol, all I remember is blacking out and waking up 2 weeks later with those socks on and a finished video

    • @blackcitadel37
      @blackcitadel37 4 місяці тому +10

      Worth the effort

    • @ICanHazRecon911
      @ICanHazRecon911 4 місяці тому +8

      @@TonyZhu socks were worth it

  • @somebodyspecial5663
    @somebodyspecial5663 3 місяці тому +10

    Can't wait for the next vid!!! Seriously I was enthralled for the entire video, you're such a good presenter.

  • @Hyperbaric_Lyric
    @Hyperbaric_Lyric 2 місяці тому +8

    Thank you for this. Obviously im addicted to Factorio and always felt so dumb when it comes to computers. Your casual approach to teaching is SO helpful when setting up an emotional openness to new knowledge. I understood ever part of this video and had a GREAT time watching it. Amazing job!

  • @Lithane97
    @Lithane97 5 місяців тому +543

    If you really want to understand the sickness that is factorio, one of the recent changelog notes for the game mentioned the need to up the max save file time played from 2 ish years because someone hit that number awhile back and overflowed some variables, causing their save game to essentially be paused. The devs then decided to do the logical thing and increase the possible save file time played to over 2 million years. The factory must grow.

    • @TonyZhu
      @TonyZhu  5 місяців тому +73

      Good lord what a story lol, thanks for sharing

    • @iamjimgroth
      @iamjimgroth 4 місяці тому +13

      Nobody will ever need more than 2 years! 😁

    • @KatieDawson3636
      @KatieDawson3636 4 місяці тому +23

      Nothing has made me hope that humanity has a continuous computing ability for the next 2 million years before....

    • @toddstephenson9849
      @toddstephenson9849 4 місяці тому +7

      Steam says I have 16,000 hours playing Factorio. My big world is running all the time, I never shut it off.

    • @falconking9091
      @falconking9091 Місяць тому

      ​@@toddstephenson9849ok you're closer to 2 million than I am. I think I'm gonna try your strategy.

  • @14setsofingrownmolars29
    @14setsofingrownmolars29 4 місяці тому +665

    Train signals are probably a great way to talk about mutual exclusion and deadlocks when dealing with multi-threaded programs!

    • @aladeenzweipunktnull
      @aladeenzweipunktnull 4 місяці тому +35

      There is a reason why it is called semaphore ;)

    • @violatorut2003
      @violatorut2003 4 місяці тому +6

      I wish he would do a video about that because that's the part I struggle with. Train signals, I mean.

    • @NaoyaYami
      @NaoyaYami 4 місяці тому +11

      @@violatorut2003 Before intersection - chain signal. After intersection - regular signal.
      Since chain signals combine with regular signals to create single blocks (they are separate to the game but they function as one, so same thing) make sure that after every regular signal there's a space for the largest train you expect to travel through it (so that it's ass won't take space on block before, potentially causing dead lock on intersection).

    • @gameringdudeguy1126
      @gameringdudeguy1126 4 місяці тому +3

      after dealing with train signals very early and a lot, i feel like a godlike being for even understanding how city block rails work

    • @Koruvax
      @Koruvax 4 місяці тому +3

      Trains are the great divider in my experience. Up until them it's a lego set, mash it together and it works. Then you dip your toe into using train lines. You've been on trains, they just trundle along. You've balanced conveyors all day long, how hard can trains be? And BOOM, completely new puzzle. Completely new puzzle, with so few parts, yet so much fun to solve!

  • @evanfisher64
    @evanfisher64 24 дні тому +3

    This is amazingly put together, I was hooked all the way through!

  • @user-cz1yu1tc8e
    @user-cz1yu1tc8e Місяць тому +3

    You scale your factory, at some point something stops working, you invent a new design, you scale futher, repeat. Just like in software engineering.

  • @matthewhambacher8249
    @matthewhambacher8249 5 місяців тому +742

    Okay so first, I learned what it's like to play Factorio with friends. Then I learned how NOT to play Factorio with friends (by learning what it's really like). But now I'm learning that playing Factorio will make me a software engineer? Incredible, this truly is one of the games of all time.

    • @TonyZhu
      @TonyZhu  5 місяців тому +74

      Indeed, a game they will continue to speak of for at least a few weeks to come!

    • @LuaanTi
      @LuaanTi 5 місяців тому +39

      It's especially great in showing how software engineering works in multiplayer :P

    • @bartoszdobija2069
      @bartoszdobija2069 5 місяців тому +33

      playing factorio with friends is like constantly deploying to production without testing

    • @needs_more_dakka5774
      @needs_more_dakka5774 5 місяців тому +1

      The factory must grow.

    • @galfisk
      @galfisk 5 місяців тому +2

      The factorio must growio.

  • @heyitskae
    @heyitskae 4 місяці тому +500

    My experience in Factorio has led me to a singular conclusion: I am not fit to be a software engineer.

    • @birchcove8454
      @birchcove8454 4 місяці тому +5

      lol same, though this video makes me want to try again

    • @iCookCrystalMeth
      @iCookCrystalMeth 4 місяці тому +16

      @@birchcove8454likewise except i’ve never played it. pull me out if my brain grows too large brothers

    • @dezimo
      @dezimo 4 місяці тому +8

      You can be a professional software engineer and still suck at Factorio!

    • @kotzpenner
      @kotzpenner 4 місяці тому +3

      It’s all fine until wiring comes up

    • @prome3439
      @prome3439 4 місяці тому +9

      Played it with some friends. After first or second science i build myself a 4x4 belt and watched myself rotate. I couldnt comprehend it anymore.

  • @RavenHavice
    @RavenHavice Місяць тому +1

    This video is put together so well that I'd be glad to watch another one

  • @nickdavidson8359
    @nickdavidson8359 3 місяці тому +1

    Dude this was excellent. I can clearly see all the parallels you draw here. You should definitely make the next one.

  • @thiccvicx
    @thiccvicx 4 місяці тому +774

    I'm a med student who just started playing the game today while procrastinating studying for an exam on monday. I immediately began to compare it to the systems in biochemistry and physiology.

    • @TonyZhu
      @TonyZhu  4 місяці тому +140

      rip exam scores :'(

    • @toddstephenson9849
      @toddstephenson9849 4 місяці тому +22

      Soon you will give up on Medicine and only play Factorio... Welcome! 🤭

    • @lucasmarques226
      @lucasmarques226 4 місяці тому +13

      I feel the same way when playing it because, if you notice, both physiology and biochemistry use visual schemes to describe their organized pathways for better understanding. It's almost the same as creating a clean code that you can easily debug later if necessary. But you'll notice more similarities with Factorio when you start studying pharmacology and treatment flowcharts, because they're just algorithms that teach you how to treat someone based on their signs and symptoms.

    • @lucasmarques226
      @lucasmarques226 4 місяці тому +2

      but bro, quit this game and focus on your course 😂

    • @someguy3176
      @someguy3176 4 місяці тому +3

      If you're a student, be careful with this game...

  • @lvutodeath
    @lvutodeath 5 місяців тому +286

    "I know that this is cringe"
    This is what UA-cam supposed to be. You making videos that you like and share it with others that also might like.
    Keep making videos man! I love the content!

    • @TonyZhu
      @TonyZhu  5 місяців тому +26

      Man really appreciate it! It's really heartwarming to read comments like this, thank you!! Seeing all the positive responses really make me want to double down on this :)

    • @liliumbellsong8851
      @liliumbellsong8851 5 місяців тому +7

      you dropped this👑

  • @sarthakdravid8405
    @sarthakdravid8405 День тому +2

    Back in school, for my final science exam, i had a question on how a nuclear reactor works, I didnt study that part, I was an 8 mark question out of a 60 mark paper, I wrote down how a reactor works in factorio, I got 6 marks out of 8

  • @kellanusher5052
    @kellanusher5052 4 місяці тому

    Thanks for making this video! Stupendous quality! So much so that I was surprised that it is among the first of your videos here on UA-cam. Keep up the great work!

  • @Costel9000
    @Costel9000 5 місяців тому +339

    Change NOTHING to this format, it's brilliant!
    The pacing, the jokes, the knowledge break-down, everything just right! *chef's kiss*

    • @emreapaydn4064
      @emreapaydn4064 5 місяців тому +2

      Exactly!

    • @WhizPill
      @WhizPill 5 місяців тому

      @@emreapaydn4064instant subbed

  • @CornusHolius
    @CornusHolius 5 місяців тому +241

    I came to learn a little about software engineering, I stayed to figure out who the hell has been talking to my mom on Facebook. This was highly entertaining, good work.

    • @TonyZhu
      @TonyZhu  5 місяців тому +6

      Lol great comment, thanks for the support!

  • @Diacred
    @Diacred 3 місяці тому

    Very cool parallel, I think this is a great visual guide to better understand the basics the big concepts of software engineering. Kudos to you!

  • @DeltaOmega553
    @DeltaOmega553 2 місяці тому

    This was fun and entertaining. I really appreciate the comparisons and connections you made between the two. Nice work 😄

  • @colinwong1059
    @colinwong1059 4 місяці тому +490

    My love for factorio got me to start exploring software engineering at a really young age!
    I am now a psych major.

    • @TonyZhu
      @TonyZhu  4 місяці тому +100

      Lmao well done, I’m glad at least one of us is actually getting their problems solved

    • @smoove2303
      @smoove2303 4 місяці тому +47

      @@TonyZhuthat’s a funny assumption you think psychologists have there shit together

    • @djordje123king
      @djordje123king 4 місяці тому +25

      @@TonyZhu It's a cardinal sin for a psychologist to diagnose themselves, it's a treasure they guide others to

    • @yashaswikulshreshtha1588
      @yashaswikulshreshtha1588 4 місяці тому +1

      @@TonyZhu I didn't think I'd end up in a medicine program :(

    • @gogauze
      @gogauze 4 місяці тому +4

      I actually finished my psych programs and practiced for a while (disabled now, meh). Then I got interested in software for the fun, and now I'm about to download factorio. RIP

  • @GigaCraft-420
    @GigaCraft-420 5 місяців тому +581

    I'm so jealous there is a guy that has played Factorio 12k hours more than me

    • @TonyZhu
      @TonyZhu  5 місяців тому +144

      Idk man, maybe god stays in the sky because he fears he’ll be the only one to remember the sun once we all get +12k hrs in Factorio

    • @owholypwner3548
      @owholypwner3548 5 місяців тому +32

      i was playing Factorio with mods (krastorio, space exploration) and ow boi, the systems get so bananas that i have to play for one hour just to rediscover what i was doing haha

    • @userisamonkey
      @userisamonkey 5 місяців тому +7

      Modded players man, they're on a different level. Bob's and Angel's runs can go for an eternity

    • @Soken50
      @Soken50 5 місяців тому

      @@owholypwner3548 As a Pyanodon's mods player, ToDoList and Foreman2 are my best friends

    • @-minushyphen1two379
      @-minushyphen1two379 5 місяців тому +1

      @@owholypwner3548 I modularized my Nullius base with trains, so it’s easier to keep some things in mind, but building the whole factory after physics science packs took a long time, with all the intermediates, so I stopped doing it

  • @radpechi
    @radpechi 4 місяці тому +1

    Definitely refreshing to watch a video like this again, I haven't seen your other videos but in my opinion it's a great balance of entertainment and knowledge/seriousness. It's a great style and format, especially when compared to some videos nowadays that are either too chaotic or too stretched out.😂

  • @user-ku1ho9wu9z
    @user-ku1ho9wu9z 3 місяці тому +8

    I know I'm a bit late to this party, but I got words. As someone who knows basically nothing about software engineering or Factorio, this video made me want to get into both at the same time. I want to have the game open in one window and my IDE in another. You are a fantastic content creator; seriously. You have the relatability and charisma that is generally needed for this platform, as well as a knowledge of the subject matter that not only enables you to understand it, but to explain it to someone who hasn't been initiated to your field of knowledge. This stuff is golden, man. Please please please make more. I'm lovin' it. For some reason my username is defaulting to that auto-generated garbage. I don't know why.

  • @migillett
    @migillett 5 місяців тому +271

    I was a video editor for 15 years. I have 600+ hours in Factorio. I am now a software developer. You are correct.

    • @swazgaming3181
      @swazgaming3181 4 місяці тому +13

      I was a developing software. Played 1k hours in Factorio after taking a break from developing software. I am now trying to edit videos. xD

    • @migillett
      @migillett 4 місяці тому

      @@swazgaming3181 hey, do both! I do a lot of work with ffmpeg at work. Automate those video edits.

  • @avi7278
    @avi7278 5 місяців тому +82

    God I would love to see someone put 4,000 hours of Factorio on their resume.

    • @ecogreen123
      @ecogreen123 4 місяці тому +8

      "best i can do is 1000 hours of factorio" "your fired"

    • @showtun1_655
      @showtun1_655 2 місяці тому +2

      “Work or factorio, you can only have one”

  • @mikebarber8871
    @mikebarber8871 3 місяці тому +2

    Such a funny and insightful video! And I love that you just casually did it in your xmas socks!

  • @Warkrunner
    @Warkrunner 2 місяці тому +4

    In manufacturing: a bottleneck is a process that holds up production somewhere in the assembly line. Sometimes a bottleneck's root cause is due to a spaghetti-like flow of materials through the facility since the layout was planned beforehand for a smaller quantity throughput. We scale up or scale down by adding or removing machines, workers and materials. When scaling up, the load on parallel processes is balanced for a steady flow of materials, and we use logic controls with sensors set limits for detecting problems. Similar to tracing, we do a root cause analysis to figure out what's holding the whole thing up. Delays all depend on our upstream suppliers, and trickle down to our downstream customers.

  • @ElPolaia
    @ElPolaia 4 місяці тому +192

    I'm a Software Engineer working as DevOps. I just noticed my last Factorio game is completely containerized and I made a Kubernetes control plane with train logic.

    • @dangerousflyer4485
      @dangerousflyer4485 4 місяці тому +14

      I strive to learn programming as my second language lmao

  • @xaaf
    @xaaf 5 місяців тому +330

    I love how unhinged yet super solidly structured this video is
    As someone who loves factorio and also studies computer science, I relate to this and love this explanation

  • @fitzcatalyst9023
    @fitzcatalyst9023 Місяць тому

    the editing scaling intro was hilarious i love it great video so far

  • @katherineraffa5881
    @katherineraffa5881 15 днів тому

    I absolutely loved this video!!! Can only imagine how much time and effort went into it, but please make more you’re really great at articulating these concepts

  • @EndertheWhite
    @EndertheWhite 5 місяців тому +278

    Not a cringe video. Really creative, I enjoyed the topic and the way you presented it. Pretty funny too! Good work.

    • @TonyZhu
      @TonyZhu  5 місяців тому +18

      Thank you for the really nice comment!! Will definitely consider working on a sequel

  • @ivanstoykov4557
    @ivanstoykov4557 4 місяці тому +281

    I'm a SE who was emotionally stunted by my parents in early childhood, and I need another video of you explaining how a monolithic program, relates to Factorio, and how they both enable you to talk to my mom.

    • @seeexy
      @seeexy 4 місяці тому

      this and yes i kinDa agRee. .

    • @ToyKeeper
      @ToyKeeper 4 місяці тому +9

      Factorio is very similar to low-level circuit design and high-level service architecture. It's not very similar to all the stuff in-between though.

  • @user-kl4rd
    @user-kl4rd 8 днів тому

    You did phenomenal. I loved every part of it! If you made another video about the monolithic aspect the same way, it would be perfect!

  • @Ky_Ky_Ky
    @Ky_Ky_Ky 2 місяці тому

    You are really good at this video essay style video format. Good job, make more stuff!

  • @garandman34
    @garandman34 5 місяців тому +282

    I’ve been trying to voice this to my friends for years that never give this game a shot. But I could not do it with this Intellectual prowess. Hopefully sharing this video with them will show them the magic for inspiration.

    • @TonyZhu
      @TonyZhu  5 місяців тому +31

      I am extremely pleased to hear this lol. You have no idea how many (literal) years I've spent thinking about this and finally have found the time and motivation to put this video together - glad to hear I could provide some catharsis to you as well!!

    • @-sleepy-
      @-sleepy- 5 місяців тому

      you've been trying to tell your friends that this game will make you a "software engineer"?

    • @garandman34
      @garandman34 5 місяців тому +2

      @@-sleepy- no, that it mimics many of the concepts used networking and circuitry as he describes here. Also tying straight in to your motherboard provides much more broadband to allow higher throughputs than through a remote mounted device running through a sata cable. General things of that nature

  • @matthewm7590
    @matthewm7590 5 днів тому

    Genuinely one of the most entertaining programming videos I’ve ever seen. Great points, great ideas too! This was the first video of yours I’ve seen and you earned my sub

  • @matthewdouglas2373
    @matthewdouglas2373 2 місяці тому

    This was great. Would love to see you continue this type of education because it was entertaining and you're good at explaining things.

  • @natewilburn301
    @natewilburn301 4 місяці тому +302

    Excellent video, this was brilliant! One thing I’ve always noticed is when looking at CPU Architecture under a microscope, it looks like an extremely optimized and monumental Factorio plant. If in your next video you could include things like buses transporting data, smelters caching data, Assemblers being Logic, and so on it would make for a highly interesting video in my opinion. Great stuff!

  • @Rahapallo
    @Rahapallo 4 місяці тому +165

    I had a kind of similar experience as a kid with the old Sierra citybuilder games like Pharaoh and Caesar 3. Only realized it after I studied software engineering for a couple of years. Parents, let your kids play.

    • @zackyoung6504
      @zackyoung6504 3 місяці тому +5

      Or for those really in the loop, Zeus: Master of Olympus.
      God, I’m old. 😂

    • @ludvig3242
      @ludvig3242 2 місяці тому

      They tend to

  • @rendiggietydog
    @rendiggietydog 4 місяці тому +1

    you explained everything so well that everything seemed so obvious, so damn cool dude i loved your video!!

  • @toxyjohn
    @toxyjohn 21 день тому

    Great explanations with some good humor, really well put together. Really enjoyed watching this.

  • @chriswaller8780
    @chriswaller8780 4 місяці тому +329

    This video is a masterpiece of art. You have so completely compared the two subjects into identicality that it has bridged gaps that were already obvious into deep rooted bonds of nuance around each corner. Your shit was funny and engaging from the very first 15 seconds and you kept that energy going for the entire 21 minutes. Your channel is about to explode in popularity, I hope you're ready for it, because you just won the internet. I applaud you.

    • @developerjustin6306
      @developerjustin6306 4 місяці тому +2

      Called it.

    • @williambultman6817
      @williambultman6817 4 місяці тому +3

      well-put

    • @TenpennyTower
      @TenpennyTower 4 місяці тому +3

      Real

    • @TonyZhu
      @TonyZhu  4 місяці тому +1

      God idk why I didn't respond to this comment earlier but this is one of the nicest, most beautiful comments I've received! Thanks for your kind words

  • @philipbeauford
    @philipbeauford 4 місяці тому +240

    7:30ish in on readability: YES!.. Ive been saying this to agency after agency for years. Literally the milliseconds in performance you gain from making any maintained code less readable is just going to screw you later when that code needs to be updated bc now that everythings been oddly tucked together or just generally obfuscated in some way, you'll need to go back through all of this 'optimized' code and basically make it readable again just to complete the update. TIME WASTED in the end so.. learn to think ahead and always lean towards readable code!

    • @geneanthony3421
      @geneanthony3421 3 місяці тому +12

      One of my biggest issues with some coders. Build around maintenance. If you optimize something, stick it in a wrapper that's easy to work with.

    • @SnakebitSTI
      @SnakebitSTI Місяць тому +3

      Personally, I'm much more familiar with the issue of having to convince people that poorly optimized, unreadable code is a problem.

    • @TPAKTOPsp
      @TPAKTOPsp Місяць тому +3

      +1000 I almost sent this to my boss. Best explanation for readability. Some people just think that saving 5$ on aws bill is way better than hours wasted in debugging and understanding the mess later.

    • @geneanthony3421
      @geneanthony3421 Місяць тому +2

      @@TPAKTOPsp I usually show people Indian telephone poles to give people a visual representation of what's it's like trying to maintain spaghetti code.

    • @ForgBorger
      @ForgBorger 23 дні тому +3

      I can’t remember who it was attributed to, but i once read “debugging code is more difficult than writing code. if you are always as clever as possible when writing your code, by definition you are not smart enough to debug it”

  • @cheezeebred
    @cheezeebred 7 днів тому

    I fell in love within the first 10 seconds. Keep up the great work m'dude

  • @mindless_drift
    @mindless_drift 2 місяці тому

    This video is great, it's really entertaining and educational, the style and formatting of it was great to. I'm really excited for part 2

  • @MrShadow2x
    @MrShadow2x 4 місяці тому +390

    Dude, your sense of humor and comedic timimg are incredible. I was laughing out loud so many times, even while enjoying and learning from your essay.

    • @dowesschule
      @dowesschule 2 місяці тому

      And that‘s his 3rd video?? Incredible!

    • @coachjoe5595
      @coachjoe5595 2 місяці тому

      I'm two months late to the party, but i read this comment right as he said, "heroin just wasn't addictive enough." The pair together, chef's kiss. I ACTUALLY laughed out loud.

  • @JaveyJenkins
    @JaveyJenkins 5 місяців тому +143

    One of my former coworkers used his factorio game to get a job as a warehouse planner during his interview. As a player I would love to here your take on combinators and such. I find they frustrating at first but after a thousand hours, they are indispensable.

    • @TonyZhu
      @TonyZhu  5 місяців тому +33

      Man that’s actually awesome to hear that (1) factorio helped someone get a job and (2) the interviewer was cool enough to understand / “get it.”
      I was actually looking into combinators during the creation of this vid but they still terrify me and I have much to learn. Will definitely give it another look now that you’ve mentioned it!!

    • @salce_with_onion
      @salce_with_onion 5 місяців тому +19

      @@TonyZhu DoshDoshington made a 3 minute video followed by 46 minute insanity bonus about combinators

    • @lovalmidas
      @lovalmidas 5 місяців тому +12

      If factorio belts are your software bus, then circuit networks are where software moves into hardware. The core idea is that you are implementing *sensors* (both binary and counters) and transforming them into I/O signals, and they are effectively used as relays into other areas of your 'factory/software' bus.
      If circuit networks are hardware signals, then it follows that combinators are effectively hardware drivers, the 'black boxes' of software engineering.
      It helps me to move off the analogy from web/cloud-based software industry (where CPUs are the main hardware involved), and into an area with greater hardware contribution - Access interlock systems, reader devices (barcode, QR, RFID), sensing devices (thermocouples, pressure sensors, pizeoelectric sensors, Hall effect sensors), signal/protocol converters (USBRS232GPIOEthernet), hardware relays/switches, circuit breakers/fuses/alarm systems, human interface devices (buttons, keypads, keyboards, mouse) and robotics. Congrats, you are closer to real engineering where automation moves physical things in real life! :D

    • @JaveyJenkins
      @JaveyJenkins 5 місяців тому

      @@TonyZhu , If i remeber right he got the job with fedex. And to see a truly amazing use of combinators look up " JOSIF " or self expanding factory :)

    • @erfarkrasnobay
      @erfarkrasnobay 5 місяців тому +4

      @@TonyZhu If you want to check some combinators shenanigans you might check DoshDoshington youtube channel and his "Welcome to Factorio City" Or "Building Circuit Abominations in Factorio" videos.

  • @ShredTV_Gaming
    @ShredTV_Gaming 4 місяці тому +1

    This was a super cool video, and your editing style is spectacular. The attention aids were the cherry on top :D

  • @nathancantino5669
    @nathancantino5669 2 місяці тому

    this is great. was so fun to watch, ty

  • @cyance2029
    @cyance2029 5 місяців тому +150

    As someone who has spent of lot of time playing factorio and generally doesn't know what to do with their life this just motivated me to go down the route of software engineering, Thank you, can't wait to see the next video

    • @zaks7
      @zaks7 5 місяців тому +9

      Best of luck!!! I love it when gamers find purpose in life :D Also maybe you can consider emsy/computer engineering! It's more in line with such games than even software engg.

    • @lukebogsdil9176
      @lukebogsdil9176 4 місяці тому +1

      Do it! I learned after playing factorio, if you played correctly then you already know how to program. (not kidding)

    • @certaindeath7776
      @certaindeath7776 4 місяці тому +6

      i was dissatisfied with work in different sectors and companies for a decade, then had no job for almost a decade. someday i started playing factorio. now im a software engineer. real story. totally not far fedged and simplified cause and effects. ;)

    • @sloppyy
      @sloppyy 4 місяці тому +10

      as a software engineer who doesn't know what to do with their life, this just motivated me to go down the route of factorio

    • @TonyZhu
      @TonyZhu  4 місяці тому +1

      I support three out of the four replies in this thread. In unrelated news I am considering starting a Factorio addiction support group.

  • @delxiv
    @delxiv 5 місяців тому +85

    As a CS and IT person with a few decades of experience, your vid was accurate, insightful, fantastically presented and pretty damm funny. Whatever your 2nd topic is, DO IT.
    Enjoy your well earned and deserved new subscription.

    • @TonyZhu
      @TonyZhu  5 місяців тому

      Thank you!! This is very nice, appreciate the kind words

  • @tweelala
    @tweelala Місяць тому +1

    Great expression of this analogy! Oh, and love the socks!

  • @AnuragSaikia-qi2lb
    @AnuragSaikia-qi2lb Місяць тому

    wow Tony, amazing video man, you put so much effort, really well doneeeee!!!

  • @nateg876
    @nateg876 4 місяці тому +177

    As a software engineer, I can confirm that I am the problem in both worlds.

    • @clearskyy
      @clearskyy 4 місяці тому +5

      there are two wolves inside all of us: "I don't need it to look pretty, I just need it to work" followed by "omg why is this a mess I have to make this the most beautiful thing ever or my brain will explode"

    • @lmaoded7505
      @lmaoded7505 4 місяці тому

      Fucking my jira stories because the code isn't pretty definitely makes me a software engineer

  • @tjmethven2074
    @tjmethven2074 5 місяців тому +55

    Okay I cook for a ton of software engineers at “insert tech company here” and you just kinda made them seem so much more relatable. I have asked them what they do for work and for the life of me I couldn’t understand.

    • @TonyZhu
      @TonyZhu  5 місяців тому +30

      Haha honestly having eaten for two years at a "insert tech company here" cafeteria, I can almost guarantee you that your job is both more important and way more noble! Also we don't understand what we do either.

    • @tjmethven2074
      @tjmethven2074 5 місяців тому +16

      @@TonyZhu I do love to cook, you guys give me UA-cam or Xbox or steam, whatever you program for and I feed you. And that sounds fair to me.

  • @steppan26
    @steppan26 6 днів тому

    This video is excellent, one of the most unique , oddly funny and surprisingly informative videos I've seen in a while. Love the humour and awkwardness. Keep it up bro

  • @synoptiik
    @synoptiik Місяць тому

    Please make a second one, loved the video and very informative and very factual

  • @ssmallishplague
    @ssmallishplague 4 місяці тому +180

    I don’t code or play that game but sat through the whole video cuz I found it’s interesting and your presentation appealing. When I got to the end of the video and you were saying you were unsure if you’d make a the second video I thought to my self “well if I’m seeing this, it must have gotten a lot of views and gotten picked up by the algorithm” Lo and behold it’s got a half a million views. Good job 👍😮🎉

  • @shadowflamers9049
    @shadowflamers9049 4 місяці тому +129

    As a super nerd that sucked at school, who is teaching myself software engineering to stop getting paid hourly as a onsite IT guy... This video was hilariously entertaining, and suprisingly educational. Please do more. You did a very good job at explaining these concepts, in an entertaining yet educational manner.
    Future content doesn't necessarily have to be a videogame analogy. I'd just love to hear you talk about comp sci concepts more. I feel like I'd pick up some good info whilst also being entertained. (I'm 22 btw, not a boomer, so like, I for real mean it lol. You caught my age group as an audience here)

    • @TonyZhu
      @TonyZhu  4 місяці тому +2

      lol great to hear, thanks for the detailed feedback man!

    • @huantran1755
      @huantran1755 4 місяці тому +1

      Same here as the age group.

  • @Awesomaster99
    @Awesomaster99 3 місяці тому +1

    This video is great man, love it, keep up the good work 😂

  • @pragmaticbeaver1555
    @pragmaticbeaver1555 9 днів тому

    Please make another one. This was very entertaining and opened my eyes in a weird way.

  • @ATwiz02
    @ATwiz02 4 місяці тому +31

    I'm a graduate student, and I'm in the middle of writing a research proposal about using Factorio to teach Industrial Engineering. This video has brought up some perspectives i didn't consider. Thank you!

    • @TonyZhu
      @TonyZhu  4 місяці тому +3

      Super cool proposal idea! I hope it works out, you gotta let me know if you end up getting anything published!!!

  • @drakanion
    @drakanion 5 місяців тому +190

    As a software engineer of more than 20 years and a factorio enjoyer, this was great.
    It's amazing how fitting the Factorio analogy is...
    The bigger your code base, the more and stronger, the bugs (biters) are that come attack your base, causing all kinds of other slow downs and interruptions.
    Also, if you want to have your mind blown, look up some of the older factorio vids where people build fully functional displays that actually encode/decode video and play it in game - Factorio is Turing Complete and an incredible video game.

    • @djosh3237
      @djosh3237 5 місяців тому +4

      "bugs" hehe

    • @sponge1234ify
      @sponge1234ify 5 місяців тому +2

      As a web dev (still intern), I'd like to think that the biters spoke Russian or Chinese.

    • @jackmalcolm
      @jackmalcolm 5 місяців тому +3

      I’d suggest DoshDoshington’s “Building circuit abominations in Factorio” he’s a fun watch.

    • @detaaditya6237
      @detaaditya6237 5 місяців тому +1

      I swear factorio developers made biters to look like bugs on purpose

    • @spellablename6099
      @spellablename6099 5 місяців тому +1

      There was one about a year ago, I believe. A dude made a Turing complete calculator out of a rail system. He said it took like 20 days to run though

  • @Vanguard.
    @Vanguard. Місяць тому +1

    I'm a software guy and I have a buddy who is interesting in the trade and always picking my brain on it.
    He sent me this video in his excitement of drawing parallels into what we do everyday into a game he knows fairly well.
    This effort to bridge technological patterns (in this case dev) with more widely familiar concepts such as gaming is great. I enjoyed your video and it was doubly good in that you made my friends brain tick just a bit faster. Really good job man.

  • @DylanClarkSallee
    @DylanClarkSallee Місяць тому

    This is actually fantastic. You hit the nail on the head.

  • @richsalazme
    @richsalazme 4 місяці тому +169

    As a software engineer, I don't know why I haven't known about factorio until just a month ago. I just fell in love almost immediately, to the point that I spent hours only in the tutorial, just to optimize everything before achieving the actual goal 😂It is the perfect game for the field because first and foremost, it is a game, so it washes the stress away. Second, I still use the same type of mental process when approaching a certain task. Planning and picturing how everything would run before placing all the components, making it more efficient and easier to upgrade later on. If I'm being honest here.. I feel like the game made me better at work. I think it has something to do with keeping the mental exercise going even at home playing a game. It makes me think like a software engineer without tiring or stressing me out like work does.

    • @666Tomato666
      @666Tomato666 4 місяці тому +7

      you think optimising in tutorial is nice.. wait till you go full beacon setup and want to have setups that take a full blue belt and output a fully compressed blue belt... It's like programming golf, or writing a haiku

    • @ryansmith2566
      @ryansmith2566 4 місяці тому +1

      When I started playing the game they didn't have a tut yet took 6 months just learning the basics

  • @johnfast8674
    @johnfast8674 5 місяців тому +98

    I loved this format, please don't change it. You've blown me away with the quality that you put out compared to your subscriber count and the fact that I've never heard of you before. As someone who enjoys messing with and building programs for fun, I understood how much effort you put into making your analogies digestible by everyone. Watching this I got some junferno vibes but you seemed to keep this much calmer and focused which was a format that I loved as well. Please keep up the great videos and I'd love to see a second follow up video. I also plan to get into factorio as soon as I figure out how to not worry about that whole "eating and sleeping" thing.

    • @TonyZhu
      @TonyZhu  5 місяців тому +11

      Feedback heard! Also these are really flattering compliments thank you for the kind words!!

    • @theob1712
      @theob1712 4 місяці тому +3

      First time here and I agree with this guy^

    • @pocket-logic1154
      @pocket-logic1154 4 місяці тому +1

      @@TonyZhu I see a million subs in your future.. I was here at 11k ;-)

  • @tomanporc3721
    @tomanporc3721 6 днів тому

    Best video I have seen this year good job

  • @Mundaayn
    @Mundaayn 4 місяці тому

    Hey man, fantastic work, would very much want to see the next video you want to make, this one was so great and learned a lot of stuff i kinda applied implicitly in Satisfactory. Keep up the great work!

  • @piyerus1153
    @piyerus1153 5 місяців тому +18

    In factorio I've really come to love the sorts of things I can do with trains, and I think it fits into the whole comparison with software engineering. Because when you first start with trains it tends to be really simple, you probably have a few dedicated trains going between specific stations, only going to and from the same spot each time, probably even on separate rail lines. Then as you learn how rail signals work you can combine things into one rail line with several different trains running on it, but each train is still just going between their normal spots. And THEN you start learning more advanced stuff, like how if you have two stations with the same name trains will be able to choose which one to go to, so instead of having "Iron Mine A", "Iron Mine B", etc you can just have several stations named "Iron Mine" and your train goes to the first available one. After that you can start going into circuit conditions and making it so that stations will only accept trains when there's something to pick up, or when there's something that needs to be delivered, so that the trains move around more efficiently. Now when you want to set up a new mine, or make a new smelting array, you can just slap down the same blueprint and the trains will automatically start rolling in without you needing to set up new schedules.
    Wow I kinda rambled there.

  • @czechmeoutbabe1997
    @czechmeoutbabe1997 5 місяців тому +303

    A software engineer with charisma an actual humour. Jesus christ he's too powerful, someone stop him.
    Also, I can already tell by the format that tell you're wonderful. Never change.

    • @playversetv3877
      @playversetv3877 5 місяців тому +3

      yeh ive met too many software engineers with a bad personality, where the cool ones at?

    • @dinglemccringleberry9019
      @dinglemccringleberry9019 5 місяців тому +5

      @@playversetv3877 They're just out there, quietly working behind the shadows. We need to find them and get them into the spotlight and give them the recognition they deserve! Just like our guy Tony. I just accidently found this video being a randomly suggested to me. Glad I clicked it.

    • @XRPHsu
      @XRPHsu 4 місяці тому

      His level is over 9000!!!

    • @TonyZhu
      @TonyZhu  4 місяці тому

      Aw guys my heart! It's too sweet!! Someone get me my insulin!!!
      I'm sure there are cools ones out there, and you guys help make up that group of people! Keep being awesome y'all

    • @playversetv3877
      @playversetv3877 4 місяці тому

      @@TonyZhu na f u

  • @scattereddrifter
    @scattereddrifter 3 місяці тому

    Ooh I adore your style and humor a lot.
    Was an amazing video to watch and as a person tutoring software engineering for bachelor students Its great how you could break down and convert those topics into examples of factorio or other analogy!
    Thanks a lot, you're great

  • @christiankalkilamadrid1161
    @christiankalkilamadrid1161 4 місяці тому

    Wonderful video! Absolutely loved it from start to finish.

  • @lowkeyproducktvt2101
    @lowkeyproducktvt2101 4 місяці тому +5

    4:30 as a person who doesn't know much about Pokemon and just started learning AWS i completely accepted those names 😂

  • @gabrielp.40
    @gabrielp.40 5 місяців тому +61

    Watching this, I was expecting some big youtuber, not 600 views. This video has quite an impressive quality, keep up the good work, I really hope you get the attention you deserve!

    • @TonyZhu
      @TonyZhu  5 місяців тому +8

      Those kind words mean a lot to me, thanks for commenting

    • @simonwillover4175
      @simonwillover4175 5 місяців тому +1

      @@TonyZhu Yeah, it's a great video!

    • @TonyZhu
      @TonyZhu  5 місяців тому +5

      @@simonwillover4175 Thank you!! Really appreciate these comments

    • @GHOST25938
      @GHOST25938 5 місяців тому +5

      We are at 10k already...
      "In the business, we call this foreshadowing"

    • @cloaker7139
      @cloaker7139 5 місяців тому +1

      ​@@TonyZhuWhat you put out is amazing, honestly. This Video was a blast to watch!

  • @samdroid37
    @samdroid37 4 місяці тому

    loved this video!! hope you are enjoying the holidays

  • @GordonWrigley
    @GordonWrigley 5 місяців тому +31

    I think you need more on the spaghetti. I think it's worth getting into maintenance and refactoring and the trade off between living with your past decisions, often by making the mess a lil worse or taking the time to do a big cleanup. And also how a layout that works fine for a small amount of things at a small scale just inevitably becomes a mess as you add to it.

    • @TonyZhu
      @TonyZhu  5 місяців тому +5

      That's a great point! Will jot this down in my notes for the next video and see if I can find a good spot for it :)

  • @mbg8733
    @mbg8733 5 місяців тому +4

    This isn't just software engineering and factorio.
    It's the study of systems; it's used in nearly every discipline.
    For example:
    Chemisty for complex chemical reactions.
    Biology for reaction pathways.
    Economics for analysis of supply chains and such
    and it can become even more niche.

    • @samu_2822
      @samu_2822 5 місяців тому +1

      Not quite, since what the other disciplines study some specific system to their problems, usually they try to frame this interaction in a model already studied and proven, now software engineering and factorio for this matter, is this sort of study of the study of systems, the job is to design better ways to meet the requirements, while keeping your sanity check.
      A chemist, will use their knowledge on chemical reactions, modifying this reactions, adding and compounding different materials to yield better results, in control manner.
      A biologist, will use their knowledge on biology to change the conditions on the bio compounds and the agents to get safer and useful goods.
      A economist, will use their knowledge of basic geometry to put the square in the square hole
      on the other hand,
      A software engineer, will study what are the chemist, biologist, and some common sense to try to englobe all the later and put it through some none-sense it works system, on which will make it regulate itself by proven or field tested way, hopping that something doesn't goes up in flames the moment that you want to gtfo at 5pm on a friday
      A factorio player, will do the later willingly, on a videogame while creating the next framework to grow the factory that this time will indeed solve the other problems and be the one to use after repairing some nonsense problem caused by an edge case in their work that took their whole friday afternoon to solve

    • @mbg8733
      @mbg8733 5 місяців тому

      @@samu_2822when generalizing, it is possible that two categories are more like each other, than a third, but it still being possible to generalise all three.
      A factory is more analogous to a whole economy’s supply web, yet it is stil generalizable as a complex system along with a software system.

  • @john_smith_john
    @john_smith_john 3 місяці тому

    I love the editing/humor so much haha

  • @rwoz
    @rwoz 2 місяці тому

    A really interesting topic, would appreciate more videos about it.

  • @Stasisdrone4827
    @Stasisdrone4827 5 місяців тому +12

    I think it's really worth mentioning trains as well. At the end of the video, you mentioned the differences between monolithic and microservice based architectures, and I think the best the to show that difference/similarity is in trains. If you consider your entire factorio base as a distributed service, trains exactly represent packet flow and more importantly packet delay and packet loss if you get a biter attack.
    If you consider your factorio base as a single monolith, then trains turn into interfaces. The train doesn't care how you actually insert the cargo, and how you process the items at the station. All it cares about is that it needs to drop of Item X and wants to go pick up item Y. This represents component design and individual classes and functions as well.

    • @TonyZhu
      @TonyZhu  5 місяців тому +3

      Yes 100%!! You've articulated the idea very well and this is most definitely something I already had in mind for video #2. As I start to read these comments though, I think there's a lot more I wouldn't have thought of otherwise so I really appreciate people like you commenting this stuff!!

  • @AsherVale
    @AsherVale 4 місяці тому +48

    You're basically just the software engineer version of NileRed. Good shit keep it up.

  • @patricksha6194
    @patricksha6194 2 місяці тому

    this being the first video of yours I've seen, yes I will watch any sequel you put out!

  • @rorobilly1
    @rorobilly1 2 місяці тому +1

    This is an amazing video you're so talented

  • @achillesa5894
    @achillesa5894 5 місяців тому +70

    The other big thing they have in common is stealing code from strangers on the internet lmao. Blueprints are basically that, right? And the crazy thing is, you can design/steal a blueprint and treat it as just a closed system that takes an input and makes an output. I'm currently working on a "coal to plastic" blueprint, which is a design that you just build, supply it with water and coal and it spits out plastic, and you don't have to care about the specifics of how inside the blueprint the coal is turned into oil and processed into exact amounts of oil byproducts, how boilers make steam for the process, how heavy oil is routed from the output back to the input, and how petroleum is mixed with more coal to make plastic. All you care about is the input and output.

    • @TonyZhu
      @TonyZhu  5 місяців тому +17

      This is actually a great point that I totally forgot about over the past few years lol. Had written in my script about black box processing but the idea of copy pasting functions from the internet is great, thanks for this!

    • @Hellbending
      @Hellbending 5 місяців тому +3

      Mmmm tasty open closed principles 🤣🤣

    • @detaaditya6237
      @detaaditya6237 5 місяців тому +6

      Yesss, blueprint websites are basically stack overflow lmao

    • @sumyungguy163
      @sumyungguy163 5 місяців тому

      Is this abstraction?