3 ms·
Aye, a lot has changed! I know change in itself is a pain; despite the quantity of changes I did try to avoid unnecessary change, and batch the changes into a r
by mbostock 10y ago
Aye, a lot has changed! I know change in itself is a pain; despite the quantity of changes I did try to avoid unnecessary change, and batch the changes into a rare major release. I believe such change is worthwhile, and that it’s better in the long run to keep improving the API than to be tied down to past mistakes.
The renames (like d3.voronoi instead of d3.geom.voronoi) are superficial changes, so although it might seem disruptive, it should be pretty easy to update your code and habits. At least, I haven’t found it difficult… The more design-y changes, like the new d3.stack and d3.treemap, require thought to migrate existing code. But the new designs are much better, so I hope you find the effort worthwhile.
- zellyn 10y agoI know Perl6 and Python3 have shown the dangers of changing things in disruptive ways. But I still appreciate your willingness to change things carefully to make them better. The length of time your software will be used in the future almost certainly outweighs the length of time it was used in the past :-)
- mbostock 10y agoI thought about the Python 2/3 debacle a lot this past year, and yes, I hope this isn’t a repeat. The Python migration was especially hard because of dependencies between libraries (you could only migrate your library or application to Python 3 after your dependencies migrated), and because Python is used for many large, long-term projects. Certainly D3, too, has its own plugin ecosystem and long-term projects, but it’s also commonly used as a standalone library in short-term work, such as in news graphics—where migration should be much easier. So hopefully that pain is lessened.
- tomgp 10y agoExcellent work! I've been using bits and pieces of this since the start of the year and can attest to the fact that migration from 3 is relatively painless.
- a_humean 10y agoI think it is certainly worthwhile, and I've already used one of your new features in the d3-hierarchy package (d3.stratify) in a d3 v3 project. I think the general improvements are enough to warrant the breaking changes. I think you will see a brief period of a python 2/3 syndrome, but I think it will pass quickly. Thank you for working so hard on this Mike!