Firstly, ‘tweetstorm’ is a great word and using it made me smile.
Thanks for your feedback Dan, thorough as always!
I will try to address your points from the tweetstorm:
shouldComponentUpdate() on a list component that checks every child isn’t very useful anyway.
I have found this to be useful in the case where you have a number of big lists. Being able to skip lists completely is a huge win. If your application only had one list then yes this would not change anything as something would always be changing in the list — assuming that the parent of the list did a correct shouldComponentUpdate check.
If you really did not think the list reference check was adding much value in your specific application you could skip the check in the list and just do it on the parent and the children of the list.
The more scalable solution is to _normalize_ data and pass ID as prop to child components. Then connect() parent to IDs.
This method looks interesting. I will investigate it further.