JVT Viewer
Java TreeView displayed the output of hierarchical clustering as a heatmap—rows of genes, columns of samples, each cell shaded along the red-green scale that everyone used for log ratios at the time. You loaded the CDT and GTR files from Cluster, and it drew the dendrogram beside the matrix so you could zoom into a branch and read off which genes moved together. For a long stretch it was the practical way to look at expression data and pull figures for a paper.
It also punished the hardware. A few thousand genes by a few dozen arrays would push the JVM past whatever RAM the machine had, and the redraw could lock a CRT solid for half a minute. You learned to save first, then scroll.