Monthly Archives: December 2009

One last silly clock

Edit: I actually ended up upgrading this to be a full-featured alarm clock application, and now it’s actually useful as well as amusing. You can now select the sound file to be played, or just have the speed synthesizer read the time as in the original version. You can also select one or two custom alarms, which, assuming you tell it, will keep making noise until you deactivate it (whereas the normal sounds just play/read once). I also added, like wristwatches, the ability to beep on the hour, and, by request, I also added 4-20!


I present one last piece of code, in celebration of humanity’s obsession with numbers that stand out, in today’s case, the flipping of the year. So happy new years everyone! May your resolutions be kept.

This is the “Special Times” clock. When the time of day reaches a “special” time, like 12:34, or 3:21, or 11:11, or 24:24 or anything else that has a numerologically pleasing aesthetic, it uses the OS’s built-in speech synthesizer to shout out the time in a way that emphasizes the eye-catching nature of the digits (ie. it doesn’t should “twelve thirty-four”, it shouts “one two three four”, as I often do myself. To use it, just click on the settings you like and leave it running minimized. If you hover your mouse over the checkbox options, it will display the next time that this option gets triggered, rather than the normal display of the current time. Just for fun, enjoy.

Download here: specialtimes.exe (59k)

Major End-of-Year ZenCASH update

I’ve made a ton of improvements to ZenCASH, including, most importantly, the ability to search and, as well as and There are also lots of minor updates (audio prompts, keyboard shortcuts, pop-up menus) and cosmetic and interface improvements as well. Assuming no major bugs have crept in, I’m quite happy with the current state of the program and feel like it’s becoming quite a mature application. Here’s the full list of changes in this version:

  • Optional audio prompts added on search/scan complete, and on selected fail messages.
  • Full support of searching and has been added.
  • City/section selector page now handles anywhere between 1 and 4 sites.
  • Added a pair of labels next to the “clear all” buttons that indicates what site the treeview that the mouse is over is for.
  • Clear All / Select All buttons now collapse/expand treeviews as makes sense, and handle the personals section in Backpage correctly
  • Internal search load/save file format (.zen files) have been updated to be more adapable and easy to update in the future (old format was difficult to keep backward compatible).
  • Embedded proper Microsoft-approved version code and file info via resource file.
  • If program is being run for the first time, it offers to properly install it, and then creates and shells embedded install tool.
  • Optimized internal string handling for speed.
  • When searching Daype, it can be done sitewise via RSS, or normally on a per-section basis via their HTML interface.
  • When resizing the dialog, if you come within 150 pixels on each dimension, it will automatically maximize.
  • Minimize and maximize buttons added and enabled, and context-help button has been moved down slightly (to accommodate Windows “rules”).
  • If software settings changes are cancelled by leaving the tab, a message box informs the user.
  • About page now displays lifetime bytes downloaded, searches performed, and search results found (as of this version of course; not retroactive).
  • Program now keeps track of recent searches, and if you right click on the “load” button, it offers them up on a “quick-load” pop-up menu.
  • Progress bar along bottom has been replaced with a status bar (which includes a progress bar and other information.
  • Statusbar displays the file URL being downloaded in its left info pane.
  • Added “NEW” search button which is basically just the clear button combined with entering a new name.
  • Deep scans of Daype extract the correct date from the entry (otherwise the search uses today’s date for Daype results).
  • Added abort search button to the diagnostics page for convenience.
  • Total time spent searching and total running time of program are now recorded (and display in the “About” dialog).
  • Double clicking on the results list on blank lines no longer tries to view anything.
  • Redrew the diagnostic icons to be less garish and match the look of the “help” icon/button.
  • Added a few keyboard shortcuts: Ctrl+L = Load, Ctrl+S = Save, Ctrl+N = New, Ctrl+G = Go! (and Ctrl+Enter), Ctrl+H = Help, Ctrl+D = Diagnostics Tab, “ESC” keyboard shortcut to close most dialogs.
  • Added a pretty radar scope ZenCASH icon animation on the About dialog.
  • Added an “author photo” easter egg if you click my name in the About dialog, or press the letter ‘S’.
  • Fixed bug where “New Search” dialog was not properly modal.
  • If dialog is tall enough and there is room for them, the scan URLs become simultaneously visible rather than simply selectable.

As always, has the download link and online help.



Caitlin made me a super new hat for Christmas, although it needs to be made a little bigger for my big head and long ears. It came in handy at the park which was quite chilly. After about an hour I told the girls I wanted to go home;


“Because my body is very cold!”

“Don’t you mean your heart? If you were more warm-hearted, you’d let us stay at the park longer!”

Zing! Yes, very clever.


I also wanted to share a super price I found on Dealextreme, a cheap Chinese gadget and miscellanea site if you don’t already know it. I’m a big fan of knives, especially assisted knives, which are sort of like switchblades but because of differences in the design (the opening “button” is a part of the blade) they are 100% legal almost everywhere in the world, including Canada. Anyway, I found a knife on their site that’s a knockoff of a Smith&Wesson M&P series blade that I like quite a bit, but instead of the $50+ that you’ll pay for that knife, it costs only $8.60 (with free shipping too) and surprisingly, the quality is quite good. If you like knives but hate spending money, this one is worth it.

I also put two other knives in the video that I like, my Kershaw which is the “everyday” knife, and a S&W OTF design that’s pretty cool, but less practical than a normal folder. That’s just a tiny peek into my collection… I have altogether too many knives I imagine, although I think many would argue it’s the sort of thing where you can’t have too much of a good thing (there are lots of online stores but stores I’ve used include Roadside Imports and Not Your Mama’s Knives).

PS. The music is the awesome Manu Dibango, the Cameroonian inventor of disco.

Ghost in the Machine Clock, beta version

I’m quickly posting this before going skating. We’ve been having lots of fun since Nefarious got back, with loads of reading (last night because the band was jamming we read in the bathroom, the quietest room in the house, filling the big tub with pillows and blankets and reading there!), games, opening of Christmas presents, movies (we saw the 3D Christmas Carol movie which was soulless and horrible but the kids seemed to like it), and now some play that will require bundling up.

Anyway, first of all, the download link: gitm-clock.exe (65k).

If you’re interested, source code is posted here.

I’ve rewritten this mouse-cursor clock to be a little more functional. Here’s the main dialog:


First you can select the clock style, or what exactly it writes to your screen. On the next line, you can select the system-wide shortcut hotkey that activates the clock (even when the program is minimized and does not have focus). Not all combinations will work on all systems. Next you can set the character set, loading them from disk, or clicking “edit” to access the creator/editor dialog to make your own character sets. Max pixel height is how big you want the characters to be drawn. Leave mouse trails has the program not just move the mouse, but also draws a fat transparent line behind it in the color you select there. The final line lets you set the slowdown factor (how many milliseconds to pause between points), and the acceleration factor (1 draws every point set, 2 draws every second, 3 every third, and so on). By fine-tuning these you can set how fast the clock draws. Finally, the “show now” button does the same as the hotkey, drawing the clock.

The mouse trails won’t work on all systems. The way that it works internally is that it creates a borderless window, in which it inserts a screen capture, and then makes that window 50% transparent. Then it draws the mouse path onto it as it works. Finally, the whole thing fades out (note: if your version doesn’t fade out, re-download it because I added that after posting this). It will look a little like this (I haven’t chosen the best colors I’m afraid):


The editor lets you draw your own characters, and it looks like this:


(The typo on the dialog was fixed after I captured it, oops).

There are two rows of buttons. The left row of buttons are “create” and the right row are “view”. You should not actually click the left row. Instead, use their shortcut keys (0-9,:,A, and P) to start recording once you have the mouse hovering in the drawing window at your start point. Then use the mouse to draw that character, and either press the space bar or click when you’re done. You can then use the view buttons in the right column to see what your character looks like. On the first click it just displays the character, and on the second click it draws it in an animated fashion. The buttons go bold while in use.

The stop recording button isn’t clicked directly; it’s linked to the space bar or a click when recording. You also have load, save, and new set buttons to save your work to disk and so on. You can then quit. Whatever you’ve been working on most recently will be used in the clock, so if you don’t want to use your work, reload the one you do want to use.

The program comes embedded with a default character set (which isn’t the greatest, so do make your own if you want), which it will save in the same directory you run the program from, and it will also save its settings file in that same directory.

Here’s the download link again: gitm-clock.exe

New Clock Idea: The Ghost In The Machine

I came up with an interesting (I think) idea for a clock. I made a quick proof-of-concept which you can download here: mouseclock.exe. When you run it, it registers “CTRL+T” as a system-wide hotkey, and when you press it, it “writes” the time onto the screen with the movement of the mouse cursor. It does it in my handwriting by the way, done with a simple motioncapture program I wrote as well (which you’re welcome to download), and I’ll admit that I didn’t really go to very much effort in making sure my handwriting was neat. But as a proof-of-concept I really had fun putting this together and I hope it amuses someone. If anyone is actually weird enough to think it’s useful, I’ll happily clean it up and maybe even integrate the mouse recorder a bit more nicely so that you can program it with your own handwriting.

Download the mouse cursor clock!

Other than that, and much more excitingly, we’re headed off to the airport to pick up Nefarious shortly, which means that we finally get to open our Christmas presents. I also have a package waiting for me at the post office for tomorrow, so the presents don’t end tonight. They should have though, because there was an “attempted” delivery note on the front door, and we’ve been here all day and there was no doorbell ringing. I think a lot of the time they just knock and don’t push the button, which is kind of annoying since the door is too far away to hear. I think I’m going to put a really obvious note on the front door that points at the doorbell and says “hey! please ring this if you want my attention!” or something.