Definitely not the first! There was a looooong thread about this in the forum, stretching from May 2019 to January 2021 before ultimately being locked, hah: I want to learn D3. I don`t want to learn Observable. Is that ok?
Oh actually I see you in there! So I guess you’re all caught up. The official examples are on Observable these days, and we can’t really maintain two versions of them. Does it at least help that the API docs are totally separate from Observable?
Are there particular pieces that you’ve found especially tricky? Like are you stuck on something right now? I’d be happy to hop on a call and try to help.
We talk sometimes about what a modernized d3js.org homepage might look like. For me two big things have changed: (1) modularization, and (2) the proliferation of different environments — vanilla, React, Svelte, Observable, etc. — each with its own demands. We could at least have one or two basic examples per environment.
To be frank, if you lack the patience to work through the available examples (both official and unofficial), you may want to consider taking a paid course instead that condenses the material and guides you through it.
Since you linked that discussion, you may also want to read through it in its entirety. You will discover that the final comment by the author was:
Good points - I concede my argument is flawed.
I agree that an open source project does not owe anyone detailed tutorials in their preferred format.
I’ll consider contributing to a vanilla JS D3 tutorial in future.
Absolutely! Why didn’t I check them before? Doh. Consider this matter settled.
Any ones you recommend? The well written API docs have half the answers. I suppose I still need to learn Observable to implement sketches into non-Observable pages.
It was the final comment because the thread was closed.
Here are a few good paid courses (among lots of other helpful learning resources)
This post was flagged by the community and is temporarily hidden.
So… I set up my wepage and starting copying code that didn’t work right away. I had no clue what this
width thing was that didn’t seem to be defined anywhere but I figured it had something to do with the width of something so I defined it to be 1000 or so and, well, that seemed to help. I fiddled with some more stuff and after an hour or two I had a working webpage that did pretty much what I wanted.
At that particular moment, I was pretty happy to have what I needed but was not particularly happy with this new thing called Observable. Nonetheless, it seemed likely that there was something of importance lurking in the background. I tucked it into a bookmark and figured I’d check it out at the end of the semester.
I did just that.
If you genuinely want to learn how to program using D3 in a vanilla HTML/JS environment, then you might consider visiting with Observable’s D3 Gallery and start converting those to vanilla. I guarantee you will learn a lot! You’ll also make an important contribution to open source.
As a first contribution, I’ve converted the collapsible tree to vanilla; you can find the result here: