I was grinning ear to ear watching this; you guys rock! I was soooooo nervous sharing a code-base that I have iterated on here and there (basically as a side project for learning new things) for several years now, especially without any sort of hand-off (minus that info page). But you dug right in and made so many wonderful improvements incredibly quickly! You both also asked questions I was always asking myself (like what navigation does the "Close" button perform?), so listening to you reason through that and come to the same conclusions I did was cathartic!
@rthaut I’m so glad you shared it - I know it can be hard to share code so publicly but like I said in the video, it really was an excellent codebase! Being vulnerable like you did is 100% the best way to keep improving, and I’m grateful for it because I also learned so much going through it. Fantastic job on the app, it looks great, and cheers again for the share. Keep on getting after it man! 👊
I love the way how people start understanding how react rly should work. Thanks to next js app router and how it force us to do things right even in pages. You are soo good at this.
Curious, would you want to see this same sort of video on buildui, or were you thinking just the actual content but as a more formal / polished series over there?
@@samselikoff I think this format would work great on buildui itself. Maybe something like 'refactoring sessions' or similar. Picking up submissions from the community and giving it the sam & ryan magic ⭐ It's a great mix of your current buildui content which is very informative/lesson format, where as this takes it to the next level by going through real world code, more of a pairing session.
Great video. As for the router back/replace/push problem, I think what should matter here is the UI. When you "close", it's like you are removing from the stack of interfaces. What is behind the modal is the homepage so that's what matters. The user doesn't really think of "close" as "navigating" away, they do as a way removing the modal so that can see what's underneath. Also, typically you want to name onClose, handleClose. Because you're basically it's the event handler. onClose=onClose is a bit redundant. onClose=handleClose reads better.
Interesting the new video format, love it! It could be interesting to replicate the island that Apple used on the iPhone 15 presentation landing page. Regards!
If we add key prop in SlideOver component inside DigitalDirectory, animation doesn't work. Is there any specific reason for this? How could it be solved? (Just experimenting). Thanks :)
I couldn’t catch the persons name yon mentioned at the end of video about refactoring ui. I get Steve Sugar, but couldnt find X account of him. Who is that person?
basically the trick with react is to "dont do stuff". try and keep things as simple as possible. honestly its react's fault for giving so many hooks which can lead to subtle errors like this useEffect one. it's really not thought through well. i hope in a future version they remove hooks and bring in something else.
Definitely “do less” is often the correct way to fix issues like this in React. I love hooks and think useEffect is great, but it’s true it can be so easy to reach for and can sort of “fix” issues where it’s not appropriate. I don’t think they should remove it but I do think the right way to think about effects is, interacting with an external system (browser APIs, the network, etc.). If you ever have an effect that is only reading and writing React state, you probably don’t need it.
this is such a good structure for video content, i hope you do more of these
I was grinning ear to ear watching this; you guys rock! I was soooooo nervous sharing a code-base that I have iterated on here and there (basically as a side project for learning new things) for several years now, especially without any sort of hand-off (minus that info page). But you dug right in and made so many wonderful improvements incredibly quickly! You both also asked questions I was always asking myself (like what navigation does the "Close" button perform?), so listening to you reason through that and come to the same conclusions I did was cathartic!
@rthaut I’m so glad you shared it - I know it can be hard to share code so publicly but like I said in the video, it really was an excellent codebase! Being vulnerable like you did is 100% the best way to keep improving, and I’m grateful for it because I also learned so much going through it. Fantastic job on the app, it looks great, and cheers again for the share. Keep on getting after it man! 👊
I love the way how people start understanding how react rly should work. Thanks to next js app router and how it force us to do things right even in pages. You are soo good at this.
Awesome ❤🔥 I can just say more more like this 🙏🙏
Really love this format, perfectly fits content for buildui too. Love it
Curious, would you want to see this same sort of video on buildui, or were you thinking just the actual content but as a more formal / polished series over there?
@@samselikoff I think this format would work great on buildui itself. Maybe something like 'refactoring sessions' or similar. Picking up submissions from the community and giving it the sam & ryan magic ⭐
It's a great mix of your current buildui content which is very informative/lesson format, where as this takes it to the next level by going through real world code, more of a pairing session.
@@ashleyredman awesome, love this idea. Thanks for the idea!
Nice one guys. A really entertaining watch
Super valuable content, thank you.
Incredible video. Thank you. I learned so much.
Great video. As for the router back/replace/push problem, I think what should matter here is the UI. When you "close", it's like you are removing from the stack of interfaces. What is behind the modal is the homepage so that's what matters. The user doesn't really think of "close" as "navigating" away, they do as a way removing the modal so that can see what's underneath.
Also, typically you want to name onClose, handleClose. Because you're basically it's the event handler. onClose=onClose is a bit redundant. onClose=handleClose reads better.
That navigation discourse was quite interesting.
You are amazing, Sam!
Interesting the new video format, love it! It could be interesting to replicate the island that Apple used on the iPhone 15 presentation landing page. Regards!
do this more ❗❗❗
If we add key prop in SlideOver component inside DigitalDirectory, animation doesn't work. Is there any specific reason for this? How could it be solved? (Just experimenting).
Thanks :)
I couldn’t catch the persons name yon mentioned at the end of video about refactoring ui. I get Steve Sugar, but couldnt find X account of him. Who is that person?
Is Steve Schoger (@steveschoger)
Yep that’s him! Here’s a link to all of his design tweets: x.com/i/events/994601867987619840?s=21&t=k4XEISmV-XBZYtw2JeE4ow
you are genius
basically the trick with react is to "dont do stuff". try and keep things as simple as possible. honestly its react's fault for giving so many hooks which can lead to subtle errors like this useEffect one. it's really not thought through well. i hope in a future version they remove hooks and bring in something else.
Definitely “do less” is often the correct way to fix issues like this in React. I love hooks and think useEffect is great, but it’s true it can be so easy to reach for and can sort of “fix” issues where it’s not appropriate. I don’t think they should remove it but I do think the right way to think about effects is, interacting with an external system (browser APIs, the network, etc.). If you ever have an effect that is only reading and writing React state, you probably don’t need it.
@@samselikoff thats a better and more balanced way of putting it :P
Nice video Sam, really like the content, learnt a ton from this video, hope you do more of these videos.👍