6 ms·
Okay, but what is ellipse(50,25,32,5)? "ellipse" and numbers are only hints, just as blank buttons and dials are only hints. Programmers rely a lot on IDE sup
by chipsy 14y ago
Okay, but what is ellipse(50,25,32,5)?
"ellipse" and numbers are only hints, just as blank buttons and dials are only hints.
Programmers rely a lot on IDE support now to see the parameters...which is exactly what Bret is talking about!
- pacala 14y agoThe comparison is still shallow. It is regrettable that most programming languages don't support named parameters, but it's fairly trivial to imagine a language and api: DrawEllipse(x=50, y=25, width=32, height=5) No real-time rendering and tracing of values required (I hope!). Furthermore, a decent IDE will bring in the method doc blurb, so the programer has a richer context to make an informed decision. I appreciate the work Brett put into the article and I'm half way pre-convinced myself. At the end I was somewhat disappointed because most of the stuff he talks about is already present in a decent IDE, perhaps in a less polished form, but present nonetheless. The deeper put-off is that the article seems to advocate not thinking, instead performing random walks using shiny tools. If someone can't think about their code, no amount of visualizations is going to help. That being said, the potential of enhancing one's thinking abilities by properly chosen visualizations is tantalizing, but I don't think the article makes a good case for it and I haven't yet seen a better approach than old school pen and paper.
- jasomill 14y agoIt'll be interesting to read his subsequent comments on graphics state, as extending this example to draw arbitrary ellipses without coordinate changes could make for a simple visual demonstration of function composition, assuming the goal is not "Learn PostScript in floor(π^e - 1) Days."
- gcr 14y ago> If someone can't think about their code, no amount of visualizations is going to help. Most of the article tries to make the point that if someone can't visualize what their code is doing, they can't think; they can't reason about it.
- pacala 14y agoExactly! There are several levels of learning. At the master level one does his job using muscle memory. Graphics help at the early levels, but to be proficient one needs to master the domain. At that level graphics are slowing down the process, not helping it. Building the right visualisations that hold at master level as well as at novice level holds the promise to expand one logical abilities far beyond what our current ones.