Infinite Pane-Ing

One key trait of “infinite pane-ing” and other parts of GT demonstrating IDE-as-language is that it’s the same every time, everywhere, in every project.

> Once I know about the JSON view or a file system view, or the one liner to spawn an inspector, or a Coder, or Documenter, I can plug it in wherever I need it.

Compare that to stovepiped applications where I have to understand the design of each one, which I’ve forgotten by the next time I need it because I don’t use it often enough to remember! -- SeanDeNigris via discord (2021-05-28)

Cf. jqJSON processor

~

Nothing big, sometimes it's the small things. I wrote a script (not in Smalltalk) that output a lot of JSON, it wasn't clear which error message belonged to which entity in a list of objects. In another IDE I searched for the error but it didn't help because I didn't know if it belonged to the entity 'above' or 'below' when looking at a wall (a skyscraper) of text.

In Gt: Open Folder -> JSON file view, click button to parse -> Nested Dictionary view -> write a quick `collect:` with just the two fields I need, ID & error, DONE. After the fact thought of the other ways to do this and it just seemed like a huge pain, write a python script, maybe staying in the REPL, which is interactive, but minimally. I could be a 'proper' UNIX user and use jq to parse the JSON output. Although powerful tool, have to look up it's specific syntax every time I use it again. Without live objects and the page/pane workflow (left to right train of playgrounds and inspectors, does this have a proper name?) simple tasks become hard and ad-hoc Exploration is just not fostered. -- botwhytho via discord (2021-05-28)

Cf. Miller Columns (also known as cascading lists)

~

That's a very typical use case for me as well. To the point that I am slowly adopting JSON for diagnostic output from my code, just because it's so well supported in GT. In particular for zooming in on details, as you describe. Idea: make a "JSON explorer" app, nothing but a stripped-down and focussed GT, but marketed for this specific purpose. It could become a gateway drug for GT and Pharo. -- Konrad Hinsen