Hacker News new | ask | show | jobs
by ioeu 3949 days ago
I would've enjoyed reading more about your approach seeing as it seems to be very alike to what I wanted to try and solve. I wanted to, similar to what you describe, be able to visualize the program's data structures as I visualize them in my head avoiding writing one-off, text-based, sub-optimal printing code.

I'm still interested in the idea (i.e. visualizing a program by its state) although I fear it may not be practical for non-trivial programs with complex, large and rapidly changing data structures.

1 comments

It remains to be tested, but I'm pretty confident it will work for this—in a significant proportion of cases. You'd only visualize a few data structures at a time, most likely; there are controls like fast forward/rewind and a progress bar, and stepping one operation at a time; and you can just let it run on the side with the self-navigating camera for an extended period of time, and maybe you catch an anomaly. For applications where you're operating on data structures with millions of elements or whatever, you might need to artificially restrict the amount of data for testing—but that's reasonable to do most of the time. There are also controls you can't see that make hierarchically navigating from groups of data structures to single data structures to single elements, easy.

I think you're one of the few people I've come across who seems to get what it's for at all :D

I'm inclined to agree, I think it should work for most basic types using controls for forward/rewind and optionally only looking at a subset of the data.

A potential problem with visualizing more complex structures may be that people's mental representations for them probably differ, making it really hard to offer a visualization that maps to each person's mental model of each specific (complex) data structure.

What do you mean by: "There are also controls you can't see that make hierarchically navigating from groups of data structures to single data structures to single elements, easy."?

I'm happy we came across then! I find this type of visualiation to be intriguing, and I may give it a stab in the future.

We should definitely keep in touch.

Did you look for any similar software before you started building? Did you find anything?
I didn't beforehand, thinking if there were something for production purposes rather than being purely academic, I'd know about it. I looked later, though, and couldn't find anything. Btw, you can reach me whenever at westoncb[at Google's mail service]