Despite the fact that I went to an arts college (SUNY Purchase), founded a media company (One Source) and used to style myself an artiste (a frigging Theatrical Lighting Designer) I’ve never been a user-interface guy.
I’ve done a bunch of UX work, of course, but I much prefer to play with the back-end (i.e. services, logic, databases, tooling, etc.): the invisible yet ultra important glue that lies at the heart of every non-trivial application. Even so, there are times when it’s hard to resist the pull of the front-end, especially if I have a chance to work with my hands-down favorite UX technology: WPF.
For the uninitiated, UX is developer-speak for User Experience (GUIs, HTML, graphic design, etc.). You know, the shiny bits our end-users adore! Unfortunately, like most programmers I hate my users. Only kidding. Maybe.
This evening, I found myself in need of a UI testing harness to validate a new trade-execution engine I’m writing. In it’s real-world use the engine won’t come within a light year of an actual UI, but for testing purposes only, something GUI-ish was just the ticket. I still haven’t finished the overall program, although I did just complete a major component: a Bid/Ask box. If you’ve been trading for a while you’re no-doubt familiar with such things. On the other hand, if you’re a serious trader you shouldn’t do manual trading, and Bid/Ask boxes are all about manual trading. Yes, I know it’s a bit of a pickle, but there it is.
The component took three mostly pointless hours to develop–I say pointless because I could’ve addressed 99% of my testing need in about 15 minutes. Even so, I’m more than a little pleased with the result. There’s something delicious about sweating the details; making sure each pixel is in the exact right spot, making a UI so neat you almost want to run your fingers over it.
Anyway, if you’d like to play around with the code, it can be downloaded from GitHub. Enjoy…