Tool of Thought
APL for the Practical Man
"You don't know how bad your design is until you write about it."
Home
Posts
Projects
Don'ts
Links
About
Posts
Find and Replace with Interval Index
November 7, 2024
Converting HTML to XHTML
September 14, 2024
Testing Abacus Applications
September 2, 2024
Tool Tips
August 19, 2024
Rumba Threading Model
July 28, 2024
Revisiting Rumba
July 17, 2024
Styles, Themes, and Layouts
July 2, 2024
A WebSocket Experiment
July 1, 2024
An Abacus Application
June 30, 2024
A Fair Mutex
June 24, 2024
How to Center a Dialog Element
May 29, 2024
Beware the Blur, and More
May 24, 2024
A High Performance Data Grid in HTML
May 20, 2024
Modal Dialog Boxes 5: More on ProgressBar
May 18, 2024
Modal Dialog Boxes 4: ProgressBar
May 14, 2024
Uncle Bob and The Primeagen
May 7, 2024
Modal Dialog Boxes 3: Prompt
May 6, 2024
Modal Dialog Boxes 2: Confirm
April 30, 2024
Modal Dialog Boxes 1: Alert
April 29, 2024
The Abacus Threading Model
April 28, 2024
Making SharpPlot Charts Interactive
December 21, 2023
On Categorical Data
December 6, 2023
High-Rank Arrays
November 15, 2023
Charting and Tidy Data
September 28, 2023
Project Playfair
September 27, 2023
Ordered Namespaces
September 26, 2023
Towards a Chart Wizard
September 20, 2023
Testing GUIs: Wrestling with Events
August 18, 2023
Testing GUIs
August 14, 2023
Boolean Techniques
May 13, 2023
Don't Trap When You Can Verify
May 11, 2023
Excel Column Names
May 8, 2023
DOM via JSON Performance
April 12, 2023
The DOM via JSON
April 11, 2023
Validating Dates
March 27, 2023
Grade Down of Grade Up
March 21, 2023
How Would You Write This?
March 5, 2023
Text2Date, a New Repository
February 27, 2023
Error Trapping
February 20, 2023
Provanto: A Test Framework
February 13, 2023
Converting Text to Date
January 23, 2023
An Issue With ⎕XML Revisited
January 9, 2023
Anatomy of a Query, Part 3
December 27, 2022
Anatomy of a Query, Part 2
December 20, 2022
Secret Santa
December 12, 2022
Parsing Markdown
October 24, 2022
Anatomy of a Query, Part 1
October 23, 2022
ComposeRules Revisited
October 7, 2022
Constructing CSS in APL
September 30, 2022
Threading the HTMLRenderer
September 22, 2022
A Document Object Model in APL
September 21, 2022
On Control Structures
August 1, 2022
LeetCode 601: Human Traffic of Stadium
July 9, 2022
Trains
July 8, 2022
LeetCode 569: Median Employee Salary
July 7, 2022
LeetCode 571: Find Median Given Frequency of Numbers
July 6, 2022
LeetCode 262: Trips and Users
June 26, 2022
LeetCode 185: Department Top Three Salaries
June 25, 2022
Operators in a DSL
May 28, 2022
Session Configuration
March 6, 2022
A New Workspace File Format
February 26, 2022
Aaron Hsu at Function Conf 2022
January 27, 2022
⎕VFI with ⎕CSV
January 25, 2022
An APL Logo
August 2, 2021
Two Issues with ⎕XML
June 10, 2021
HTML Tables Again
June 6, 2021
Constructing HTML Tables
June 4, 2021
The Software Circle of Life
June 2, 2021
HTMLRenderer Required Files
May 19, 2021
The Problem with Namespace Scripts
April 6, 2021
Building Namespace Scripts
March 26, 2021
The Constant Operator
March 21, 2021