VOOZH about

URL: https://thenewstack.io/the-glamorous-toolkit-testing-a-software-exploration-tool/

⇱ The Glamorous Toolkit: Testing a Software Exploration Tool - The New Stack


TNS
SUBSCRIBE
Join our community of software engineering leaders and aspirational developers. Always stay in-the-know by getting the most important news and exclusive content delivered fresh to your inbox to learn more about at-scale software development.
REQUIRED
It seems that you've previously unsubscribed from our newsletter in the past. Click the button below to open the re-subscribe form in a new tab. When you're done, simply close that tab and continue with this form to complete your subscription.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.
Welcome and thank you for joining The New Stack community!
Please answer a few simple questions to help us deliver the news and resources you are interested in.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Great to meet you!
Tell us a bit about your job so we can cover the topics you find most relevant.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Welcome!

We’re so glad you’re here. You can expect all the best TNS content to arrive Monday through Friday to keep you on top of the news and at the top of your game.

What’s next?

Check your inbox for a confirmation email where you can adjust your preferences and even join additional groups.

Follow TNS on your favorite social media networks.

Become a TNS follower on LinkedIn.

Check out the latest featured and trending stories while you wait for your first TNS newsletter.

PREV
1 of 2
NEXT
VOXPOP
As a JavaScript developer, what non-React tools do you use most often?
Angular
0%
Astro
0%
Svelte
0%
Vue.js
0%
Other
0%
I only use React
0%
I don't use JavaScript
0%
Thanks for your opinion! Subscribe below to get the final results, published exclusively in our TNS Update newsletter:
NEW! Try Stackie AI
From clobbered drafts to real-time sync
Apr 14th 2026 10:00am, by David Moore
TypeScript 6.0 RC arrives as a bridge to a faster future
Mar 14th 2026 9:00am, by Darryl K. Taft
Mastra empowers web devs to build AI agents in TypeScript
Jan 28th 2026 11:00am, by Loraine Lawson
2024-03-30 05:00:55
The Glamorous Toolkit: Testing a Software Exploration Tool
Software Development / Software Testing

The Glamorous Toolkit: Testing a Software Exploration Tool

Gtoolkit, a moldable development environment tool, makes it easier to explore your code — but its usefulness is limited right now.
Mar 30th, 2024 5:00am by David Eastman
👁 Featued image for: The Glamorous Toolkit: Testing a Software Exploration Tool

We’ve always been rather conservative when viewing code, data and other software structures. We’ve used file browsers, sometimes with some type of preview modes. Then we pass on code or data to another application to look at it — and then, possibly use another application to work on it.

The exploration of software has always been a bit clunky. As it is, we still use inspectors designed in the days when apps were expensive, and naturally, these became our workflow focus.

To get around this, we sometimes use platforms that can create data structures that are easier to browse. I’ve used Obsidian for some time, and this does a good job giving structure to your design ideas, creating strong documentation as a byproduct. Jupyter Notebooks allow the user to keep notes next to live code.

The Glamorous Toolkit (Gtoolkit) is written with Pharo, which seems to be a visual Smalltalk implementation. I won’t focus on these technologies in this post, but instead on the ideas the tool presents. This idea is the “moldable development environment.” To summarize this unlikely-sounding method, it is a way of bringing custom tooling to any software development problem in a timely manner.

Gtoolkit is kind of answering the question: What if an inspector or preview mode was good enough to make software exploration less clunky? For various reasons, Gtoolkit does a consistently mediocre job of describing what it actually is, but this will improve as more people look at it and a good community manager shapes the frontend for a wider audience. However, it does offer a tour, and is easy to install and play with.

At the moment Gtoolkit is tied closely Smalltalk — one of those languages that doesn’t have a lot of application but is highly respected, especially by software veterans.  In the moldable environment, Smalltalk is used to write scripts to help explore data, though I expect this could eventually be replaced by generative AI just accepting simple English descriptions. But as developers, we shouldn’t worry too much about dipping into new languages.

A Very Quick Smalltalk Explainer

To start with, everything in Gtoolkit is an object, and the only thing you do is pass messages. Let’s look at “Hello, world”:

Transcript show: 'Hello, world!'.
  • Small talk is about passing messages to objects. The message show is passed to the object Transcript.
  • As you can guess, the Transcript object manages the console.
  • The message show has a colon followed by one argument, which is the welcoming text (or string literal) to send to the console.
  • A polite full stop ends the phrase.

Molding With Gtoolkit

After installing Gtoolkit, we get a windowing interface with a list of icons on the left, and some lengthy browsable markdown documentation:

👁 Image

To get more information on the other tools, it is best to check the YouTube videos listed for good explanations unless you are already part of the Smalltalk community.

Starting with the file browser tool, you can see how you can explore within a folder, much like a Mac’s Finder:

👁 Image

Note the little blue gizmo at the top, which controls where you are in your view graph. While looking at the files, I was reminded that I did find a bug in my own project that could be solved by exploring.

After some fiddling, I got the browser to back up through the directories to look at my own code. I came to some JSON that is simply an array of small dictionaries for tying together text and icons in context for a video game narrative:

👁 Image

Earlier, I had a small bug because some of the dictionaries didn’t contain a certain key that the code depended on. So the genuine question was: How do I find the JSON objects that don’t include iconid as keys? I’m a big fan of regex, but we know not to use that in XML-like structured data because we can get lost in bracket contexts — and, as the famous answer in the link implies, might go mad in the process.

But following on from one of the introduction videos, I tried to do things the moldable way and wrote a quick query within the tool. I knew I could “monkey see, monkey do” my way by writing a small script in the page to send messages to the Smalltalk Object Notion object (STON):

👁 Image

OK, so by passing the contents of the object and then moving into the array, it gave me the list of dictionaries. With some messing about, I finally found the correct query:

👁 Image

I cobbled that final statement together quite quickly, but a short explanation might help:

  • STON stands for Smalltalk Object Notation — i.e., the Smalltalk JSON library.
  • the `fromString` message passes self, which is a self-reference to the caller. The object is sending itself messages.
  • That phrase in square brackets is a block. It iterates over the array, looking for a specific key.
  • The block is used as an argument for the reject message. That is, we don’t want the sections where iconid is used as a key.

I feel that enough of the above is present in other mainstream languages to feel reasonably meaningful.

It felt quite good using a small script to explore data profitably. While I was forced to use Smalltalk, this inconvenience could easily be soaked up by AI with a little work.

The basic ability to stay within a tool, explore your data and solve problems is one of those “ubiquitous computing” objectives that we fully expect to see in the future. While I don’t recommend that you necessarily play with Gtoolkit just yet, I think it marks a nice direction to keep an eye on.

TRENDING STORIES
David has been a London-based professional software developer with Oracle Corp. and British Telecom, and a consultant helping teams work in a more agile fashion. He wrote a book on UI design and has been writing technical articles ever since....
Read more from David Eastman
SHARE THIS STORY
TRENDING STORIES
SHARE THIS STORY
TRENDING STORIES
TNS DAILY NEWSLETTER Receive a free roundup of the most recent TNS articles in your inbox each day.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.