Factorio teaches you software engineering, seriously.

Поделиться
HTML-код
  • Опубликовано: 22 ноя 2024

Комментарии • 6 тыс.

  • @TonyZhu
    @TonyZhu  11 месяцев назад +4032

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

    • @itsjustrobby
      @itsjustrobby 11 месяцев назад +14

      This is such a good video. Thank you!

    • @teknoid5878
      @teknoid5878 11 месяцев назад +8

      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 11 месяцев назад +17

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

    • @teaser6089
      @teaser6089 11 месяцев назад +7

      The Factory Must Grow

    • @santi_z48
      @santi_z48 11 месяцев назад +3

      U da 🐐

  • @DoshDoshington
    @DoshDoshington 11 месяцев назад +16840

    Being a software engineer turned me into a Factorio Player

    • @pyaehtetaung
      @pyaehtetaung 11 месяцев назад +309

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

    • @TonyZhu
      @TonyZhu  11 месяцев назад +1084

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

    • @TheCheese117
      @TheCheese117 11 месяцев назад +71

      Teach me how to play space exploration Dosh 🙏

    • @mg-by7uu
      @mg-by7uu 11 месяцев назад +16

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

    • @KreyMcKii
      @KreyMcKii 11 месяцев назад +44

      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 11 месяцев назад +9417

    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 11 месяцев назад +64

      😂

    • @piemaster6512
      @piemaster6512 11 месяцев назад +249

      The factory MUST grow.

    • @austin-poole
      @austin-poole 11 месяцев назад +70

      Factorio > $500K package from Netflix 😂😂

    • @sailorjune2121
      @sailorjune2121 11 месяцев назад +10

      Same but with bitburner

    • @kh4i2h4r3
      @kh4i2h4r3 11 месяцев назад +19

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

  • @Trupen
    @Trupen 11 месяцев назад +5258

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

    • @JeyDeee89
      @JeyDeee89 11 месяцев назад +358

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

    • @kyand920
      @kyand920 11 месяцев назад +82

      Trupen is everywhere.

    • @Jakub-vv2sc
      @Jakub-vv2sc 11 месяцев назад +68

      He's like Big Brother who watching all factorio comiunity

    • @Trupen
      @Trupen 11 месяцев назад +153

      @@JeyDeee89

    • @daze8410
      @daze8410 11 месяцев назад +24

      I would like two cracks please

  • @Robin_Goodfellow
    @Robin_Goodfellow 4 месяца назад +250

    This is actually why I struggle with factory builder games. I'm drawn to them because they're like programming, but then I stop when it starts to feel too much like my actual job

    • @Rs-fg1rz
      @Rs-fg1rz 3 месяца назад +8

      I hate how real this is. specially when you almost every time debug the base to have good flow😂

    • @ismailjan2509
      @ismailjan2509 Месяц назад +7

      I was playing Oxygen Not Included a couple months ago and this is exactly what stopped me from continuing even though I was addicted. Keeping alive all my duplicants while optimizing every aspect started to feel like a job and became stressful lol

    • @lynic-0091
      @lynic-0091 6 дней назад +1

      Same lol, I game to relax, not to work even more

    • @kettelbe
      @kettelbe 4 дня назад

      Maybe same too

  • @Lithane97
    @Lithane97 11 месяцев назад +1602

    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  11 месяцев назад +232

      Good lord what a story lol, thanks for sharing

    • @iamjimgroth
      @iamjimgroth 11 месяцев назад +39

      Nobody will ever need more than 2 years! 😁

    • @KatieDawson3636
      @KatieDawson3636 11 месяцев назад +62

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

    • @toddstephenson9849
      @toddstephenson9849 11 месяцев назад +29

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

    • @falconking9091
      @falconking9091 8 месяцев назад

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

  • @MuhsinFatih
    @MuhsinFatih 11 месяцев назад +1708

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

    • @TonyZhu
      @TonyZhu  11 месяцев назад +408

      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 11 месяцев назад +107

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

    • @jmatya
      @jmatya 11 месяцев назад +98

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

    • @galfisk
      @galfisk 11 месяцев назад +8

      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 11 месяцев назад +12

      @@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

  • @OnePlanetOneTribe
    @OnePlanetOneTribe 11 месяцев назад +2448

    My mom really liked this video

    • @aa898246
      @aa898246 11 месяцев назад +44

      your mother is a really nice person

    • @mattshu
      @mattshu 11 месяцев назад +26

      she's a nice lady

    • @noname-dj7vj
      @noname-dj7vj 11 месяцев назад +50

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

    • @IPutFishInAWashingMachine
      @IPutFishInAWashingMachine 11 месяцев назад +3

      Cap

    • @s0kulite
      @s0kulite 11 месяцев назад +20

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

  • @Tano_cci
    @Tano_cci 5 месяцев назад +44

    The your mom jokes really tied everything together, I don't know if I would've understand all of it without them, great work!

  • @ОбразцовТимофей
    @ОбразцовТимофей 8 месяцев назад +181

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

    • @katuni08
      @katuni08 4 дня назад

      Do you scrap the whole thing and start again in software engineering? I’m currently learning Factorio and find myself destroying my factories and systems because I “good enough”’d too many times and now everything is clogged 🥲

  • @rashkavar
    @rashkavar 6 месяцев назад +1262

    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 6 месяцев назад +28

      great comment, very interesting, thank you!

    • @PhazerTech
      @PhazerTech 6 месяцев назад +55

      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.

    • @thad1v
      @thad1v 5 месяцев назад +8

      Totally agree. The link I see from my background for example is with project management schedule management. When to start what task with how many resources that overall project duration is minimized while maximizing finishing date predictability

    • @Hacktheplanet_
      @Hacktheplanet_ 5 месяцев назад +3

      好写的评论

    • @whitnbits2253
      @whitnbits2253 5 месяцев назад +11

      I'm in Operations Management and it's made me such a good Factorio player. Everyday is just allocating resources and labor to certain tasks to produce X amount of finished goods in X amount of time. Code tracing is a term I've never used but it's a daily currency in manufacturing. Root cause analysis, traceability, reducing bottlenecks, law of the minimum, etc.

  • @heyitskae
    @heyitskae 11 месяцев назад +961

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

    • @birchcove8454
      @birchcove8454 11 месяцев назад +16

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

    • @iCookCrystalMeth
      @iCookCrystalMeth 11 месяцев назад +28

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

    • @DexPlushy
      @DexPlushy 11 месяцев назад +40

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

    • @kotzpenner
      @kotzpenner 11 месяцев назад +6

      It’s all fine until wiring comes up

    • @prome3439
      @prome3439 11 месяцев назад +30

      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.

  • @sergion2777
    @sergion2777 2 месяца назад +8

    1. The style and way this is done, is perfect. I wouldn't change a thing. 2. Giving me actual keywords I can put on my resume from hours of game time is AMAZING. More of this please! 3. This video also helps me better understand what careers would connect well with my gaming interests AND lets me justify my interests in gaming and translate them to real world use cases!! This is an INCREDIBLE thing you're doing, please do not stop!

  • @programmer437
    @programmer437 11 месяцев назад +2115

    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 11 месяцев назад +41

      What style would be best suited for a functional programmer?

    • @programmer437
      @programmer437 11 месяцев назад +172

      @@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  11 месяцев назад +211

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

    • @angeldude101
      @angeldude101 11 месяцев назад +43

      @@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 11 месяцев назад +1

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

  • @michaelclifton2436
    @michaelclifton2436 11 месяцев назад +1109

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

    • @TonyZhu
      @TonyZhu  11 месяцев назад +185

      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 11 месяцев назад +18

      Worth the effort

  • @eliucidate
    @eliucidate 11 месяцев назад +760

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

    • @aladeenzweipunktnull
      @aladeenzweipunktnull 11 месяцев назад +49

      There is a reason why it is called semaphore ;)

    • @violatorut2003
      @violatorut2003 11 месяцев назад +10

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

    • @NaoyaYami
      @NaoyaYami 11 месяцев назад +20

      @@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 11 месяцев назад +5

      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 11 месяцев назад +4

      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!

  • @LeoUli-qs3rk
    @LeoUli-qs3rk 5 месяцев назад +48

    I played factorio like a mad man, then 10 years later I dropped my healthcare career to go back to uni and get a computer science bachelors degree. That itch is eternal.

    • @saki-chan5482
      @saki-chan5482 Месяц назад

      I dont like how relatable that feels..... if you predict my future career path istg

  • @alexcrouse
    @alexcrouse 9 месяцев назад +1316

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

    • @nuisanceguru
      @nuisanceguru 8 месяцев назад +25

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

    • @tomchambers4537
      @tomchambers4537 7 месяцев назад +11

      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.

    • @carlosdartora9319
      @carlosdartora9319 5 месяцев назад +2

      yeah and unpretensious too

    • @Fran-kc2gu
      @Fran-kc2gu 4 месяца назад

      lol this is what people consider funny now days? this is just a weirdo

  • @matthewhambacher8249
    @matthewhambacher8249 11 месяцев назад +888

    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  11 месяцев назад +92

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

    • @LuaanTi
      @LuaanTi 11 месяцев назад +51

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

    • @bartoszdobija2069
      @bartoszdobija2069 11 месяцев назад +42

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

    • @needs_more_dakka5774
      @needs_more_dakka5774 11 месяцев назад +2

      The factory must grow.

    • @galfisk
      @galfisk 11 месяцев назад +3

      The factorio must growio.

  • @sarthakdravid8405
    @sarthakdravid8405 6 месяцев назад +765

    Back in school, for my final science exam, i had a question on how a nuclear reactor works, I didnt study that part, It 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

    • @galenc1606
      @galenc1606 5 месяцев назад +124

      I can already hear North Korea frantically writing this down.

    • @Content_Deleted
      @Content_Deleted 5 месяцев назад +19

      lmao, that's amazing

    • @_Dude_What
      @_Dude_What 5 месяцев назад +10

      Sweet! What did you write?

    • @sergemarlon
      @sergemarlon 4 месяца назад +26

      He probably doesn't remember what he wrote. What I want to know is how a nuclear reactor works in Factario. Anyone care to explain?

    • @Rikokknd
      @Rikokknd 4 месяца назад +76

      @@sergemarlon in Factorio nuclear reactor burns uranium fuel, producing a lot of heat. Heat is then used to turn water into 500-degree-hot steam. Steam is then fed into turbines to generate electricity.

  • @Puschit1
    @Puschit1 3 месяца назад +10

    And here I thought you would be talking about thinking in loops, dependencies, iterations, redundancies and all and foremost about Factorio's bot networks (requester chests are like events that are firing and calling robots that act like methods) and circuit networks. The latter are actually exactly like code one you use things like decider combinators. Train networks is also something I expected you to talk about.

  • @Emanuel-sla-h5i
    @Emanuel-sla-h5i 11 месяцев назад +393

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

    • @emreapaydn4064
      @emreapaydn4064 11 месяцев назад +2

      Exactly!

    • @WhizPill
      @WhizPill 11 месяцев назад

      @@emreapaydn4064instant subbed

    •  Месяц назад

      Agreed!

    •  Месяц назад

      @TonyZhu (If something, I'd personally recommend just playing jokes straight without resorting to self depreciation. At least not every time. Segways are efficient for being shaped in traffic and "your mom" will never become unfunny. You can even ask from the greatest technician that's ever lived!)

    •  Месяц назад

      (If something, I'd personally recommend just playing jokes straight without resorting to self depreciation. At least not every time. Segways are efficient for being shaped in traffic and "your mom" will never become unfunny. You can even ask from the greatest technician that's ever lived!)

  • @xaaf
    @xaaf 11 месяцев назад +360

    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

  • @colinwong1059
    @colinwong1059 11 месяцев назад +627

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

    • @TonyZhu
      @TonyZhu  11 месяцев назад +136

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

    • @smoove2303
      @smoove2303 11 месяцев назад +73

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

    • @djordje123king
      @djordje123king 11 месяцев назад +43

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

    • @yashaswikulshreshtha1588
      @yashaswikulshreshtha1588 11 месяцев назад +1

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

    • @gogauze
      @gogauze 11 месяцев назад +7

      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

  • @matteomontanari2960
    @matteomontanari2960 3 месяца назад +6

    I was thinking about that the other day. It's completely true, but not just for software engineers; it's how any engineering on a "high level" should be done. Everything in production (both in software and in a factory) is viewable as a square with something that goes in and something that goes out. Once you understand that you can write the code in between, design a production machine, set the controller... with something going in and something going out.

  • @lvutodeath
    @lvutodeath 11 месяцев назад +368

    "I know that this is cringe"
    This is what RUclips 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  11 месяцев назад +33

      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 11 месяцев назад +9

      you dropped this👑

  • @CornusHolius
    @CornusHolius 11 месяцев назад +330

    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  11 месяцев назад +11

      Lol great comment, thanks for the support!

  • @xcelerate1000
    @xcelerate1000 3 месяца назад +8

    I will never think of software bugs the same: bad update = actual bugs destroying my furnace.

  • @entangledatoms7153
    @entangledatoms7153 11 месяцев назад +635

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

    • @mistowasabi5443
      @mistowasabi5443 9 месяцев назад +8

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

  • @GigaCraft-420
    @GigaCraft-420 11 месяцев назад +641

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

    • @TonyZhu
      @TonyZhu  11 месяцев назад +156

      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 11 месяцев назад +35

      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 11 месяцев назад +8

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

    • @Soken50
      @Soken50 11 месяцев назад

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

    • @-minushyphen1two379
      @-minushyphen1two379 11 месяцев назад +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

  • @migillett
    @migillett 11 месяцев назад +310

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

    • @swazgaming420
      @swazgaming420 11 месяцев назад +16

      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 11 месяцев назад

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

  • @Sorter43
    @Sorter43 10 дней назад +2

    The chart at 11:40 could've been:
    1. Vertical scaling
    2. Horizontal scaling
    3. Optimization
    3 is using mostly the same resources but somewhat modified to increase output.
    Speed module's effect is just waaaaaay more quantifiable benefit than what one can realistically expect out of most optimization.
    Great video though.

  • @EndertheWhite
    @EndertheWhite 11 месяцев назад +290

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

    • @TonyZhu
      @TonyZhu  11 месяцев назад +18

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

  • @ThracianDataThief
    @ThracianDataThief 11 месяцев назад +295

    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 11 месяцев назад

      this and yes i kinDa agRee. .

    • @ToyKeeper
      @ToyKeeper 11 месяцев назад +12

      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.

    • @rawgames1579
      @rawgames1579 2 месяца назад

      fun fact, in Factrio SE stands for the Space Exploration mod if (in case some outsider randomly reads this comment)

  • @natewilburn301
    @natewilburn301 11 месяцев назад +316

    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!

  • @cipshadow
    @cipshadow 5 месяцев назад +2

    my hat off to you sir, very fun way to break down these engineering concepts! please make more videos, the internet (and aspiring engineers) need you

  • @ElPolaia
    @ElPolaia 11 месяцев назад +232

    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 11 месяцев назад +17

      I strive to learn programming as my second language lmao

    • @kyripa777
      @kyripa777 6 месяцев назад +4

      Just for your information. Grafana has a dashboard for factorio.

    • @Byku010
      @Byku010 Месяц назад

      Could you elaborate how you recreated k8s in factories?

  • @delxiv
    @delxiv 11 месяцев назад +89

    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  11 месяцев назад

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

  • @garandman34
    @garandman34 11 месяцев назад +292

    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  11 месяцев назад +34

      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- 11 месяцев назад +1

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

    • @garandman34
      @garandman34 11 месяцев назад +3

      @@-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

    • @Dextrome
      @Dextrome 10 дней назад +1

      @@garandman34 but why does that make it a good game though?

  • @PvtDavid111OOO
    @PvtDavid111OOO 3 месяца назад +1

    this was actually the best video I've watched in a while. perfect balance between entertainment and learning. I'm definitely interested in another video. love your vibe, literally nothing in this video that I found to be uninteresting or boring. I'm not a software engineer but I always loves games like factorio that allow for micro management and making things run as efficiently as possible, never did I realize those games had a semblance with software engineering. you might of sparked a inspiration in me.

  • @avi7278
    @avi7278 11 месяцев назад +106

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

    • @ecogreen123
      @ecogreen123 11 месяцев назад +10

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

    • @showtun1_655
      @showtun1_655 8 месяцев назад +4

      “Work or factorio, you can only have one”

  • @philipbeauford
    @philipbeauford 11 месяцев назад +250

    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 9 месяцев назад +14

      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 8 месяцев назад +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 7 месяцев назад +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 7 месяцев назад +3

      @@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 7 месяцев назад +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”

  • @cyance2029
    @cyance2029 11 месяцев назад +156

    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 11 месяцев назад +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 11 месяцев назад +1

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

    • @certaindeath7776
      @certaindeath7776 11 месяцев назад +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 11 месяцев назад +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  11 месяцев назад +1

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

  • @ChUnKyMiEnbOi
    @ChUnKyMiEnbOi 3 месяца назад

    This is an incredible video that takes something I love(games) and connects to something I'm interested in, but know little about(software engineering). This game going to the top of my steam wishlist and you have definitely opened up the rabbit hole. Looking forward to part 2.

  • @JaveyJenkins
    @JaveyJenkins 11 месяцев назад +152

    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  11 месяцев назад +34

      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 11 месяцев назад +19

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

    • @lovalmidas
      @lovalmidas 11 месяцев назад +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 11 месяцев назад

      @@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 11 месяцев назад +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.

  • @Rahapallo
    @Rahapallo 11 месяцев назад +172

    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 10 месяцев назад +6

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

    • @ludvig3242
      @ludvig3242 9 месяцев назад

      They tend to

    • @mirjanbouma
      @mirjanbouma Месяц назад

      My people!

  • @privatesocialhandle
    @privatesocialhandle 7 месяцев назад +396

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

    • @SUpeREleCtRoSTaLIN
      @SUpeREleCtRoSTaLIN 6 месяцев назад

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

    • @SUpeREleCtRoSTaLIN
      @SUpeREleCtRoSTaLIN 6 месяцев назад +2

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

    • @robertdracosu8115
      @robertdracosu8115 6 месяцев назад

      me too

    • @c1borgen
      @c1borgen 6 месяцев назад +3

      @@SUpeREleCtRoSTaLIN my comments are being deleted all over the place, it's just youtube being youtube i guess

    • @VaIIy
      @VaIIy 6 месяцев назад

      @@robertdracosu8115

  • @ohboiherewego6831
    @ohboiherewego6831 5 месяцев назад +1

    This is fantastic. I think you did an excellent job of explaining incredibly complex concepts in a way that even those of us who were new to the concepts could understand!

  • @ssmallishplague
    @ssmallishplague 11 месяцев назад +184

    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 👍😮🎉

  • @johnfast8674
    @johnfast8674 11 месяцев назад +99

    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  11 месяцев назад +11

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

    • @theob1712
      @theob1712 11 месяцев назад +3

      First time here and I agree with this guy^

    • @pocket-logic1154
      @pocket-logic1154 11 месяцев назад +1

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

  • @shadowflamers9049
    @shadowflamers9049 11 месяцев назад +132

    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  11 месяцев назад +2

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

    • @huantran1755
      @huantran1755 11 месяцев назад +1

      Same here as the age group.

  • @Derpyinch
    @Derpyinch 3 месяца назад

    Late to the vid, but I love your style of video essays! You're able to balance engineering with humor (mostly improv and ramblings which is like intellectual improv when you think about it) and that gives us breaks between long explanations. Heck you could talk about high-level subjects I don't even understand and I'd still watch because you explain things beautifully!

  • @richsalazme
    @richsalazme 11 месяцев назад +170

    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 11 месяцев назад +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

    • @Smitten702
      @Smitten702 11 месяцев назад +1

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

    • @Dextrome
      @Dextrome 10 дней назад +1

      @@Smitten702 lmfao 🤣🤣

  • @MrShadow2x
    @MrShadow2x 11 месяцев назад +389

    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 9 месяцев назад

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

    • @coachjoe5595
      @coachjoe5595 8 месяцев назад

      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.

  • @chriswaller8780
    @chriswaller8780 11 месяцев назад +331

    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 11 месяцев назад +2

      Called it.

    • @williambultman6817
      @williambultman6817 11 месяцев назад +3

      well-put

    • @TenpennyTower
      @TenpennyTower 11 месяцев назад +3

      Real

    • @TonyZhu
      @TonyZhu  11 месяцев назад +2

      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

  • @jordanswan1156
    @jordanswan1156 4 месяца назад

    I freaking love this. So spot on, and some how this actually makes some who is in the software development industry take a step back and review core concepts that we can all improve on. So cool to make these connections.

  • @ATwiz02
    @ATwiz02 11 месяцев назад +37

    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  11 месяцев назад +3

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

    • @tuftela
      @tuftela 2 месяца назад +1

      How is it going?

    • @ATwiz02
      @ATwiz02 2 месяца назад

      @@tuftela The proposal was just for an assignment, and that got good marks. I'm currently doing personal research on knowledge transfer with recreational video games, and might be submitting an abstract for a conference soon 🤞

    • @tuftela
      @tuftela 2 месяца назад +1

      @@ATwiz02 That is so cool! Thank you so much for answering even though it's been so long since your original comment. Wishing you the very best of luck with your abstract as well!

    • @Dextrome
      @Dextrome 10 дней назад +1

      This may be a bit far fetched, but maybe you could use industrial engineering to teach industrial engineering?
      Instead of a silly little game...

  • @Vanguard.
    @Vanguard. 7 месяцев назад +27

    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.

  • @drakanion
    @drakanion 11 месяцев назад +197

    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 11 месяцев назад +4

      "bugs" hehe

    • @sponge1234ify
      @sponge1234ify 11 месяцев назад +4

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

    • @jackmalcolm
      @jackmalcolm 11 месяцев назад +3

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

    • @detaaditya6237
      @detaaditya6237 11 месяцев назад +2

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

    • @spellablename6099
      @spellablename6099 11 месяцев назад +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

  • @sgtstens1274
    @sgtstens1274 11 дней назад

    I love that this video exists! How about a follow-up featuring Space Age content, some of the new mechanics (Fulgora scrap recycling, Gleba item spoilage) narrow the difference gap even more between SE and Factorio by requiring time-dependent and constant flowing systems! Keep up the great work!

  • @Hyperbaric_Lyric
    @Hyperbaric_Lyric 8 месяцев назад +17

    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!

  • @tjmethven2074
    @tjmethven2074 11 месяцев назад +59

    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  11 месяцев назад +32

      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 11 месяцев назад +16

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

  • @Magumbaa
    @Magumbaa 9 месяцев назад +126

    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!

  • @Monotoba
    @Monotoba 5 месяцев назад +1

    I found your video enjoyable, entertaining, and I believe you are a great communicator/presenter. Keep up the great work. Ill be watching for more content from you in the future.

  • @AtraxX98
    @AtraxX98 9 месяцев назад +49

    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 RUclipsrs who rarely upload but when you upload it’s something unique and a lot of fun to watch.

  • @gabrielp.40
    @gabrielp.40 11 месяцев назад +62

    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  11 месяцев назад +8

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

    • @simonwillover4175
      @simonwillover4175 11 месяцев назад +1

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

    • @TonyZhu
      @TonyZhu  11 месяцев назад +5

      @@simonwillover4175 Thank you!! Really appreciate these comments

    • @GHOST25938
      @GHOST25938 11 месяцев назад +5

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

    • @cloaker7139
      @cloaker7139 11 месяцев назад +1

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

  • @Stasisdrone4827
    @Stasisdrone4827 11 месяцев назад +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  11 месяцев назад +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!!

  • @vwef8859
    @vwef8859 4 месяца назад

    Please make another one of these videos!! I geniuelly love them so much as someone whos a first year in college for CS and I love factorio this is an awesome video and helps me correlate factor io logistics to software engineering, this is awesome

  • @GordonWrigley
    @GordonWrigley 11 месяцев назад +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  11 месяцев назад +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 :)

  • @nateg876
    @nateg876 11 месяцев назад +186

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

    • @clearskyy
      @clearskyy 11 месяцев назад +6

      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 11 месяцев назад

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

  • @MattSoave
    @MattSoave 3 месяца назад

    One thing I've always liked with Factorio (which you didn't quite touch on here) is modularity and interfaces. Ideally (IMO) you are building your factory such that the inner-workings of the upstream source(s) do not matter; you simply need to know that you'll be receiving iron plates (and that your smelters, however they are configured, will be outputting iron plates). Later, when you build more things that require iron plates, you can reconfigure/scale/move/etc. your smelting; but as long as you keep a stream going to the original consumer of iron plates, it does not matter that the source has changed. To me this is like an API changing how it works internally without changing what it returns for the same request.
    Nice video man, enjoyed it!

  • @benjaminmiddaugh2729
    @benjaminmiddaugh2729 11 месяцев назад +32

    Factorio helped me clarify the two different methods of improving throughput. Optimization (gotta have perfect ratios) and scaling (gotta get bigger). You can, of course, do both, but I prefer the big corporation method (why be efficient when you can be inefficient at scale?)
    Edit: This is not meant to imply that big corporations don't care about optimization. It's more of a commentary that they have the resources to be able to not care about it quite so much.

    • @toddstephenson9849
      @toddstephenson9849 11 месяцев назад

      Yeah that's like my big worlds. I am probably intermediate at circuit networks at best, but I'm pretty good at scaling and automation... I don't have the skills like some guys out there to maximize efficiency... Just make more!!! That's the fun part anyway.

    • @clesastodor
      @clesastodor 9 месяцев назад +1

      why do you have to call me out for playing like a big corpo QwQ

    • @user-ho9fq7bm7v
      @user-ho9fq7bm7v 9 месяцев назад

      dude, stop lying. Don't lie to yourself

  • @lowkeyproducktvt2101
    @lowkeyproducktvt2101 11 месяцев назад +9

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

  • @LilArquebus
    @LilArquebus 11 месяцев назад +16

    HELL YES! this is genuinely creative, smart and makes me more excited to code and play factorio. Thanks for making this. Can’t wait to see what other cool creations and essays you’ll come up with.

    • @TonyZhu
      @TonyZhu  11 месяцев назад +1

      Thank you!! Really appreciate such kind words and compliments :)

  • @josephtobias1169
    @josephtobias1169 3 месяца назад

    saw this randomly and watched the whole thing. loved it! i feel like you really changed my perception and i might have found what i wanna do in life! super informative! thanks alot bro!

  • @matthewhambacher8249
    @matthewhambacher8249 11 месяцев назад +28

    Awesome video with a great sense of humor, and this was clearly inspired by great passion for both topics discussed here! Would love to see more video-essay type stuff, especially that monolithic vs. microservices thing. ❤

    • @TonyZhu
      @TonyZhu  11 месяцев назад +1

      Ur a goated friend

    • @KeithOlson
      @KeithOlson 11 месяцев назад +1

      @@TonyZhu If you want the *_PERFECT_* game for showing SOA, I can't think of a better one than Autonauts, where you need to program cute bots to do _everything._ The catch is that the Tier 0 bots only have room for 12 instructions. (...which really puts the 'micro' in 'microservices'!) That means you have to have *LOTS* of bots--each doing only one thing--and they all have to work together. ...but don't worry; as you advance to different tiers, you can add modules to increase their capabilities, so you can, for example, have a Tier 3 bot with a 'Super Bot Brain Upgrade' that can handle 64 (32+32) instructions! Here is the trailer to give you an idea of what's ahead of you: ruclips.net/video/TtOjoEV0ooE/видео.html
      (The devs have also released 'Autonauts vs Piratebots', which takes the basic premise Autonauts and adds PvE, which you could use to Segway into security issues.)
      Cheers!
      P.S. You could also go the more traditional route and take a look at Screeps, where each bot needs to be programming in JS.

  • @Warkrunner
    @Warkrunner 9 месяцев назад +13

    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.

  • @runelt99
    @runelt99 11 месяцев назад +11

    Big thing I learned from factorio is a thing I don't remember the name of. But basically that buffers are not good, except for train unloading stations (so that it can keep your base full supplied and doesn't run out by time next train arrives). Maybe it was JIT or something? Something about producing as much as you can use and if you cannot use enough science then that means that.... The factory must grow!

    • @RealPotatoStudios
      @RealPotatoStudios 11 месяцев назад +1

      That is JIT! And is a concept used on industrial engineering to plan the logistics at actual manufacturing plants :D

    • @Jason.Goldstriker
      @Jason.Goldstriker 11 месяцев назад

      For sure I find having a buffer that doubles as a mechanical mass sorter after it comes off your train lines chests is a good unit to have to get through the early game and is really good once you up grade it to use logistics bots.

  • @scone325
    @scone325 21 день назад

    This may be the best thing I have seen on the internet in a while. Your my hero my guy. I enjoyed this much more than I probably should have.

  • @piyerus1153
    @piyerus1153 11 месяцев назад +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.

  • @JFrieds12
    @JFrieds12 11 месяцев назад +74

    This is really excellent. You've found a niche here, man. Funny, smart, original content, and I think there's a huge audience out there that you could capture. Please keep it up! I'm already convinced you're gonna be a big big deal.

  • @elkaki123
    @elkaki123 11 месяцев назад +25

    Instantly subscribed, not because you make me feel good about putting thousand of hours into a game, but because your video style is absurdly good, you have a good flow and get your points across with a nice sense of humor to boot.
    And all this by the 8th video? It's insane

  • @CallMeClintMcGurk
    @CallMeClintMcGurk 20 дней назад

    Lately I have been struggeling with my Job leading to getting lost in a boreout and depressive episodes I found myself playing Factory Games like Satisfactory and Factorio a LOT to keep my head busy. Last week I decided to lean a lot more into coding as this was always some kind of my dream profession as I LOVE solving problems while being kind of creative (...you see where this is going to, right?). This video just hit me so mfking hard and gave me a WEIRD feeling of: you're doing the right thing, which was something I REALLY needed after a dark time. So I just wanna say thank you, Tony. I never heard of you before that video. It was totally random.

  • @achillesa5894
    @achillesa5894 11 месяцев назад +72

    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  11 месяцев назад +18

      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 11 месяцев назад +3

      Mmmm tasty open closed principles 🤣🤣

    • @detaaditya6237
      @detaaditya6237 11 месяцев назад +6

      Yesss, blueprint websites are basically stack overflow lmao

    • @dalouma-1
      @dalouma-1 11 месяцев назад

      Is this abstraction?

  • @dr.goodmorning9103
    @dr.goodmorning9103 11 месяцев назад +23

    I'm learning software engineering in uni right now and im a Factorio player. I was actually doing one of my biggest assignments while watching this. Ironic. Loved it.

  • @dylanj.domachowski5369
    @dylanj.domachowski5369 11 месяцев назад +28

    You're fucking awesome bro. distilling complex or not understood information and making it understandable to the masses is literally the most important thing anybody can do. thank you.

  • @rollin340
    @rollin340 6 месяцев назад

    Great video. It's amazing how many things are actually what software developers do every day; breaking things down to smaller manageable components to work together to make a final product.
    Something that I learned from this video was when you said the word "Subscribe" at the end, YT's subscribe button had a little rainbow border animation. Never noticed that before.

  • @somebodyspecial5663
    @somebodyspecial5663 10 месяцев назад +12

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

  • @xxmsp91
    @xxmsp91 11 месяцев назад +5

    This one is gonna blow up. Great hooking first 30 seconds. Subscribed.

    • @TonyZhu
      @TonyZhu  11 месяцев назад

      Thank you!! Appreciate the kind words and sub

  • @Wiseguy909
    @Wiseguy909 11 месяцев назад +38

    Your editing is great, and you just seem like a fun guy in general. Amazing video, now it makes sense why a cs student (me) would play this game until 4 AM lol

    • @TonyZhu
      @TonyZhu  11 месяцев назад +2

      Thanks!! You seem like a wise guy (909) to me ;). Best of luck with your studies man!!

  • @thedeadliest4380
    @thedeadliest4380 Месяц назад +1

    just 30 seconds in and those ghost images have me chuckling, can already tell this is gunna be good. subbing in advance

    • @TonyZhu
      @TonyZhu  Месяц назад

      Check out the other video I have on league!! Your pfp couldn’t be more appropriate

  • @evanfisher64
    @evanfisher64 7 месяцев назад +6

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

  • @Hamc2811
    @Hamc2811 11 месяцев назад +33

    As someone who has neither played factorio, nor is a software engineer, i found the video surprisingly entertaining and would be interested on seeing your take on the other video, it was a very pleasant ratio of information and humour

  • @mbg8733
    @mbg8733 11 месяцев назад +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 11 месяцев назад +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 11 месяцев назад

      @@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.

  • @Captcatz
    @Captcatz 29 дней назад

    Coming back to this video months later, this video persuaded me to study code and pursue something in the tech field, now I know basic python and CPP, and I am finally getting my degree in mechatronics and learning PLC ladder logic, thanks overall for the push I needed

  • @MattaRama443
    @MattaRama443 11 месяцев назад +10

    I'm in school right now for computer science, and I've loved Factorio for years now. This is such a great analogy, and it was a really entertaining video!

  • @jacksfacts20
    @jacksfacts20 11 месяцев назад +26

    Genuinely funny, love this style of video and your editing and writing is excellent. I’ll watch whatever you make next

    • @TonyZhu
      @TonyZhu  11 месяцев назад +4

      Aw thanks!! The unconditional support from ppl down for whatever type of content is really heartwarming to see!!

  • @Will-wi3kv
    @Will-wi3kv 11 месяцев назад +11

    I think this is the video that's going to get me to play factorio when I never had considered it before.
    Its also a wonderful showcase and representation of how games can teach useful high level concepts without inducing the stress that is forcing yourself to learn new ideas and ways of thinking. It happens naturally.
    Wonderful editing and amazing sense of humor. Thank you for your awesome addition to the collective of human knowledge and understanding!!!

  • @cubixwizard3930
    @cubixwizard3930 5 месяцев назад

    I legit just came across this video and as someone with ADHD and needing immediate feedback with if i'm doing something correctly or having a visual way of explaining something this literally hit the nail on the head. its the sweet spot that I look for when learning something.
    I would love another video expanding upon this!

  • @jonaw.2153
    @jonaw.2153 11 месяцев назад +9

    I've been screaming this for years, especialy when it comes to things like logistics-and supply chains' similarities with software engineering. Glad to see I'm not the only one noticing these things. Makes me think I might not be all that crazy after all.