1. There’s room for improvement here. There’s some useful stuff in d3-array (
https://github.com/d3/d3-array), particularly the nest and histogram operators. There’s also science.js (
https://github.com/jasondavies/science.js). And UW’s datalib (
https://vega.github.io/datalib/), which is partly a wrapper of d3-request, d3-dsv, d3-array and d3-random. New D3 modules or contributions would be welcome.
2. Not at all; I still think the data-join is a powerful concept for transforming the DOM based on data, and the new work on non-DOM D3 modules does not reflect a shift in my opinion. I’m simply decoupling D3 so that people can use the parts independently. I’m still developing the new d3-selection and d3-transition modules, and those will be released soon, but I’m saving them for last because I want to let the design “bake” to make sure I’m happy with it before release.
3. I am not currently paid (other than a buck or two I make off stickers). My wife is currently my de facto sponsor. ;) I’d like to find a way to make this financially sustainable, but I don’t know yet exactly what that will entail, and I’d like to get 4.0 released first.