Vite has been a breeze to work with, since it just works. I originally started using it as a replacement for ts-node because it's a pain to get it to run correctly, and vite-node just handles all of the config.
I'm unsubscribing because... this channel is just slightly too reactionary and gives me the wrong ideas about trends. I have miscalculated several trajectories based on you getting all the insider knowledge before me, and it being out of date before I can react. I think you're great, I'll probably come back. But I really dislike how you know industry trends but they're like reading that "red wine is great, red wine will kill you! red wine is great" a bit too often for my career informatic needs
Interesting stand. I usually only see him as an enthusiast and a popular dev who shares exciting news. He is probably not even in the race of the credibility which you felt he lacks.
Couldn't agree more. If you look at the history of this channel then its basically "I am excited about this shiny new thing" and a few years later its "I am moving away from my current thing because theres a new shiny thing". I wouldn't even be surprised if he is like "Why I moved away from Vite" in a couple of years. This pattern keeps repeating. I'll admit there are some informative videos but they probably don't bring in much revenue so we don't see those kind of videos being produced often. Its not just a problem with this channel. Its a problem with the tech bubble in general. Everyone just does hot takes and shills the new things because thats what makes them the money. Its basically tech brainrot, you don't get anything of value, just disappointment.
@@avinashthakur80came here to say exactly this. The fact that op “miscalculated several trajectories” is crazyyyy based off watching an enthusiast share his current opinion on something.
I completely agree with Theo in this, in our prod web app, created in 2021 we are using CRA as a base for the app. Last month I spent around 15 working days for enabling HMR in our app because of some edge cases that we have in dev env. Messing with webpack was a pain in the a** and took me most of the time. Bad experience and I think it was avoidable if we would go with something like Vite or something else then.
I have reservations about beginners starting with next js... For someone who is from the computer science background, who has prior experience with application development in general, next js could be a valid starting point. However, for someone who is an absolute beginner, who doesn't know the difference between browser javascript and server javascript(that was me btw), the next js build would be the easiest way to chase the new dev away from React. TLDR : If you're starting new, start with vite react, not Next js
CRA just flat out refused to keep their package json imports up-to-date, which means red severity errors would always pop up. They would say things like, oh, the vulnerability is only dev side so I just ejected once I hit that attitude.
I'm old enough to remember having to pipe together tsc and babel (sometimes with gulp) and also the old craco package. Madness. I don't miss having Webpack on my CV
Create-react-app like any dev tool or framework had it's time and I'd like to appreciate the developers that created it. All these technologies that we have now are standing on the shoulders of the tools like CRA. I'm happy to use all these tools now like next.js or vite and I'm happy that they exist however let's also appreciate the team which created, CRA, Jquery.
So the best way to do web dev is to use a giant tech company's wrapper for a giant tech company's "library". I think this might be worse then "I'm a spring developer". At least that's one step away from the underlying technology. I feel super bad for the pile of awful decisions we are leaving new devs with.
At my current position, I have some of the most subject matter expertise when it comes to front end web projects and react. I noticed that a lot of of my coworkers and managers went to go use creative react app when they wanted to boot strap or react project. I had to tell them, “it’s been deprecated for a while and there’s newer ways to do it like Vite” it was annoying that I had to tell them that it was deprecated in the first place. And of course, it was not officially deprecated… even though it has those notices at the top of the website
I've legit been working with AG-Grid in my full-time job for more than 2 years now. It's been a love-hate relationship, but mostly love. So seeing Theo get sponsored by them was an odd moment for me lol.
I started webdev a few months ago, I was exclusively a backend dev then, but oh god, did I have this exact problem. Documentation and tutorials online aren't updated most of the time, so we need to put deprecation notices and it makes 0 sense that it didn't happen sooner
I agree with your concerns on SEO for CRA and Next for beginners. I also think you did a great job on explaining the origins of CRA for React, some of which I've learned new things from. But one thing I'm a little frustrated with is your lack of explaining WHY Vite is better for SPAs then CRA. You say CRA brought over so many great things but your laments against CRA are all based on the eject outputs and Webpack configurations; why should React professionals using CRA care? Personally, I moved our large CRA project to Vite because I don't want deprecated dependencies in my projects as a software standard. But in the end, from developer experience to shipping, Vite really didn't do anything that jaw-dropping amazing for us compared to CRA. Wow, our hot swapping happens in 250ms instead of 1 second, wow our configuration is a bit more simpler and less boiler plate, such a marvel of modern technology /s. My question is who cares if CRA did what it was designed to do and worked?
but now we dont need eject to re-configuration it , right ? there is CREATE REACT APP CONFIGURATION OVERRIDE (Craco) which can just override all you need
Why wait six years if you already know there are better alternatives? I think it's better to focus on learning newer tools like HTMX, Next.js, and other server-client rendering frameworks now.
@@dat-ta Server actions are POST requests and are designed to do mutations, not querying. They are also run sequentially and block further requests to the endpoint until it's complete.
I just started learning react, at frist i started using Viet but then purchased a course but it was in CRA. Movinf forward ill probably switch to Viet without issue until i get to the next part of the course. It annoyed me so much geyting errors when creating the using CRA.
Hello, I'm indeed new in React and I'm indeed suoer confused about the many errors popping up so thanks. If I don't want to use frameworks built on top, so just React itself, should I use Vite? What options would I have?
Switched a CRA app to vite last week at work this was created last year yikes.., it's just so much better specially HMR.. the env starts so fast and installing and configuring things is also easier..
All this reminds me that React is a hard "no" for me. I've been reactjs free since it came out. This is absolute insanity just to print some realtime graph.
well, actually the Create React App was undoubtedly the golden age of React. All the other frameworks took inspiration from React and CRA, just as Theo mentioned...
I have a specific use-case where I have to build an embeddeabe widget (so, no router, mount on a specific dom element...). This is not supported by NextJS as their systematically take control of the full page. So, as I dont want the headache of configuring Webpack (it remind me 2017), I ended up using CRA last week. Do you think I should go full manual (webpack, rollup, ...)?
I'm an outsider to JS and frontend generally, but all this toil sounds like what DHH derisively called "XML Sit-ups" back when he introduced Ruby on Rails
Though react in bootcamps. CRA was great for beginners as the steps required to do everything without it was extensive. I feel like I would have needed to explain the whole history of frontend (with demos) to make people get it how we go from pure JS and HTMLs lack of templating features though jQuery for better selectors and AJAX for no refresh state handling and routing by swapping components in memory. I wonder how much react being so pupular is due to CRA . I always likes Angular for the initial step generating the project with reasonable defaults. It's so good for prototyping.
Additionaly, I don't think it makes sense to say it should have been deprecated 6 years ago. In 2019 there was not Vite and Next js was a not as serious of a project back then.
Vite for the win
Vite has been a breeze to work with, since it just works. I originally started using it as a replacement for ts-node because it's a pain to get it to run correctly, and vite-node just handles all of the config.
I think I’ve discovered what makes me instantly watch every vid you drop.
I fkn love your rants, about whatever it is at the time of the video 😂
I'm unsubscribing because... this channel is just slightly too reactionary and gives me the wrong ideas about trends. I have miscalculated several trajectories based on you getting all the insider knowledge before me, and it being out of date before I can react. I think you're great, I'll probably come back. But I really dislike how you know industry trends but they're like reading that "red wine is great, red wine will kill you! red wine is great" a bit too often for my career informatic needs
Interesting stand.
I usually only see him as an enthusiast and a popular dev who shares exciting news.
He is probably not even in the race of the credibility which you felt he lacks.
Couldn't agree more. If you look at the history of this channel then its basically "I am excited about this shiny new thing" and a few years later its "I am moving away from my current thing because theres a new shiny thing". I wouldn't even be surprised if he is like "Why I moved away from Vite" in a couple of years. This pattern keeps repeating. I'll admit there are some informative videos but they probably don't bring in much revenue so we don't see those kind of videos being produced often.
Its not just a problem with this channel. Its a problem with the tech bubble in general. Everyone just does hot takes and shills the new things because thats what makes them the money. Its basically tech brainrot, you don't get anything of value, just disappointment.
@@wlockuz4467The bigger problem is that you take other peoples opinions as advice instead of information.
@@tinusg0 iq take
@@avinashthakur80came here to say exactly this.
The fact that op “miscalculated several trajectories” is crazyyyy based off watching an enthusiast share his current opinion on something.
I completely agree with Theo in this, in our prod web app, created in 2021 we are using CRA as a base for the app. Last month I spent around 15 working days for enabling HMR in our app because of some edge cases that we have in dev env. Messing with webpack was a pain in the a** and took me most of the time. Bad experience and I think it was avoidable if we would go with something like Vite or something else then.
We were in the same situation in 2022. Fortunately CRA -> Vite migration was pretty easy for us. Maybe you should try that as well.
I have reservations about beginners starting with next js... For someone who is from the computer science background, who has prior experience with application development in general, next js could be a valid starting point. However, for someone who is an absolute beginner, who doesn't know the difference between browser javascript and server javascript(that was me btw), the next js build would be the easiest way to chase the new dev away from React.
TLDR : If you're starting new, start with vite react, not Next js
Why am I up at 4:35am and theo drops this. I am literally finishing up an emergency and surfing utube until I go to sleep.
Wut happened?
Have a good sleep bro 💀
CRA just flat out refused to keep their package json imports up-to-date, which means red severity errors would always pop up. They would say things like, oh, the vulnerability is only dev side so I just ejected once I hit that attitude.
I'm old enough to remember having to pipe together tsc and babel (sometimes with gulp) and also the old craco package. Madness. I don't miss having Webpack on my CV
Create-react-app like any dev tool or framework had it's time and I'd like to appreciate the developers that created it. All these technologies that we have now are standing on the shoulders of the tools like CRA. I'm happy to use all these tools now like next.js or vite and I'm happy that they exist however let's also appreciate the team which created, CRA, Jquery.
Nooo i need my daily dose of webpack :D
9:43 is a huge faux-pas and it's not gonna fly. Stop doing that.
doing a shameless plug for your own stuff is bad now?
Cutting edge, thanks again! I learn so much with these.
So the best way to do web dev is to use a giant tech company's wrapper for a giant tech company's "library".
I think this might be worse then "I'm a spring developer". At least that's one step away from the underlying technology.
I feel super bad for the pile of awful decisions we are leaving new devs with.
At my current position, I have some of the most subject matter expertise when it comes to front end web projects and react. I noticed that a lot of of my coworkers and managers went to go use creative react app when they wanted to boot strap or react project. I had to tell them, “it’s been deprecated for a while and there’s newer ways to do it like Vite” it was annoying that I had to tell them that it was deprecated in the first place. And of course, it was not officially deprecated… even though it has those notices at the top of the website
I've legit been working with AG-Grid in my full-time job for more than 2 years now. It's been a love-hate relationship, but mostly love. So seeing Theo get sponsored by them was an odd moment for me lol.
I can't believe theo got older
I started webdev a few months ago, I was exclusively a backend dev then, but oh god, did I have this exact problem. Documentation and tutorials online aren't updated most of the time, so we need to put deprecation notices and it makes 0 sense that it didn't happen sooner
I agree with your concerns on SEO for CRA and Next for beginners. I also think you did a great job on explaining the origins of CRA for React, some of which I've learned new things from. But one thing I'm a little frustrated with is your lack of explaining WHY Vite is better for SPAs then CRA. You say CRA brought over so many great things but your laments against CRA are all based on the eject outputs and Webpack configurations; why should React professionals using CRA care? Personally, I moved our large CRA project to Vite because I don't want deprecated dependencies in my projects as a software standard. But in the end, from developer experience to shipping, Vite really didn't do anything that jaw-dropping amazing for us compared to CRA. Wow, our hot swapping happens in 250ms instead of 1 second, wow our configuration is a bit more simpler and less boiler plate, such a marvel of modern technology /s. My question is who cares if CRA did what it was designed to do and worked?
but now we dont need eject to re-configuration it , right ? there is CREATE REACT APP CONFIGURATION OVERRIDE (Craco) which can just override all you need
Why wait six years if you already know there are better alternatives?
I think it's better to focus on learning newer tools like HTMX, Next.js, and other server-client rendering frameworks now.
*Next commit:* Deprecate Create T3 App 🤣
_"it's a damn joke, guys"_
but that's a good idea cuz it's bloated
totally agree, since Next.js server actions make client-server communications type safe we don't need another abstraction layer like tRPC anymore
@@dat-ta TypeScript isn't type safe. tRPC is.
@@dat-ta Server actions are POST requests and are designed to do mutations, not querying. They are also run sequentially and block further requests to the endpoint until it's complete.
I love how the React docs aren't even up to date.
Are you talking about the legacy docs at 18:19?
They are? They don't reccomend CRA anymore.
😂
you're looking at the old docs
Any tool that creates anything related to React takes you down a horrible path, the more friction the user suffers the better.
21:47 we still didn't learn from "Yes, do what I say" (silly and joke comment)
So I should just drop out of my class now.. wonderful
you can use react without jsx right? cra was created to setup jsx with react or am I wrong?
Wait, what? I thought CRA is already dead.
I just started learning react, at frist i started using Viet but then purchased a course but it was in CRA. Movinf forward ill probably switch to Viet without issue until i get to the next part of the course. It annoyed me so much geyting errors when creating the using CRA.
Hello, I'm indeed new in React and I'm indeed suoer confused about the many errors popping up so thanks. If I don't want to use frameworks built on top, so just React itself, should I use Vite? What options would I have?
A milestone is passed 👏
Switched a CRA app to vite last week at work this was created last year yikes.., it's just so much better specially HMR.. the env starts so fast and installing and configuring things is also easier..
I don't use React or any framework hahahahahahahahaha
thoughts on vite?
If there are 130k people creating react project if they will see depracated info there can be SPRING income to next and vite new users.
Finally 🔥
All this reminds me that React is a hard "no" for me. I've been reactjs free since it came out. This is absolute insanity just to print some realtime graph.
what do you prefer then
well, actually the Create React App was undoubtedly the golden age of React. All the other frameworks took inspiration from React and CRA, just as Theo mentioned...
But maybe make create-react-app great again? :D
I like this 😂
Never been so early to an upload 💀
I have a specific use-case where I have to build an embeddeabe widget (so, no router, mount on a specific dom element...). This is not supported by NextJS as their systematically take control of the full page.
So, as I dont want the headache of configuring Webpack (it remind me 2017), I ended up using CRA last week. Do you think I should go full manual (webpack, rollup, ...)?
How about vite?
If that's not a good choice then yeah full manual is your best choice
just use vite, pretty easy to setup and doesnt require much configuration.
I'm an outsider to JS and frontend generally, but all this toil sounds like what DHH derisively called "XML Sit-ups" back when he introduced Ruby on Rails
Vite should be recommended instead of
🎉🎉
Ok
First Comment 🎉
Though react in bootcamps. CRA was great for beginners as the steps required to do everything without it was extensive. I feel like I would have needed to explain the whole history of frontend (with demos) to make people get it how we go from pure JS and HTMLs lack of templating features though jQuery for better selectors and AJAX for no refresh state handling and routing by swapping components in memory.
I wonder how much react being so pupular is due to CRA . I always likes Angular for the initial step generating the project with reasonable defaults. It's so good for prototyping.
My bootcamp did that. We went through all the "eras" of js. JQuery, Templates etc. We built small projects in each. I felt it was very valuable.
Additionaly, I don't think it makes sense to say it should have been deprecated 6 years ago. In 2019 there was not Vite and Next js was a not as serious of a project back then.