Just noticed while pair debugging: lack of live visibility in a programming env becomes more obvious when pairing. “Hey, can you check what type X is?” Live Vis takes better advantage of two pairs of eyes
-
Show this thread
-
Geoffrey Litt Retweeted Geoffrey Litt
But also I guess this is more specifically an argument for Interactivity Considered Harmful and dense data displays. Dense walls of print debug output suck, but I’ve had my pair notice interesting things from that. Eyes are fasthttps://mobile.twitter.com/geoffreylitt/status/995846676177965057 …
Geoffrey Litt added,
2 replies 0 retweets 6 likesShow this thread -
Replying to @geoffreylitt
Even though Dijkstra wasn't explicitly cited in Magic Ink, he actually made the same argument in Goto Considered Harmful!pic.twitter.com/2RSLMHGiCY
1 reply 1 retweet 8 likes -
Replying to @wcrichton
Wow awesome find! The second part especially is so key. Abstracting over time is a weirdly powerful and underused idea
1 reply 0 retweets 1 like -
Replying to @geoffreylitt
I think the challenge is knowing what to show. Value of printf is you only see exactly the points (you think) you should care about. A full dump of program output is obviously too much. You probably want: 1) Smart defaults 2) Lightweight interactivity 3) Zoomable UI
2 replies 0 retweets 3 likes -
Replying to @wcrichton
yeah, i'm lately thinking of this as: 1) built-in viz tooling at _framework_ / DSL level 2) programmer can specify vis in some lightweight way 3) authors leave behind visualizations as docs; also remix / build new vis on the fly
1 reply 0 retweets 1 like -
Replying to @geoffreylitt @wcrichton
Geoffrey Litt Retweeted Geoffrey Litt
eg, little sketch of that: tool where programmers can dynamically visualize various projections of Redux state (i'm cheating, these are actually hardcoded now, but seems easy to make dynamic because of the common structure of Redux apps)https://twitter.com/geoffreylitt/status/1260641012415946754 …
Geoffrey Litt added,
0:16Geoffrey Litt @geoffreylittplaying with showing list of todos as little dots, colored by completion status... by looking at the "todos" and "visible todos" rows, you can literally *see* for yourself how filtering works. the todos are there still there! just not visible pic.twitter.com/9iHdnWOKNWShow this thread1 reply 0 retweets 0 likes -
Replying to @geoffreylitt @wcrichton
also, i think sometimes the "actively designing a good printf" is a bit stockholm syndrome when you have a blindfold on, you gotta run careful science experiments to figure out what's going on. and it feels good to develop that skill ... or, just take the blindfold off
1 reply 0 retweets 1 like
Another blindfold is lacking a model of program comprehension. Without that, it's extremely hard to design or evaluate comprehension/debugging tools. A paper I've always wanted to write: "A Representational Analysis of Debuggers", in the mold ofhttps://www.sciencedirect.com/science/article/pii/0010027795006743 …
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.
cognitive psychology. PhD