Rethinking The Linter

แชร์
ฝัง
  • เผยแพร่เมื่อ 16 มี.ค. 2024
  • Million Lint is much better than I expected. Building a relationship between compiler, browser, and VS Code is genius, and I'm so hyped to see what they do with it.
    SOURCES
    million.dev/blog/lint
    www.igorbedesqui.com/writing/...
    Check out my Twitch, Twitter, Discord more at t3.gg
    S/O Ph4se0n3 for the awesome edit 🙏
  • วิทยาศาสตร์และเทคโนโลยี

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

  • @Kane0123
    @Kane0123 4 หลายเดือนก่อน +226

    A company using AI but not jamming it down my throat… what a fresh new approach.

  • @Grundoko
    @Grundoko 4 หลายเดือนก่อน +74

    You should declare your conflict of interest up front and in the comments. You waited until the very end of the video where the smallest number of people are likely to see it to admit that you're an investor and therefore have a personal incentive to speak positively of million and to exclude its drawbacks.

    • @ChrisCox-wv7oo
      @ChrisCox-wv7oo 3 หลายเดือนก่อน +3

      Time stamp? I rewatched the last 7 minutes and still didn't see that he was an investor.
      $20 for 100 lints seems pretty bad, and that Theo defended it as sounding bad, but is actually really good for twitch to pay for just kind of underpins that this wasn't a unbiased reaction video.

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

      @@ChrisCox-wv7oo 18:03 (to 18:05)

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

    I want this for every framework. Mostly Svelte since that's my go-to framework anyway. But in any case, this could be SO useful for everyone.

  • @TheUnknownFactor
    @TheUnknownFactor 4 หลายเดือนก่อน +18

    What I actually liked most about this video is the examples of things that slow down react apps and how to fix them. Does a good job of illustrating some of the things I really dislike about React (because explaining these things to non-senior frontend devs is repetetive and often not easy).

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

    yes we need a video on context

  • @tarunpai2121
    @tarunpai2121 4 หลายเดือนก่อน +37

    18:05 - you're an investor in what? Million? does that make this a sponsored post? or have I grossly misunderstood?

    • @akam9919
      @akam9919 4 หลายเดือนก่อน +11

      Being an investor does not make it a "sponsored" post. To be "sponsored", one need to be PAID BY and FOR content.
      Now that being said, you still need to disclaim it.

    • @pairofrooks
      @pairofrooks 4 หลายเดือนก่อน +12

      ah, so it's a shill post, ok :)

    • @tarunpai2121
      @tarunpai2121 4 หลายเดือนก่อน +5

      ​@@akam9919 right! That's what I wanted to say. Thanks for putting it correctly.

    • @DaviAreias
      @DaviAreias 4 หลายเดือนก่อน +5

      I suspected it the moment he said they didn't mention AI in the title, as if that meant the guys were trustworthy or something, when it just means they know their target audience is more educated on the AI hype than the general public.

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

      @@DaviAreias For me it's at 19:04 when he says he could actually see himself paying for it, thereby influencing the audience in that direction.
      Again, I have no issues with it, he's free to do so; but if he indeed is an investor in Million, a disclaimer is the bare minimum.

  • @Zeragamba
    @Zeragamba 4 หลายเดือนก่อน +49

    16:33 They really need to define what a "lint" is. As i can see a lot of developers run the tool, fix one issue, run it again to get the next issue. Does each of those count against your limit?

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

      Yes

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

      thats crazy @@crispi_shots

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

      This is Aiden! Thanks, fixing our definition in the blog. Lint = something is highlighted on the page (not included: errors, no issues found)

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

    Solid is the level up

  • @SmashieHC
    @SmashieHC 4 หลายเดือนก่อน +15

    Great video once again Theo!
    P.S. Theme link is missing in description

  • @dv_interval42
    @dv_interval42 4 หลายเดือนก่อน +13

    This sounds incredible actually

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

    Definitely want to see a video going in depth more about these react optimizations and useContext

  • @madangryscientis
    @madangryscientis 4 หลายเดือนก่อน +1

    Super keen to use this at work. For a large code base $20 is rounding error. Our ci runs cost 100x this per month.

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

    Finally one video on which I agree with you 100% 😂mostly with the redux saga good job mate

  • @arturoaguilera5167
    @arturoaguilera5167 4 หลายเดือนก่อน +1

    tener que tomar en cuenta el numero de renderizados , no sera un indicio malo del sistema que es react?

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

    I've tried and remove it... I have issues with tools which in realtime detects issues, changes, and VS Code breaks, and slows my compile time, happening on WSL2...

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

    Would love to hear a video about the proper ways to use context!

  • @Marasma101
    @Marasma101 4 หลายเดือนก่อน +6

    New React 19 compiler wouldn’t make this obsolete?

    • @jwoods9659
      @jwoods9659 4 หลายเดือนก่อน +1

      Yea al this frontend stuff is dumb, how many companies using this stuff? 0, big corps are still using the same old school stuff Java, c#, ruby, plain Js

    • @PenguinjitsuX
      @PenguinjitsuX 29 วันที่ผ่านมา +1

      Yeah I was just thinking about that too, since you wouldn't need to optimize with useMemo and other stuff like that anymore. I guess it could still be useful for some other things, like how it recommended using a virtual list? But that stuff is a lot simpler to do, so yeah, it does seem like it would be obsolete after the compiler comes out.

  • @AlanFregtman
    @AlanFregtman 4 หลายเดือนก่อน +16

    Speaking of performance, there's a Rust-made linter for Python that is amazingly fast called "ruff".

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

      Legend of Dragoon reference?

  • @frikkjarl3994
    @frikkjarl3994 4 หลายเดือนก่อน +1

    I really desire this useContext video! :D

  • @AndyCormack
    @AndyCormack 4 หลายเดือนก่อน +5

    Another fantastic way to improve performance, and not need to waste time thinking about the guts of the framework as much just to make it perform well is to use Svelte, Solid, or HTMX 👌

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

    I loved (and miss) using redux-saga especially when working with streams/channels, prefer it a little bit vs observables 😥

    • @JanCajthaml
      @JanCajthaml 4 หลายเดือนก่อน +1

      I still use and love them, but Theo is right with not recommending them to beginners. Actor system design, messaging and channels are hard to master.

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

    Remember when you talked about the diagram with “the Prime line”? This arguably can push the line towards better performance for cheaper

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

    shoutout Igor for the killer theme

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

    An interesting idea. Hopefully they bring it to Webstorm because I really don't like VScode :(

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

    Seems like this would also be useful for auto detecting bugs, if they used react error boundaries or read errors from the console

  • @lcarsos
    @lcarsos 4 หลายเดือนก่อน +1

    1:13 did Theo just argue for scaffolding and codegen?

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

    Yes Please! We want a context video

  • @tom.watkins
    @tom.watkins 4 หลายเดือนก่อน

    The redux saga part gave me redux thunk flashbacks thanks 😅 nice to see AI not forced on us and just a 'part of the product', when i see heavy AI promotion now all I see is 'we arent very good devs but we made a gpt wrapper that looks impressive'

  • @hl7297
    @hl7297 4 หลายเดือนก่อน +11

    You have to inject a bunch of code from the "linter" into **each** of your components to identify re-rendering issue, just because you can't understand the React devtool profiler?

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

    I expect this to be more of an lsp than just a vscode extension. Those of us that don't use vscode would need a dedicated extension unless an lsp is provided.

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

    Any idea if this would work for react-native?

    • @mattmmilli8287
      @mattmmilli8287 4 หลายเดือนก่อน +1

      I would venture to guess it will considering it’s all the same react pattern of components and hooks etc

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

    Are you gonna avoid talking about PlanetScale 😂?

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

    just clicked the sub button. 3:50 am I an expert now?

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

    I'm interested to know about the context issue. why use use-context-selector, need a vid

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

    Interesting is there anything similar for vue?

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

    The thumbnails 😂

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

    That npx command is quite rude. It installs a vscode plugin and adds stuff to your package.json, even creates vite/(packagesystem) config (lord i hope it doesn't fuck up your old one if you have one). All without further confirmations. Man, I wonder what else it did... I sometimes forget that running npx-anything is like running random exes from the internet.

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

    I wonder if this works on libraries

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

    Do the context video plz

  • @ts8960
    @ts8960 4 หลายเดือนก่อน +43

    why does no one use million js if it increases performance by 70%? whats the catch?

    • @timthndr2996
      @timthndr2996 4 หลายเดือนก่อน +24

      It's just the beta for now and as Theo said there are still known bugs that might be a dealbreaker. I also haven't heard of it before this video so it might get some attention now.

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

      not caring enough about it and it being pretty new is the catch ig

    • @FunctionGermany
      @FunctionGermany 4 หลายเดือนก่อน +25

      when millionjs first did the rounds, it was basically incompatible with all third party react libraries like component libraries, so barely anyone adopted it. idk if that has changed since.

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

      Inertia

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

      @@danisob3633 why isnt the react core team implementing these performance boosts?

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

    Feels like just having the information in and not the LLM part can be more future proof cause new solutions are always an annoying part and make it not something that can run without continuous upkeep

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

    0:38 wow, these cards are really pretty. Is this just a linear gradient border with padding?

  • @philipmrch8326
    @philipmrch8326 4 หลายเดือนก่อน +1

    Does this exist for Neovim? I never use VSCode

    • @srymisclick
      @srymisclick 4 หลายเดือนก่อน +1

      wait for prime to live code it on stream

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

    Interesting idea, but doesn't seem to work for me. Getting a "is no longer a waterfall hook" on my project.

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

    Really interesting tool :)

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

    this is a nice one, will definitely look into adding this

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

    I worked in a company that used Redux Saga to call APIs. It was a mess.

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

    How do you improve your websites performance? Remove react and stop using fantasy animations.

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

    Ooh nooooo, I helped create the Redux saga pattern and inspired the project name 😅

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

    Sounds like Sonarlint...

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

    Which web browser do you use?

    • @Dekutard
      @Dekutard 4 หลายเดือนก่อน +1

      it’s called Arc browser. a newer one

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

      I would also like to know

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

      Arc

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

    This reminds me of a hammer I had with a broken handle. Instead of replacing the handle, I attached the hammer to a helmet and whenever I want to drive a nail, I would wear the hammer and swing my head. But sometimes I miss and hit my head against the wall instead. So to fix that, I added some padding to my forehead and now it doesn’t hurt at all.
    Problem solved!!

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

    Please no AI generated lints, I think lints should be deterministic, while AI tips should stick to other interfaces.

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

    React native one day? 🤞

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

    > An alternative compiler for React
    Cool
    > ... now a Y Combinator founder
    Ah, shit. Well, it was good while it lasted, I guess. Hope he enjoys his payout.

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

    does it has a NeoVim plugin too?

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

      Probably not ngl

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

      I asked in their Discord server and they replied they are working on a CLI tool to give you the fixes in your CLI. Definitely not as good as a integrated plugin but still works i guess.

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

    Eh!!!, Unless DarkModeProvider is getting moved around the VDOM, I'm not sure your saving much on memorising (mode,setMode), it doesn't take any props so the only reason for a re-render, (apart from DEV mode and Strict) there should be very little reason for it to re-render. I know it was only an example, but maybe not a good example to show performance improvements..

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

    `... ({mode, setMode}), [mode, setMode]);`
    JavaScript in a nutshell.

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

    Everytime Theo talks about how "subscribing is free" it makes me want to unsubscribe

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

    not interested in anything that requires me to use vsCoad

  • @Gregorius_
    @Gregorius_ 4 หลายเดือนก่อน +46

    my solution: don't use react

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

      Why

    • @austincodes
      @austincodes 4 หลายเดือนก่อน +1

      React isn't the problem. It's your bad code

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

      @@austincodes i never coded react in my life, so i don't think *my* bad code is the problem bud

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

      Cope 😂

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

    The fact that you need such tool for react just shows how much broken react is. Leave VDOM and effect stuff behind and you can forget about so much such nonsense related to react world only. Solid.js and signals is the way! There things either don't work or work properly 💪

    • @keithjohnson6510
      @keithjohnson6510 4 หลายเดือนก่อน +1

      I really like the simplicity of Solid, and it's certainly something I think worth considering. It's main problem of course is 3rd party libs, or course this could change over time. I would also say the best performance gain for React is not a Linter, but just a better state manager like Jotia etc.

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

    I tried million.js, I was not impressed.
    It does not work if you pass functions or other components as props -> only primitive values are allowed.
    The automatic mode - does not work reliably.
    The manual mode - you have to wrap everything in Higher-order-function block components in which you lose all type safety.
    You are forced some naming convention (that I'm not a fan of) for the million.js compiler to pick up and optimize the code.
    It feels like a much more simpler/crude version than Svelte (that relies very heavy on the compiler as well), so why not just use Svelte directly?

    • @AidenBai
      @AidenBai 4 หลายเดือนก่อน +1

      This is Aiden, thanks for your feedback. FYI - we fixed the primitive value issue >1 year ago, it should work. I would love to hear your thoughts on automatic mode - what is unreliable?

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

    the react community is really going out of its way to not switch to Solid, bizarre to watch

    • @sioncamara7
      @sioncamara7 4 หลายเดือนก่อน +1

      It’s because of the fantastic ecosystems surrounding react. That ecosystem would take a very long time to replicate in another language. Easier to just fix react

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

      ​@@sioncamara7 98% of the ecosystem will be outdated stuff that you wouldnt use today, what is in the react ecosystem that isnt available in solid? most modern quality tools are framework agnostic anyway

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

    It's arguably justified, but the long form content is a lot

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

      How is 20mins considered long-form content at all

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

    Is there something similar for Angular?

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

    This would work the same in react native right?

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

    Rethinking the Linter?
    More like
    Reworking TypeScript

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

    Just don't use React

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

    Pricing for B2C sucks! Sell to companies.

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

    The React industry is turning into a loop of nightmares. The React APIs are actually getting bigger than JS, TS, and HTML. You have to be a dumb a55 to use it as your main stack.

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

      There's really not much difference between all of the frameworks. One is faster to developer but runs slower, another is simpler, but has a higher bundle size, the third one may be the best of them all, but is still in beta and may not have too many libraries yet. It really does not matter imex. Server components are dope though, React now beats most other frameworks in performance because you can get away with shipping far less javascript for large projects, we are talking several times less.
      React will eventually die (see how amazing Astro is with View Transitions), and probably replaced by some Rust Templating engine, something like Templ in Go. In ~3 years there will just not be a need for React, but today it's the best choice for most projects.

  • @DmitriiBaranov-ib3kf
    @DmitriiBaranov-ib3kf 4 หลายเดือนก่อน

    Ugh, just use Vue and forget this excuse for a framework for good.

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

    second to none 😆

  • @Jay-pj7ob
    @Jay-pj7ob 4 หลายเดือนก่อน

    First ??

  • @yousafwazir286
    @yousafwazir286 4 หลายเดือนก่อน +12

    Theo please stop

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

      If this was Gotham chess it’d be perfect for a pin of shame

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

    Another react ecosystem win. React is so bad and so dependent on wrappers for any js to run, people had to copy paste npm packages with react in front of its name and now 'it has the best ecosystem'. Just lol

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

    React 🤮

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

    Got excited for nothing... damn React crap

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

    Never let JS devs think, let alone rethink.

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

    Thats great but you can also just write simple code, avoid react and other bloated modules/frameworks and you don't need this at all.

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

    react trash, people will move by this horrible framework

    • @maurvick6777
      @maurvick6777 4 หลายเดือนก่อน +1

      people will use whatever is easier and faster to write code, no one cares about perfomance or architecture in modern web.

    • @andreim6342
      @andreim6342 4 หลายเดือนก่อน +1

      @@maurvick6777 yes, and react is none of that :D, no

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

      U need only CQRS on the FE, no matter what framework u use... BE is the trash...

  • @DmitriiBaranov-ib3kf
    @DmitriiBaranov-ib3kf 4 หลายเดือนก่อน

    Ugh, just use Vue and forget this excuse for a framework for good.