Top all-time · #2579
Dave Ceddia
Personal blog · daveceddia.com · on HN as dceddiawebprogramming
Dave Ceddia's personal blog at daveceddia.com covers web and programming. Since 2016, 32 different Hacker News readers have linked it 76 times, most often “Redux vs. The React Context API”. The last post was in 2022, but the archive is still widely read.
Articles to help you learn and master frontend development with React.
Most-linked posts?
- Redux vs. The React Context API4 people · 7 mentions · first linked 2018-07-24
- /pure-react/3 people · 3 mentions · first linked 2018-02-27
- Linked Lists for JavaScript Developers2 people · 2 mentions · first linked 2020-05-27
- /2 people · 2 mentions · first linked 2019-08-26
- Projects to Help You Learn React (2017)2 people · 2 mentions · first linked 2017-09-14
- A Visual Guide to State in React2 people · 2 mentions · first linked 2016-11-01
- What Redux Does, and When to Use It2 people · 2 mentions · first linked 2017-10-25
- Introduction to Svelte2 people · 2 mentions · first linked 2019-07-24
- State of the React Ecosystem in 20212 people · 2 mentions · first linked 2021-02-13
- Article: Your Timeline for Learning React2 people · 2 mentions · first linked 2016-05-18
What Hacker News says?
https://daveceddia.com/ (click on All Posts). I write about web development, primarily React, but I’m trying to branch out into other front end and back end stuff. I’ve got some full tutorial-size articles on things like React, Redux, Svelte, and CSS, and lots of smaller articles on topics from deploying with git to setting up Tailwind in a React app. Here are some direct links to those, and feel free to browse the…
Comment linking /tailwind-create-react-app/
on “Ask HN: What is your blog and why should I read it?”Submitted Interview questions to ask your interviewer as a story · 333 points
HN discussionYeah, I really like Svelte for this. I did a whole blog post this way, with little embedded animations to show various operations on linked lists. Each of the animations is a Svelte component, but the surrounding page is just a static HTML page created from Markdown (using Jekyll as the generator). It's nice that Svelte components can be independently mounted like that. Right click > View Page Source, and scroll to…
Comment linking /linked-lists-javascript/
on “Rich Harris joins Vercel to work on Svelte full time”Submitted Making Pulled Pork with React Native, Expo, and Express as a story · 210 points
HN discussionI don’t know if it’s alright to mention my own work, but the book I wrote to teach React is project-based. It’s got a bunch of very small projects and exercises rather than a single massive one, and the later projects review concepts from the earlier ones. It’s called Pure React and it’s digital-only right now (maybe one day I’ll get it printed!) https://daveceddia.com/pure-react/
Comment linking /pure-react/
on “Ask HN: What are some books where the reader learns by building projects?”Submitted Redux vs. The React Context API as a story · 207 points
HN discussionSeveral relevant pointers: - https://github.com/facebook/react/issues/7671 - https://twitter.com/dan_abramov/status/790590733468241920 - https://www.reddit.com/r/reactjs/comments/5fg7iq/why_should_... - https://daveceddia.com/where-fetch-data-componentwillmount-v... Also see Lin Clark's "React Fiber" talk, linked upthread. Basically, pieces of work can start and be interrupted, and then be restarted, which will mean…
Comment linking /where-fetch-data-componentwillmount-vs-componentdidmount/
on “Facebook Announces React Fiber, a Rewrite of Its React Framework”Submitted Introduction to Svelte as a story · 187 points
HN discussionIn contrast, https://www.simplethread.com/cant-replace-redux-with-hooks/ https://daveceddia.com/context-api-vs-redux/ https://medium.com/javascript-scene/do-react-hooks-replace-r... TL;DR Context can replace some but not all of Redux. Redux can figure out which components to rerender based on what's being computed. Context doesn't, so it's basically the same as refreshing your entire component tree every time someth…
Comment linking /context-api-vs-redux/
on “React Native for Windows and Mac”Submitted Projects to Help You Learn React (2017) as a story · 161 points
HN discussionThis was the first thing I noticed as well. 40% of the tutorial is setup. It doesn't HAVE to be that painful just to get a working environment going, but it gets painful pretty quickly if you pile on Webpack and PostCSS and a testing setup and everything. For true "Hello World", if all you just want is to play around with React without all the setup, try out quik[0] or react-heatpack[1]. I also wrote up a tutorial[2…
Comment linking /test-drive-react/
on “React Tutorial: Cloning Yelp”Submitted Learn React with Copywork as a story · 157 points
HN discussionSure. Also, just as an FYI, because a large number of people aren't aware this is possible: you can pass an object full of action creators to `connect` instead of a `mapDispatch` function. This simplifies the use of `connect`, like: export default connect(mapState, {addTodo, toggleTodo})(TodoList); We're about to add a whole big section on dispatching and action creators to our new React-Redux docs site at https://r…
Comment linking /redux-mapdispatchtoprops-object-form/
on “Introducing Hooks”Submitted Using State Machines with React to Make a Confirmation Dialog (2020) as a story · 90 points
HN discussionThis is the resource I used (as someone who's been doing web development for ~20 years) to get a a basic understanding of React. It, plus some side projects, was enough to get me up to speed: https://daveceddia.com/pure-react/ I'm sure there are others that are free; but, this is what worked for me.
Comment linking /pure-react/
on “Next.js 10”Submitted How Redux Works: A Counter-Example as a story · 74 points
HN discussionFirst, congrats on launching the book. That's a huge achievement and you should be proud! It's also great that you've kept on it for 2 years, and published a lot of posts. So the question is why hasn't it "worked" yet. There are TONS of new developers entering the field. The audience definitely exists, and they do hang out online. I took Amy & Alex's 30x500 class a few years ago and it was a big factor in getting my…
Comment linking /
on “How I generated incomes as a web developer without working as a freelancer”Submitted Learning React? Start small as a story · 47 points
HN discussionThere _are_ many patterns that exist already, and have been widely discussed in the React world (such as "Higher Order Components" for code reuse). You may be interested in several of the sections in my React/Redux links list at https://github.com/markerikson/react-redux-links . In particular, check out the "React Architecture", "React Component Patterns", "React State Management", "React and AJAX", "Redux Architect…
Comment linking /visual-guide-to-state-in-react/
on “A response to “An experienced JavaScript dev’s account of learning React””Submitted The Lost Art of Typing Shit by Hand as a story · 47 points
HN discussionNote that context and useReducer do _not_ completely replace Redux. See the following resources for more details: - Mark Erikson - Reactathon 2019: The State of Redux ( https://blog.isquaredsoftware.com/2019/03/presentation-state... ) - Mark Erikson: Redux - Not Dead Yet! ( https://blog.isquaredsoftware.com/2018/03/redux-not-dead-yet... ) - Dave Ceddia: React Context API vs Redux ( https://daveceddia.com/context-api…
Comment linking /context-api-vs-redux/
on “Frustrations with React Hooks”Submitted A Visual Guide to State in React as a story · 21 points
HN discussionImmutability is a common part of functional programming approaches. In Javascript, it's especially common in the React+Redux community. Redux expects you will update data immutably, and React works best when you do immutable updates as well. Here's some good overviews of why and how to do immutable updates in JS: https://redux.js.org/faq/immutable-data https://redux.js.org/recipes/structuring-reducers/immutable-...…
Comment linking /react-redux-immutability-guide/
on “JavaScript Array.push is 945x faster than Array.concat”Submitted What Redux Does, and When to Use It as a story · 11 points
HN discussionContext is a useful tool, but its only purpose is to make value accessible to deeply nested components. It's not even a state management tool - you have to manage whatever state you want to put into that context, by yourself. The useState and useReducer hooks start to resemble Redux a bit more when used together with context, but they definitely do not replace Redux. For more details, see these posts : - https://dav…
Comment linking /context-api-vs-redux/
on “Reasons to Learn Redux as a JavaScript Developer”Submitted Worthwhile Testing: What to test in a React app (and why) as a story · 9 points
HN discussionI've been writing about this a lot recently -- particularly with React, where do you start? I think your "start from scratch" approach is actually the right one, and the only caution I'd add is that you'll probably be tempted to "introduce dependencies" TOO EARLY. Everything out there will guide you toward adding everything at once, or ramping up too quickly. Many tutorials are "full stack," and so you're tempted to…
Comment linking /timeline-for-learning-react/
on “React-Boilerplate v3: The “JS Fatigue Antivenin” Edition”Submitted Implementing a Mockup: CSS Layout Step by Step as a story · 5 points
HN discussionShallow object comparison is not a special property of Immutable.js. It's just a matter of iterating over the keys and values of two objects and comparing them. In fact, that's how React-Redux (and many other React ecosystem libs) work. `connect` decides whether to re-render your component by doing shallow comparisons of the previous and current `mapState` return object to see if the extracted values have changed. A…
Comment linking /react-redux-immutability-guide/
on “Immer is a library of persistent and immutable data structures written in C++”Submitted Linked Lists for JavaScript Developers as a story · 4 points
HN discussion