Yes! I've seen first hand how much it helps (is it just me in particular? maybe not everyone needs it?) programming things I can visualize (in a literal sense of seeing, but I think the essence is really being in close contact with intermediate results). So, I just make ways to visualize things :)
A particularly simple and amazing tool for this is p5.js, with an editor that, to me, enables exactly the kind of workflow shown here: editor.p5js.org
Whatever you are going to do, you can draw alongside to help you make sense of it better. I do this on my own mind sometimes, but for example visualizing and small neural networks (which I have been messing around with) can't be done on my imagination alone.
I think the important is just that you have some library that makes drawing easy, and put it alongside your work. Of course, it's extra work to make diagrams of everything. But sometimes they really help. I think it's important to simply have this possibility in mind.
(maybe it should have a name? Visualization-enhanced programming? Print-programming? I think (e.g. jupyter) notebooks strive toward this, although tbh I prefer the p5js environment without a linear format)
It should be up to us to decide if and when this extra work is worthwhile. I think really designing (and discovering) things is what benefits the most from this style (i.e. game design, product design, scientific experimentation). So you need programmers working on a design problem and/or designers working on a programming problem; or you could have them side-by-side collaborating (and not just a designer imagining things, and a programmer following specifications to the letter).
It also requires a kind of artistic taste to make things look good, but of course that's something you can develop.
It's a really enjoyable process to be able to get a feel for what you're doing!
I think you're saying is that we don't get this for 'free'. There's probably no tool (although maaaybe AI could help?) that just instantly visualizes anything you could do. Instead it's up to us to do it :) (although good graphics libraries and a tool that encourages you to recompile often is almost essential imo!)
I've used this technique quite a bit in the past, but often not enough. I work in games so a lot of problems are actual visual 2d or 3d problems. Things like: finding the closest valid object I can target at my given heading. Simple enough, but as things get complicated it's often the simple things that trip you up, and visualizations can often make the problem obvious.
That p5 editor looks nice for this sort of thing. It's important to be able to get the visualizations in quickly, otherwise you risk wasting time.
A tool I've dreamed up, that I never seem to have time to implement, is to send debug information to some form of database, and then being able to query and render that data as you like (from another client). To see bar/line charts of data, spatial visuals, more abstract graphs like in your examples, timeline scrubbers, etc... maybe some day I'll get around to making it.
Anyway, thanks for your comment. I'm interested in this kind of thing.
A particularly simple and amazing tool for this is p5.js, with an editor that, to me, enables exactly the kind of workflow shown here: editor.p5js.org
Whatever you are going to do, you can draw alongside to help you make sense of it better. I do this on my own mind sometimes, but for example visualizing and small neural networks (which I have been messing around with) can't be done on my imagination alone.
I think the important is just that you have some library that makes drawing easy, and put it alongside your work. Of course, it's extra work to make diagrams of everything. But sometimes they really help. I think it's important to simply have this possibility in mind.
(maybe it should have a name? Visualization-enhanced programming? Print-programming? I think (e.g. jupyter) notebooks strive toward this, although tbh I prefer the p5js environment without a linear format)
It should be up to us to decide if and when this extra work is worthwhile. I think really designing (and discovering) things is what benefits the most from this style (i.e. game design, product design, scientific experimentation). So you need programmers working on a design problem and/or designers working on a programming problem; or you could have them side-by-side collaborating (and not just a designer imagining things, and a programmer following specifications to the letter).
It also requires a kind of artistic taste to make things look good, but of course that's something you can develop.
It's a really enjoyable process to be able to get a feel for what you're doing!
(See here: https://editor.p5js.org/gustavo.nramires/sketches/sLA07wpa_ for some personal experiments in visualizing graphs and sparse neural nets, https://editor.p5js.org/gustavo.nramires/sketches/1Bb5VIHi2 for designing an algorithm to efficiently make a roguelike map)
I think you're saying is that we don't get this for 'free'. There's probably no tool (although maaaybe AI could help?) that just instantly visualizes anything you could do. Instead it's up to us to do it :) (although good graphics libraries and a tool that encourages you to recompile often is almost essential imo!)
And here's the kind of art I could likely never just simply imagine to existence, experimentation is essential! https://editor.p5js.org/gustavo.nramires/sketches/pVFFT_8E5