The Secret Guide To Modern Software Development | Prime Reacts

Поделиться
HTML-код
  • Опубликовано: 21 июл 2023
  • Recorded live on twitch, GET IN
    / theprimeagen
    Article: factoryfactoryfactory.net/
    Author: Benji Smith - / benji_smith
    MY MAIN YT CHANNEL: Has well edited engineering videos
    / theprimeagen
    Discord
    / discord
    Have something for me to read or react to?: / theprimeagenreact
  • НаукаНаука

Комментарии • 152

  • @samuelschwager
    @samuelschwager Год назад +125

    hammers as a service

    • @Asto508
      @Asto508 Год назад +1

      Modern software business

    • @JB-fh1bb
      @JB-fh1bb Год назад +2

      New merch: HAAS

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

      😂

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

      Bring your nails and wood over to our facilities and we'll hammer it in, for the low low price of 0.50€ per swing 🙃

  • @georgehelyar
    @georgehelyar Год назад +231

    It's fine though because all the factory factory factories have an abstract base class called AbstractFactoryFactoryFactoryBase that makes it super easy to implement your own FactoryFactoryFactory

    • @jacquesfaba55
      @jacquesfaba55 Год назад +7

      Wayland

    • @Marque734
      @Marque734 Год назад +7

      So if i need a custom hammer. I build MyHammerFactory, then a MyFactoryFactory that can also build a MyHammerFactory and a MyFactoryFactoryFactory to build the MyFactoryFactory that can build myHammerFactory so I get my hammer? I wouldn't build it any other way

    • @dandogamer
      @dandogamer Год назад +1

      @@test-zg4hv I mean otherwise how I do make my custom hammer 😂😂😭

    • @DarrenJohn10X
      @DarrenJohn10X Год назад +4

      Make it a singleton!
      To keep it simple.

    • @DaviAreias
      @DaviAreias Год назад

      The rust gqlcrate names objects exactly like this CreateAppSubscriptionCreateAppSubscriptionCurrentSubscriptionMetafield

  • @xybersurfer
    @xybersurfer Год назад +162

    it's like the old saying: "All problems in computer science can be solved by another level of indirection"
    - David J. Wheeler

    • @theherk
      @theherk Год назад +3

      It’s like that, but 71 times longer.

    • @SimonBuchanNz
      @SimonBuchanNz Год назад +3

      I've only ever heard that with "except the problem of too many levels of indirection"

    • @xybersurfer
      @xybersurfer Год назад +2

      @@SimonBuchanNz that part is not always added. i think that it detracts from the saying, because it's too vague and makes it long

    • @PunchMSX
      @PunchMSX Год назад +2

      Joey Wheeler quit yugioh to be a computer scientist? That's an unexpected development.

    • @monad_tcp
      @monad_tcp Год назад +1

      @@xybersurfer no, without that part, you lose the entire purpose of the thing

  • @AScribblingTurtle
    @AScribblingTurtle Год назад +131

    You know what they say. "If all you have is a Hammer Factory Factory Factory, then everything looks like a nail."
    Also i think I can hear Grug reaching for his club in the distance. May god have mercy on that poor employees soul.🙏

    • @Mglunafh
      @Mglunafh Год назад +8

      Factory shamans will not be happy if grug learns about them

    • @fulconandroadcone9488
      @fulconandroadcone9488 Год назад +2

      @@Mglunafh I grug support in his shaman search. When no hammer present, factory no, hard, use rock instead.

    • @JB-fh1bb
      @JB-fh1bb Год назад

      Wouldn’t it be “Everything looks like a hammer factory factory”?

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

      nail.nail.nail[0]

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

      @@JesseGilbride rock.rock[420].rock[69].while(nail => nail.hit)

  • @Dzejded
    @Dzejded Год назад +177

    Can’t wait for post-modern software development

    • @SEOTADEO
      @SEOTADEO Год назад +65

      Performance is just a social construct actually.

    • @leonvolq6179
      @leonvolq6179 Год назад +33

      You can define your own performance in work and in software.
      If anyone tells you your software is slow that's discrimination.

    • @birdbeakbeardneck3617
      @birdbeakbeardneck3617 Год назад +2

      Lol

    • @jasondoe2596
      @jasondoe2596 Год назад +2

      ​@@SEOTADEODamn, you made me LOL in real life. Your comment is too damn good to be buried here!

    • @pedrofam8302
      @pedrofam8302 Год назад

      ​@@SEOTADEO😂

  • @T1Oracle
    @T1Oracle Год назад +36

    "ChatGPT, build me a spice rack!"
    "Looks crooked."
    "Good enough..."

  • @jarretthorton7439
    @jarretthorton7439 Год назад +100

    JDSL is my only framework

    • @joshjackson5274
      @joshjackson5274 Год назад +5

      Tom approved

    • @cristobalbergillos5084
      @cristobalbergillos5084 Год назад +7

      Tom es un genio

    • @SimGunther
      @SimGunther Год назад +3

      Would Tom the Genius think to have a general purpose JdslBuildingFactoryFactoryFactoryInterpreterFlyweightBuilder?

    • @fulconandroadcone9488
      @fulconandroadcone9488 Год назад +4

      ​@@SimGunther I think in JDSL you call it a refinery, not factory. Would need to check with Tom.

    • @DarrenJohn10X
      @DarrenJohn10X Год назад

      TomSingleton == GeniusFactory

  • @blipojones2114
    @blipojones2114 Год назад +32

    "So there is documentation right?.....(menacingly raises ball-peen hammer)..

    • @CottidaeSEA
      @CottidaeSEA Год назад +5

      He'd have to figure out how to use the general-purpose tool-building factory factory factory first

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

      I raise my balls and peen

    • @facundomartin6993
      @facundomartin6993 10 месяцев назад

      Underrated comment

  • @alangamer50
    @alangamer50 Год назад +21

    It also kinda reminded me of needing to get a PhD in AWS just to deploy a hello world

    • @Fernando-ry5qt
      @Fernando-ry5qt Год назад +6

      And 2 certifications to actually make it public available through a plethora of firewalls and gateways you don't even know why you need, but you do, according to the Kubernetes expert your company hired

  • @KonradGM
    @KonradGM Год назад +33

    This reminds me of when i wanted to learn React, and i wanted to first realise why it is used in the first place. I might not get any resource about what state was, but i sure as hell knew that React state was used to manage state(even though i couldn't find what that state even was then...)

    • @fulconandroadcone9488
      @fulconandroadcone9488 Год назад +5

      I remember hearing about "state management" and could not figure out what the deck is that supposed to be.

    • @monad_tcp
      @monad_tcp Год назад

      and all of that shouldn't even exist because React is stupid and not functional and stores the state inside the freaking component

  • @yannick5099
    @yannick5099 Год назад +24

    That's good business advice, sell Kubernetes cluster, CI/CD pipelines, agile methods and UI-/AI-frameworks instead of software people can actually use. Writing software is so 2010.

  • @nagoshi01
    @nagoshi01 Год назад +35

    This went beyond semantic satiation and now the word Factory means *too* much to me

    • @sciencedude22
      @sciencedude22 Год назад +4

      When you look into the factory the factory looks back

    • @pedrobigboss
      @pedrobigboss Год назад

      A factory factory factory factory factory factory factory.

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

    The dilemma of having to choose between:
    - Spend 1 day, to learn how to design the hammer myself
    - Spend 5 days, learning the hammer framework that will become deprecated by next week.
    Tech illiterate Management: _"All our competitors use the framework, so we should to!"_
    Also Management: _"Why is it taking so long?"_

  • @DarrenJohn10X
    @DarrenJohn10X Год назад +10

    As an escapee from Java this was traumatizing.
    No wonder I foolishly cling to my own vanilla JS functions rather than opening a similar door to the Modern Web App Dev "easy reusability" nightmare...

  • @CodeShudder
    @CodeShudder Год назад +5

    - Oh no. That's a poor man's DI. We don't do that anymore...
    - Should I put everything into containers then?
    - We had those, but they're too simiilar to service locator, which is known anti-pattern, so we used this cool reflection feature...
    - What if I use interface reference?
    - That's not a problem. You see, there are these things called annotations, where...
    - But I don't know which implementation to use yet
    - Of course. This is why you sometimes need a dependency-map.xml configuration file
    - They're kinda hard to read...
    - I know, right? Our framework has this CLI command that will show everything in bautifully formatted output. Beside that, there's this IDE plugin, already built-in.
    - What if I need to select implementation at runtime based on, let's say, user input?
    - Oh there are many ways to do that: conditional annotations, factory qualifier injections... you should look at our documentation.
    - Sounds complicated.
    - It becomes super easy when you learn how to do it.
    - Couldn't I just make an if statement in my...
    - We've been through this already, Sir. If you want to question industry standards I suggest you look for something else. We're embracing SOLID IoC, domain-driven rapid development - we're talking real work here, not some theoretical academic solutions for "architecture astronauts"

  • @Drazzz27
    @Drazzz27 Год назад +4

    Man, this article is such a blast from the past.

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

    Of the 3 factory levels, I get the levels 1 & 3, but it's that sneaky level 2 that can be a little rough to dive into.

  • @mehfooz-ur-rehman
    @mehfooz-ur-rehman Год назад +3

    the thing is in js world when someone get to know the underlying concept they tend to get to know the underlying problems also and if someone can use base tools to create apps they eventually build a framework of there own with whole other abstractions and now we have a js gaddon so when something like react gives an abstraction we love to hate it as we know something that its not venilla js performancet but when we try the base hammer we need to handle thousands of issues other than which we knew about as we need to know type of right hammer for the task so framework may be bad but provide a one stop factoryfactoryfactory for new commers to start with as most of us in js world mostly arn't creating basic blogs

  • @macctosh
    @macctosh Год назад +5

    Awesome article.... needed that laugh!

  • @headlights-go-up
    @headlights-go-up Год назад +6

    hilarious article with a vital point imo

  • @sapkra
    @sapkra Год назад +4

    The conclusion is like "Apply first principle thinking also to software development"

  • @TECHN01200
    @TECHN01200 Год назад +1

    Welcome to over-abstraction, I hope you have enjoyed your stay!

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

    I have known this post in a while and it's so accurate lmao

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

      Reminder that programmers are neurotic maniacs and if you are not one yet do not worry the mental damage is piling up

  • @Makeshitjusbecuz
    @Makeshitjusbecuz Год назад +10

    Its no longer software development. Its software software software software software development

  • @bombrman1994
    @bombrman1994 Год назад +1

    someone at work did make some library on C# and asked us to use it, but he has no documentations LOL

  • @pif5023
    @pif5023 Год назад +3

    Did the guy manage to build his rack in the end or went straight to IKEA?
    I am staring to think IKEA may be involved in these factory factories.

    • @leonelaguilera3559
      @leonelaguilera3559 10 месяцев назад +1

      That was the part I was expecting, when the dude says "fuck it, I'm buying the spice rack", but it turns out that the ones that are available either are not able to hold as many flask as you need, or are to big to fit the kitchen, so you either buy flasks that are able to fit multiple spices or make a hole in your wall (aka: terrible workarounds), and so on...

  • @br3nto
    @br3nto Год назад

    2:58 this is the same as the promise of cloud solutions 😂

  • @felixmildon690
    @felixmildon690 Год назад

    i like that this was shorter than normal. The ball peen hammer thing cmud

  • @ishaanmalhotra3008
    @ishaanmalhotra3008 Год назад

    This was absolutely hilarious!

  • @TECHN01200
    @TECHN01200 Год назад +13

    I am sad that all software development has turned into this.

  • @FabulousFadz
    @FabulousFadz Год назад

    1:35 that took a dark turn

  • @abelrashid5184
    @abelrashid5184 Год назад

    Take a shot every time the word "hammer" is mention.

  • @itsmelukario5969
    @itsmelukario5969 Год назад +1

    This is gold

  • @user-ru1jc4jy2w
    @user-ru1jc4jy2w Год назад

    This video is so hilarious i didnt realize Ive been watching at 1.5x speed)))

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

    OK, can I get a basic subsrciption to your HFFFaaS solution on the per request billing mechanism, and I agree to a $20 per request/response pair fee, for any of your basic prebuilt object definitions?

  • @funmbiie
    @funmbiie Год назад

    😂where does he get these articles?

  • @OsvaldoGago
    @OsvaldoGago Год назад +5

    People actually don't want hammers. All they want is hammer blows!

    • @kurt7020
      @kurt7020 Год назад +4

      Sounds like a backend service XD

  • @Thomas_Lo
    @Thomas_Lo Год назад +3

    STOP.. HAMMER TIME!

  • @danielvaughn4551
    @danielvaughn4551 Год назад +4

    It's funny because my interpretation was that this was about terraform/kubernetes/helm/etc. FE dev is *easy* compared to that nightmare.

    • @Fernando-ry5qt
      @Fernando-ry5qt Год назад

      O my.... agree, and ALL OF THAT NIGHTMARE, just to get a damn microservice arch online that serves 1000 users/min or even less.....
      Can we just install a debian OS into a toaster and call it a day? please?

    • @AtomTiger3460
      @AtomTiger3460 Год назад

      Each have their strengths

  • @JuusoAlasuutari
    @JuusoAlasuutari Год назад

    The secret? The dark lord, of course!

  • @hsider
    @hsider Год назад +2

    It's not only frontend development, it's web development 😢 I'm lost, didn't code for a while.

  • @trollflix
    @trollflix Год назад

    lol u made my day, thank you! 😂

  • @telnobynoyator_6183
    @telnobynoyator_6183 Год назад

    tfw using a hammer is to implement your web server in assembly

  • @thegrumpydeveloper
    @thegrumpydeveloper Год назад +1

    My takeaway is don’t listen to the guy at hammer factory factory store and do what makes sense for your project. If it sounds complex it probably is. Grug is your sage here.

  • @rohitaug
    @rohitaug Год назад

    I'm trying to figure out how one builds a factory factory without a hammer

    • @SEOTADEO
      @SEOTADEO Год назад +1

      Simple. You just use the factory factory factory to give you the factory factory you want.

    • @spookycat4620
      @spookycat4620 Год назад

      you find a stone to use as a substitute hammer

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

    Ah yes, Fizzbuzz Enterprise.

  • @zahawolfe
    @zahawolfe Год назад +1

    Should have signed off as the factoryigain

  • @greycell2442
    @greycell2442 Год назад

    I use the ball peen on my forehead, and learn to use memory management different. Why collect trash in my head for later when I can just hit myself on the head and learn to use memory efficiently? Rust... it's the ball peen hammer and factory builder rolled into one, and it generates docs for me.

  • @gtgunar
    @gtgunar Год назад

    At that point you may as well get a shed factoryFactory.

  • @FirdausAziz
    @FirdausAziz Год назад +2

    Then these factory factory schema factory seller start scratching their heads when buyer simply opt to just buy a hammer (HTMX).

  • @TheAces1979
    @TheAces1979 Год назад

    Clerk: "...And if you want to kill someone, there's really no substitute for a ball-peen hammer."
    Me: "*Ball Pein...."
    Clerk: "What?"
    Me: "What?"

  • @vitiok78
    @vitiok78 Год назад +8

    I have a different analogy. Solving simple problems with a framework is like hammering nails with a microscope.
    Framework is like a school lab microscope. A sophisticated tool. But it's also heavy with a very hard and steady base. You can hammer your nails with it. But will it be efficient?

    • @tonyhart2744
      @tonyhart2744 Год назад +2

      idk man, every web framework in go and rust is pretty effecient

    • @CottidaeSEA
      @CottidaeSEA Год назад +7

      @@tonyhart2744 Give it a couple of years.

    • @vitiok78
      @vitiok78 Год назад +1

      @@tonyhart2744 Every time I use any web framework in Go I regret it immediately. There's no need to do this. All I need is a set of lightweight libraries and each of them works like a scalpel: clean, precise, and only what I need from it.

  • @cig_in_mouth3786
    @cig_in_mouth3786 Год назад

    Factory is like my python variable

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

    why is youtube just people reading websites now

  • @lucasa8710
    @lucasa8710 Год назад

    for some reason I fill like I'm talking with a C++ expert

  • @user-hk3ej4hk7m
    @user-hk3ej4hk7m Год назад

    The concretogen

  • @Gornius
    @Gornius Год назад +1

    It's only a matter of time until they start selling FactoryFactoryFactoryFactories that produce FactoryFactoryFactories for common tasks.

    • @Fernando-ry5qt
      @Fernando-ry5qt Год назад

      Yep, and guess what!?
      it is actually the main AI business model, train those things to do specialized subtasks that are part of other tasks, that are part of..... (You can keep going)

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

    I can't believe we had a whole video about factory factory factories without sh*tting on Java. What has the world come to?

  • @matt.loupe.
    @matt.loupe. Год назад +1

    The majority of websites could still PHP. There I said it.

    • @SXsoft99
      @SXsoft99 Год назад +2

      The majority still are

  • @vikhr
    @vikhr Год назад

    Factorio.

  • @ckronenwetter
    @ckronenwetter Год назад

    This hits a bit too close to home

  • @realmimak
    @realmimak Год назад

    a ball-peen killer take

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

    Look I don't know if anyone has ever found a real need to have general purpose factory factory factory, but if they did... god what kind of monstrocity did you build?

  • @fire17102
    @fire17102 Год назад +2

    Damn the frontend space seems to be so convoluted. Abstraction should be used to make data access layers so you can swap code without hard refactoring. And make it easy when you do refactor, not make it a complicated clusterfuck

    • @DarrenJohn10X
      @DarrenJohn10X Год назад +2

      As an escapee from Java this was traumatizing.
      No wonder I cling to my own vanilla JS functions rather than opening a similar door to the Modern Web App Dev nightmare...

  • @kubre
    @kubre Год назад

    factory

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

    If this exact thing happened in real life, I would tell the sales person to fuck off and leave lmao

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

    oh god gimme just one second ... I really need to puke right now

  • @ThePenitentOneArg
    @ThePenitentOneArg Год назад

    3:15 "Por qué Maríaaaaaa...DB?" 🤪

  • @AlanJames1987
    @AlanJames1987 Год назад

    Who uses a hammer and nails? You use screws and a driver.

  • @davidl.e5203
    @davidl.e5203 2 месяца назад

    Reason why tailwind css code looks ugly, but you're really better off with it than to customize your classes.

  • @GhiveciuMarian
    @GhiveciuMarian Год назад

    I just.... Love it! Factory Factory Factory for Factory factory Factory.....🤡

  • @jayshartzer844
    @jayshartzer844 Год назад

    It's factories all the way down
    Always has been

  • @dipi71
    @dipi71 Год назад

    Fffactory is what the cool kids call it nowadays.

  • @papafrancesco8782
    @papafrancesco8782 Год назад

    I love prime. That is all i have to say. That is the end of the comment.

  • @sebastianpopa4778
    @sebastianpopa4778 Год назад

    2 cents, next time just post the link and call it a day

  • @uoweme5grand
    @uoweme5grand Год назад

    Factory stopped sounding like a word half way through this video

  • @laughingvampire7555
    @laughingvampire7555 Год назад +1

    glue and nails are for losers, use joints

  • @PinakiGupta82Appu
    @PinakiGupta82Appu Год назад

    One unrelated comment: I will salute you if you put a series of easy and short tutorials to teach JS, HTML and CSS for folks who are interested but have no idea where to start. You know, so let others know. No offence, please 🙏

    • @TheBswan
      @TheBswan Год назад +5

      Prime's content is targeted at more experienced devs. There is a wealth of information available for folks to learn js, html, css. The most important thing is that you pick some resource, course, project, whatever and follow it through to the end.

    • @abdallahm96
      @abdallahm96 Год назад +2

      I recommend watching webdevsimplified and kevin powell for that content

  • @dublindynamicdrive
    @dublindynamicdrive Год назад

    1

  • @wattsvanes4613
    @wattsvanes4613 Год назад

    2

  • @AlexAegisOfficial
    @AlexAegisOfficial Год назад

    Java and it's consequences

  • @ohwow2074
    @ohwow2074 Год назад

    This kind of software development is gae. We need to actively do something about it.