Live data from Hacker News

D3 7.0

github.com

41–50 of 65 posts

Re: D3 7.0

#41
post #33

Earlier quoted context omitted.

We're talking about a javascript repl here, don't blow it out of proportion. The things transfer trivially between the envionments. If having a javascript repl is such a show stopper for learning D3 for you, maybe learn javascript first.

But if the example transfers trivially, why is there no convenient "download example project" button that offers an archive containing all the necessary files I need to run the example?

There is such a button.

Like I said, everyone I've seen complain so far, always turn out to not even want to learn basic stuff.

Re: D3 7.0

#42
post #40
post #13

Earlier quoted context omitted.

Indeed - I don't like the pairing with Observable. I don't like Observable in general because the full experience can't be self-hosted. However, both projects belong to Mike, and D3.js is free - so I can't complain.

Didn't they have an export function that allowed self-hosting something you developped on Observable? (Or is it the development part that you want to self-host for "full experience"?)

You can self-host the runtime, and use code from notebook cells in whatever context you like. The closed part is the “notebook chrome” (editor, history view, social features, etc.).

Re: D3 7.0

#43
post #24
post #23

Earlier quoted context omitted.

> taken neither the time to understand Observable nor D3 and are looking for a way to just copy paste something into their codebase, without understanding it, and without any willingness to really learn the tools they are using. That's how many of us learn, by dipping our toes into a new SDK by copying and pasting into our bare HTML/JS page and tweaking things to see what happens. Eventually we will get around to rea…

You make my point. What better environment to learn and twiddle, than a reactive, constantly reevaluating interactive notebook?

I don't know why others down voted you so I upvoted this comment.

All I am saying is that the d3 team needs a "getting started" page aimed at allowing a dev to include one script tag (or a single npm install) and then copy and paste examples from the example gallery to get it quickly working on their own test website.

I recently tried getting back into d3 and I gave up (opted for another low threshold SVG toolkit). It's fine if d3 is aimed at other people who want to use observable.... It's just not targeted at me anymore.

Re: D3 7.0

#44
post #41

Earlier quoted context omitted.

But if the example transfers trivially, why is there no convenient "download example project" button that offers an archive containing all the necessary files I need to run the example?

There is such a button. Like I said, everyone I've seen complain so far, always turn out to not even want to learn basic stuff.

Ahh I must have missed this button. I will try to go look for it and report back when I have a d3 example working in my bare HTML page.

Re: D3 7.0

#45
post #40
post #13

Earlier quoted context omitted.

Indeed - I don't like the pairing with Observable. I don't like Observable in general because the full experience can't be self-hosted. However, both projects belong to Mike, and D3.js is free - so I can't complain.

Didn't they have an export function that allowed self-hosting something you developped on Observable? (Or is it the development part that you want to self-host for "full experience"?)

[deleted]

Re: D3 7.0

#46
post #16

Earlier quoted context omitted.

The difference is that examples in Codepen are easily reproducable in another environment. d3, on the other hand, has converted most of their examples to Observable, which requires extensive research to convert back to JS (in the best case) and in the worst case requires reverse engineering the runtime. I'm not the only one with this opinion, there are plenty of others who have struggled through similar issues and di…

I work with both D3 and Observable full time. The claim that one has to "reverse engineer the runtime" is simply absurd. The people that complain about D3 on observable always turn out to have taken neither the time to understand Observable nor D3 and are looking for a way to just copy paste something into their codebase, without understanding it, and without any willingness to really learn the tools they are using.…

This.

It’s literally just a matter of reordering variables, adding or removing a pair of parentheses, and removing the “return svg.node” call.

People love to complain about free open-source documentation. Especially for d3 it seems.

Shout out to Mike Bostock for all his awesome work.

Re: D3 7.0

#47
post #22

So, is d3 tree-shakeable yet? If I import { scaleLinear } from 'd3' in a webpack-built project, will I get only the scaleLinear code? As far as I remember, in v6 this will import a lot of (or perhaps the rest of) d3 as well.

You can also just import it from d3-scale.

Re: D3 7.0

#48
post #43
post #24

Earlier quoted context omitted.

You make my point. What better environment to learn and twiddle, than a reactive, constantly reevaluating interactive notebook?

I don't know why others down voted you so I upvoted this comment. All I am saying is that the d3 team needs a "getting started" page aimed at allowing a dev to include one script tag (or a single npm install) and then copy and paste examples from the example gallery to get it quickly working on their own test website. I recently tried getting back into d3 and I gave up (opted for another low threshold SVG toolkit). I…

I think that's actually a result of how D3 has changed over time. It has become much more modular and flexible, but also less "plug & play". In a sense it's a pro tool for custom data visulaisations, where everything is possible, but nothings easy.

I'd recommend Plot instead: https://observablehq.com/@observablehq/plot

It also works as a pure JS library, just like D3, but is based on a grammar of graphics idea, like ggplot. It's not infinitely flexible, but flexible enough, and build to get quickly to a chart, with as few lines as possible.

Re: D3 7.0

#49
post #46
post #16

Earlier quoted context omitted.

I work with both D3 and Observable full time. The claim that one has to "reverse engineer the runtime" is simply absurd. The people that complain about D3 on observable always turn out to have taken neither the time to understand Observable nor D3 and are looking for a way to just copy paste something into their codebase, without understanding it, and without any willingness to really learn the tools they are using.…

This. It’s literally just a matter of reordering variables, adding or removing a pair of parentheses, and removing the “return svg.node” call. People love to complain about free open-source documentation. Especially for d3 it seems. Shout out to Mike Bostock for all his awesome work.

Knowing what to re-order, remove/add is non-trivial for a newbie.

Relevant discussion: [0].

Let's look at the edit distance between [1] and [2]. Previous frustration at [3].

[0] https://news.ycombinator.com/item?id=27415725

[1] https://stackoverflow.com/questions/66966625/converting-obse...

[2] https://observablehq.com/@d3/contours

[3] https://talk.observablehq.com/t/i-want-to-learn-d3-i-don-t-w...

Re: D3 7.0

#50
post #23
post #16

Earlier quoted context omitted.

I work with both D3 and Observable full time. The claim that one has to "reverse engineer the runtime" is simply absurd. The people that complain about D3 on observable always turn out to have taken neither the time to understand Observable nor D3 and are looking for a way to just copy paste something into their codebase, without understanding it, and without any willingness to really learn the tools they are using.…

> taken neither the time to understand Observable nor D3 and are looking for a way to just copy paste something into their codebase, without understanding it, and without any willingness to really learn the tools they are using. That's how many of us learn, by dipping our toes into a new SDK by copying and pasting into our bare HTML/JS page and tweaking things to see what happens. Eventually we will get around to rea…

this.

I am a beginner, and have spent hours in frustration, because I couldn't figure out the examples.

In every other project I would copy and paste some examples and start playing with it to understand.

Post reply on HN