Building Resilient Frontend Architecture • Monica Lent • GOTO 2019

Поділитися
Вставка
  • Опубліковано 19 січ 2025

КОМЕНТАРІ • 123

  • @GOTO-
    @GOTO-  2 місяці тому

    Looking for books & other references mentioned in this video?
    Check out the video description for all the links!
    Want early access to videos & exclusive perks?
    Join our channel membership today: ua-cam.com/channels/s_tLP3AiwYKwdUHpltJPuA.htmljoin
    Question for you: What’s your biggest takeaway from this video? Let us know in the comments! ⬇

  • @Sindoku
    @Sindoku Рік тому +5

    Monica’s presentation skills are some of the best I’ve ever seen in the tech field. This was a near flawless execution. I loved the content as well, very important and informative stuff she was talking about. I definitely took notes!

  • @thonEtMais
    @thonEtMais 3 роки тому +30

    GOTO should make a GOBACKTO playlist with brillant talks that remain valid in time

  • @harrypehkonen
    @harrypehkonen 3 роки тому +6

    This is the fastest 30-minute video I have ever seen! Felt like ten minutes. Tops!

  • @samzmann
    @samzmann 2 роки тому +15

    "Forbidden dependency test": the concept I've been dreaming about for years, but that I did not know where to look for information!!! Thanks, great talk.

    • @abdulkaderjeelani
      @abdulkaderjeelani 2 роки тому +1

      Do look for architectural fitness functions. That is yet another name !

  • @javascriptduniya1201
    @javascriptduniya1201 2 роки тому +14

    Her presentation skills are awesome.

  • @HappyCheeryChap
    @HappyCheeryChap 5 років тому +17

    For like 10+ years I had the strong belief that "copy and pasting code means you're probably doing something wrong"... but yeah over time, I've come to the same realisation that sometimes it's just more sensible than creating abstracted dependencies. A lot of the abstractions I wrote in the past never even got used a 2nd time anyway.

  • @matthewfehskens2327
    @matthewfehskens2327 5 років тому +88

    "Technical debt on a subscription model" hits far too close to home

  • @dorinm4653
    @dorinm4653 3 роки тому +2

    Over-engineering is huge problem in Software Development community. Great presentation and very good way to highlight those problems

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

    I generally don't like these kind of talks, but this was a very good one

  • @daniela.sorianoii2034
    @daniela.sorianoii2034 Рік тому +1

    I love this talk. Everything makes sense as an FE dev

  • @kuti1643
    @kuti1643 Рік тому +4

    Really like the part about internal dependency management, lot of people in the FE space don't think about this. I found that following a kind of modified version of domain driven architecture works very well for me. I also followed some "what can import from where" type of rules in the past, bu I wasn't aware of a tool that can actually enforce those rules in a JS project, very good to know that there is such a thing, will definitely use it next time.

  • @alexbennett5647
    @alexbennett5647 Рік тому +1

    Best talk I've heard in a while!

  • @joaoforja893
    @joaoforja893 5 років тому +47

    Tremendous talk! All the principles presented are applicable not just to FE development, but to software development in general.

  • @sirAlexander_T
    @sirAlexander_T 5 років тому +25

    Brilliant talk Monica! and great delivery! transcends front-end. Addresses software engineering in general.

  • @angrycat-ze
    @angrycat-ze 3 роки тому +6

    Amazing talk! I wish I was there to give her an stand ovation 👏🏼

  • @arsenalprince4
    @arsenalprince4 5 років тому +11

    Oh wow, she is a good speaker. Love the talk!

  • @johndavid3114
    @johndavid3114 2 роки тому +2

    She is spot on about everything she mentions.

  • @bitbrain3468
    @bitbrain3468 5 років тому +3

    Argh.. I wish there was a "here's what you should watch/view/read next" to go along with this. This is EXACTLY the kind of thing I need to know right now. So thank you for a wonderful talk Ms. Lent. Just wish I could find *more* :D

  • @shfunky
    @shfunky 3 роки тому +1

    Fantastic talk. Still holds up to this day.

  • @fullc0depurple
    @fullc0depurple 3 роки тому +1

    This pragmatic approach is really touching to me.

  • @DodaGarcia
    @DodaGarcia Рік тому +2

    The component having an existential crisis cracked me up 😂 "Where am I??"

  • @andreasfinke1801
    @andreasfinke1801 4 роки тому +3

    Just before I watched this talk, I was just thinking about the folder structure of my project. Thanks for this.

  • @anonymouscoder3557
    @anonymouscoder3557 3 роки тому +1

    Great presentation, Address a lot of issues between Decoupling > Dry, Explains when to choose what. Clearly explains that there is no silver bullet when it comes to "best practices". EOD "it depends" is the final answer.

  • @francoisconsigny9106
    @francoisconsigny9106 2 роки тому

    This was a good reminder ! Thank you Monica Lent.
    A lot of frontend developper are like "this does the same thing so i made a component folder that shares the component. I just put a condition if its in this or in this page".
    Backend are like "Dude, you are just telling me there a not doing the same thing" haha .
    And i still dont understand why in Mobile App you use Observables and stuff. Doing module app and you dont do the same in frontend. I have some doubt of the benifit of Redux on webapp for the frontend community developpers.
    Cheers guys

  • @GUIGOLA777
    @GUIGOLA777 4 роки тому +1

    This is infotainment. Monica is brilliant!

  • @danielt63
    @danielt63 5 років тому +7

    I remember when XP first introduced DRY to the world. One reuse meant copy/paste, two reuses meant copy/paste but seriously think about making a shared component. A shared component isn't a given until you have the third reuse opportunity. Somehow over the years, it changed to making the shared component on the first reuse instead of waiting for the second or third one.

    • @l-cornelius-dol
      @l-cornelius-dol 4 роки тому +1

      DRY long predates XP. But the "third use" principle is a good one to balance things out.

  • @kylonguyen-we5mx
    @kylonguyen-we5mx 11 місяців тому +1

    What a brilliant lady!

  • @coderitual_
    @coderitual_ 5 років тому +11

    Big plus for copy & paste code if needed. Bad abstraction is worse than no abstraction.

  • @notramiras
    @notramiras Рік тому

    Nx has a very neat way of restricting dependency rules

  • @YBWang-pi9qq
    @YBWang-pi9qq 3 роки тому +1

    29:06 constraints for more resilient architecture
    - dependence inward
    - code reuse might not help
    - enforce boudaries

  • @qwertt14
    @qwertt14 3 роки тому +2

    amazing lecture, kudos Monica!

  • @rajdeepchandra9807
    @rajdeepchandra9807 3 роки тому +1

    Great talk. In our React code base we use madge for circular dependency checks. It is very helpful and helped us avoid regression issues in our large codebase.

  • @praveensg
    @praveensg 3 роки тому +1

    A+ content and A++ delivery

  • @abdallahgamal5092
    @abdallahgamal5092 4 роки тому +1

    Really amazing talk , monica you know really how to speak really nicely thanks I learned alot

  • @sct848
    @sct848 2 роки тому +1

    Great talk! Thanks for the tips.

  • @greenkodex
    @greenkodex 4 роки тому +19

    I think she does herself a disservice with the "Frontend" label. Everything she's said applies to system wide architecture. Great talk!

    • @Ziviani
      @Ziviani 2 роки тому +2

      Exactly! I'm not into frontend development but I'm glad I have "misclicked" on this. Great presentation.

  • @mohamedhassanwd6434
    @mohamedhassanwd6434 5 років тому +2

    A great presentation Monica, I really like the way you deliver the info and the way you present. Hope to see great talks for you again 😘

  • @quyettran424
    @quyettran424 3 роки тому

    Shared components are not just about DRY, but also consistency and synchronization in updates. I think this is more important.

  • @detaaditya6237
    @detaaditya6237 2 роки тому +1

    Boundary enforcement is really interesting. I never thought of it. Might try it on my next project

  • @iampervaze
    @iampervaze 5 років тому +2

    I agree to a greater extent to what you said. My manager always insists on keeping things decoupled to such a level that the change over time does not impact other business areas.

    • @jinxblaze
      @jinxblaze 5 років тому +2

      It is quite opposite to how my company works xD it's all a coupled mess and terrible APIs. Ui code literally has Java class names in the if blocks of javascript. Quitting soon

    • @iampervaze
      @iampervaze 5 років тому

      Sounds like an old monolith you have been working on, but hey, software development is a complex world, no matter how much you want to steer away from this kinda stuff, you end up working on it, one time or the other :)

  • @shivankchopra8552
    @shivankchopra8552 3 роки тому +1

    Great talk! Thanks for the video!

  • @wusaby-ush
    @wusaby-ush Рік тому +1

    This was great really

  • @ranjitadhana9532
    @ranjitadhana9532 4 роки тому +3

    Very accurate and real observations. A very interesting talk. Thanks a lot. 🙋

  • @QiMU01
    @QiMU01 2 роки тому

    Constraining the dependency import architecture rings true to me. I made an eslint plugin for whitelisting and blacklisting dependencies for folders in the app for the company I am working for. It really is helpful.

  • @shoaibbhimani7831
    @shoaibbhimani7831 Рік тому

    Thank you Monica very interesting Talk

  • @RajasegarChandiran
    @RajasegarChandiran 5 років тому +5

    "Migration is the name of the game. If you are not migrating in FE you're left behind." - l love that.

  • @ThugLifeModafocah
    @ThugLifeModafocah 11 місяців тому

    I agreeeeeee... As Sandi Metz use to say: Duplication is cheaper than the wrong abstraction.

  • @laurelineparis5407
    @laurelineparis5407 3 роки тому +1

    I seriously loved it :) thanks

  • @illuminach8279
    @illuminach8279 2 роки тому +1

    Great presentation!

  • @BryonLape
    @BryonLape 3 роки тому

    Twenty years ago, I wrote my Perl object oriented and my Javascript with prototypes. Confused the crap out of everyone else. People still try hard to avoid the prototyping aspects of Javascript.

  • @thepetesmith
    @thepetesmith 3 роки тому +1

    She is brilliant wow

  • @NabeelIbrahimcp
    @NabeelIbrahimcp 3 роки тому +1

    Really awesome explanation

  • @gompro
    @gompro 5 років тому +4

    such a great presentation! love it

  • @inthemidstofitall
    @inthemidstofitall 5 років тому +3

    Very helpful, not just for front-end development. Thank you!

  • @WesDoyle
    @WesDoyle 3 роки тому +3

    excellent talk. decoupled > dry is wonderfully succinct.

  • @tejbirring9673
    @tejbirring9673 2 роки тому +1

    A very well thought out talk relevant to areas of software engineering beyond frontend. Takes me back to embedded days.

  • @Doombuggie41
    @Doombuggie41 5 років тому +4

    Loved this talk! However, I don't feel that monorepos are very out of reach anymore. Yarn workspaces makes things like this so easy!

    • @TheAndre2131
      @TheAndre2131 2 роки тому

      now we're using Nx, and it works like a charm

  • @ahmad.shiddiq
    @ahmad.shiddiq Рік тому +1

    god damn, this was awesome

  • @tadeoriverosk
    @tadeoriverosk 5 років тому +1

    One of the best talks, love the ideas and the way of presenting them!

  • @emmanuelugwuoke967
    @emmanuelugwuoke967 2 роки тому +1

    Great talk!🎊

  • @bardhan.abhirup
    @bardhan.abhirup 2 роки тому

    this was brilliant!

  • @woodmelui326
    @woodmelui326 4 роки тому +1

    Why rewrite the code? Sometimes, it is because "YOU THINK" you have a "BETTER" solution

  • @alvincrespo
    @alvincrespo 5 років тому +4

    Fantastic talk! Thank you!

  • @SaifUlIslam-di5xv
    @SaifUlIslam-di5xv 3 роки тому +1

    Amazing talk.

  • @razik91
    @razik91 3 роки тому +1

    Great talk! 🙂

  • @rituroy6598
    @rituroy6598 3 роки тому +1

    Great talk👍🏻

  • @shubhkarmansingh5668
    @shubhkarmansingh5668 3 роки тому +5

    "Senior engineer or whatever it is we call 19 year olds these days"
    Killer joke 😂😂
    Now you have my attention !!!

  • @sergioavalos
    @sergioavalos Рік тому +1

    I like the structure of the talk and content, but I'm not a fan of the passive-agressive and bit sarcastic tone from the speaker. Small note, I did enjoy it and will recommend it

  • @lenaggar
    @lenaggar 5 років тому +7

    this an amazing talk ❤️

  • @manishtripathy1549
    @manishtripathy1549 4 роки тому +1

    Great talk! Wish I could hit like 10 times.

  • @LonliLokli
    @LonliLokli 4 роки тому +1

    It's really good topic, great thanks for it!

  • @nsambataufeeq1748
    @nsambataufeeq1748 3 роки тому +1

    great talk,thanks

  • @SamuelKarani
    @SamuelKarani 4 роки тому +1

    OOP/Functional constraints/benefits isn't always mutually exclusive

  • @uwontlikeit
    @uwontlikeit 4 роки тому

    can someone tell GOTO channel about the timecodes?

  • @Kilo.November
    @Kilo.November 5 років тому +6

    Monica bringin that sassy attitude while droppin insights!

  • @alexanderdreith6794
    @alexanderdreith6794 5 років тому +4

    I think there are some great thoughts here from a pure code standpoint, but all the decision flow was discussed as one way. Like new business requirements fracturing a generic shared component. But I also like to look at things like that in a reverse flow of thought.
    Sometimes a designer has created a piece of UI that is complicating the code of a shared component and rather than saying "then we should split this code" you should consider if it's a smell that the designer is breaking pattern of the design system. Why should a one-off coded component be created to meet a one-off design need rather than the design using the already provided component? Sometimes it's necessary, but I think using the introduction of complexity to an architecture can be a good canary for why it's happening rather than just blind implementation.

  • @KevinBoosten
    @KevinBoosten 4 роки тому +1

    Great talk!

  • @l-cornelius-dol
    @l-cornelius-dol 4 роки тому +1

    Excellent talk. Both in content and presentation.

  • @owenizedd2830
    @owenizedd2830 3 роки тому

    This actually very similar to what dan abramov was talking about in his wet codebase talk

  • @edarioq
    @edarioq 4 роки тому +2

    Angular gives us good architecture right out of the box...

    • @nishantsingh
      @nishantsingh 3 роки тому +1

      That's the comment i was looking for.

  • @faisalhakim5920
    @faisalhakim5920 3 роки тому +1

    good talk

  • @semrana1986
    @semrana1986 3 роки тому

    existential crisis for a component behaving like a dangling pointer is so true

  • @OfferoC
    @OfferoC 5 років тому +2

    Great talk, thank y0u.

  • @daCorasla
    @daCorasla 4 роки тому +1

    Great talk! :)

  • @ghosteng
    @ghosteng Рік тому

    Just because someone speaks so beautifuly, I does make sense all the time.

  • @driziiD
    @driziiD 5 років тому +2

    nice talk

  • @PaulSebastianM
    @PaulSebastianM 4 роки тому

    She knows her stuff... can't believe she's that young.

  • @ricardoferreirades
    @ricardoferreirades 4 роки тому +1

    I liked it!

  • @phanvanhoa
    @phanvanhoa 4 роки тому +1

    I come here for the topic. I'm a simple developer. Everything she said is absolutely right :v

  • @edarioq
    @edarioq 4 роки тому

    Good talk thanks.

  • @Oswee
    @Oswee 4 роки тому

    Excelent talk! :)

  • @gabrielsm0907
    @gabrielsm0907 Рік тому +1

    Great

  • @akay64x2
    @akay64x2 5 років тому +1

    Truth has been spoken :D

  • @zourdy697
    @zourdy697 3 роки тому +1

    damn she is cool, I wish I had a co-worker like her

  • @SachinYadav-eh7vg
    @SachinYadav-eh7vg Рік тому

    22:46

  • @nasheomirro8102
    @nasheomirro8102 2 роки тому

    Ironically, the way I found this video is by searching up "react architecture"

  • @psnZYKRON
    @psnZYKRON 4 роки тому +2

    This whole talk feels like a personal attack 😂

  • @trunghieuhoang3839
    @trunghieuhoang3839 5 років тому

    Great talk and she is graceful too

  • @rickvian
    @rickvian 3 роки тому

    "big ball of mud" also known by italiano as "big ball of spaghetti" code