Kent C. Dodds
epicweb.dev · Personal blog · on HN since 2022
Kent C. Dodds, a web developer and teacher, writes about React, Remix, testing, and building typed web apps.
What HN saysHN links his post 'Why I Won't Use Next.js' in framework debates, where one commenter notes he discloses his Remix bias up front.
27HN people shared it
6linked it in comments
26stories submitted
105story points
2 years agolast shared
2022people per year2026
Most-shared posts
- 1Why I Won’t Use Next.js6 people · 41 points · first shared 2023 · 8 comments on HN
- 2The Web’s Next Transition6 people · 12 points · first shared 2022 · discussion on HN
- 3The Golden Rule of Assertions3 people · 4 points · first shared 2024 · discussion on HN
- 4Fully Typed Web Apps3 people · 2 points · first shared 2022 · discussion on HN
- 5Skip SDKs in Simple Integrations2 people · 18 points · first shared 2024 · 10 comments on HN
- 6Implicit Assertions2 people · 4 points · first shared 2024 · discussion on HN
- 7I Won't Use Next.js1 people · 7 points · first shared 2023 · 4 comments on HN
- 8Why you should probably be using SQLite1 people · 6 points · first shared 2023 · discussion on HN
- 9Kent C. Dodds' Epic Web Conf 2024 – Watch Recordings1 people · 3 points · first shared 2024 · discussion on HN
- 10The Epic Stack1 people · 2 points · first shared 2023 · discussion on HN
- 11Epic Programming Principles1 people · 2 points · first shared 2025 · discussion on HN
- 12Using Isolation to Solve Complex Problems1 people · 1 points · first shared 2023 · discussion on HN
- 13Embracing Slow Networks: Improving User Experience1 people · 1 points · first shared 2024 · discussion on HN
- 14Let me be (const was a mistake) – Epic Web Dev1 people · 1 points · first shared 2024 · discussion on HN
- 15The Next Generation of Developer-First Products1 people · 1 points · first shared 2024 · discussion on HN
What HN people wrote when they linked it
quangv · 2023-11-19
Two I found react/remix
- https://reactsecurity.io/
- https://EpicWeb.dev
hu3 · 2023-10-28
It's good practice to introduce strong biases at the top of articles so readers can take that into consideration right away.
The article they are responding to did precisely that on their second paragraph:
> I’ve been using Remix since it was first released in 2020. I loved it so much I joined the team for 10 months to help get the community going and now I recommend and teach Remix on EpicWeb.dev. [1]
[1] https://www.epicweb.dev/why-i-wont-use-nextjs
ecmascript · 2024-02-21
Haven't tried sveltekit but I think it's nicer than next because it "uses the platform" more like the standards are supposed to. You will never get a button that is not clickable because some javascript is not loaded.
It's also more straightforward to get started and has sane defaults for the different "stacks" that exist. It's also way easier to self-host. So there are many positives for remix.
I would say if you know that you are going to use Vercel, use Next.js but otherwise I would always argue for Remix. I was a bit hesitant towards React before but Remix had me totally converted due to how easy it feels developing a full stack react app. Nothing even comes close in the javascript land imo. I have done years of work with SPA with web components/Vue/Angular and an api but using Remix I feel like I am several times more productive.
You don't need a state machine with remix as long as you use a backend (I haven't tried the new Remix SPA mode yet), even if you have a backend in another language it is a great way to do backend for frontend meaning that you can gather the data you need and provide it to the client in a nice way. No more spinners everywhere, let your fast server do the api calls and serve the rendered page to the client. You won't have the issues that usually comes with a SPA if you use Remix with a backend. You can stream stuff if you know you have requests that will take a bit longer to complete: https://remix.run/docs/en/main/guides/streaming
You can…
steventruong · 2025-01-01
Relevant article: https://www.epicweb.dev/why-i-wont-use-nextjs
Discussion at the time: https://news.ycombinator.com/item?id=38018217
Spixel_ · 2023-10-26
That would be Remix: https://remix.run
See: https://www.epicweb.dev/why-i-wont-use-nextjs
satvikpendem · 2023-01-12
> Types, after all, are a very weak ontology, i.e., you still cannot know for sure that just because your code compiles it interprets the values it's getting from other party's code correctly.
This again seems to be throwing the baby out with the bath water. Just because in some cases types can't be verified does not mean we should fully be without types at all. There are a myriad of ways to mitigate even this, Parse, Don't Validate comes to mind [0]. Type Driven Development is another way [1], as well as using runtime type checkers like Zod. This article by Kent C Dodds is a really good example of the latter, it covers everything you're talking about regarding unknown types [2].
> I would even argue that it may create a false sense of safety -- just think of the Mars satellite that crashed because some developer thought a number was in imperial units when, of course, it was in SI.
Actually, that sounds to me like just the opposite case. The dev thought it was in imperial units because they might not have known the type of said number. If the number was instead typed with `ImperialUnit unit = ...`, that issue might not have occurred. Now, if the unit value was inputted incorrectly by the programmer, that's a different issue, no amount of typing will fix a business logic typo. As well, if the satellite was fully untyped, issues like these would have occurred far more often, so taking a singular example as a damnation of an entire paradigm doesn't really work.
[0]…