Spiffware: yarpag (Yet Another Random PAssword Generator)

My great friends Ruth and Jeff got me a spiffy fingerprint reader for my birthday. If you've ever tried to log in somewhere with 17 different passwords from your mental inventory before hitting the one you actually used, you'll know how great this is - so of course I had to hack up a small program that would help me come up with hard-to-guess passwords for all my log-ins - now that I no longer have to remember them!

You can download it here and here.


NOTE: You can increase the random seed entropy by either moving the mouse pointer around on the form for a while, or generating a bunch of unused passwords, before creating the one you're actually going to use.

Mention on BlogHiFi.
A Windows CE version of yarpag is now available here.
Film at Eleven: Fracas!

All work and no play makes Jack a dull boy. Sometimes you just have to stuff your brain with something other than the corporate chazerei in order to cling to the fringes of what's left of your sanity. That's my excuse, anyway.

If you have five minutes to kill and 315MB of hard drive space you don't know what to do with, I feel for you. So much so, in fact, that I went and made a therapeutic hypnosis video just for you.

As the guy in the red suspenders likes to say: watch...

GeekSpeek: Targeted Command Prompt

Were you ever annoyed about having to change the path to whatever you want it to be after opening a new command prompt in Windows? If so, this simple registry file will make you happy.

Download the file and double-click to add it to your registry. Now simply right-click on a folder of your choice in File Explorer, select "Command Prompt Here," and you've got it, baby.

How To: Spend $12K in a Jiffy

Not that I have $12K to spend, but let's just pretend. Since you are probably familiar with my level of geekiness, you have most likely realized, by now, that said hefty sum would go toward a shiny new computer system.

For my part, knowing the eclectic circle reading this blog, I fully expect to be corrected in my errant ways in choosing the bits and pieces, which would potentially become a formidable space heater amidst my already tropical office climate.

CPU
I admit it, I'm a Dapper Dan man. Every single time I tried anything but Intel processors, I ran into system performance and/or stability problems. I may simply have been unlucky, but I'll forgo the angst of going against my instinct, thank you very much, and choose an Intel QX9770 CPU.

$1470

Motherboard
I have always had good luck with ASUS motherboards so like a good old boy, swearing by his trusty old Buick, I'll go for the P5E3 Premium motherboard, since it sports the nicely featured Intel X48 chipset.

I should probably interject that the above motherboard won't support nVidia's SLI technology - only ATI's CrossFire. In my opinion, Nvidia's 790i chipset is an immature technology, given the problems people are experiencing with 790i motherboards. The most stable 790i motherboard, I've heard of, is the ASUS P4N64 WS Pro, with a price tag of about $450.
$370

Memory
I've had good experiences with Corsair memory as well, so that'll be two 4GB Dominator PC16000 kits, please.

2 x $839 = $1678

Monitor
You can never get enough screen real estate; that's a fact of life. Since my Dell 24" UltraSharp monitor is still a beautiful thing to behold, I'll get another one. While we're at it, I'll opt for a 30" UltraSharp as well. That way, there could be a 24" monitor in portrait format on each side of the landscape format 30" monitor. Yeah, I could live with that; couldn't you?

$579
$1399

Graphics Adapter
What on earth would drive two 24" and one 30" monitor? Why, two GeForce 9800 GX2 cards, of course. There simply is no bigger bang for this kind of money - at least not until the ATI Radeon HD 4870 X2 hits the streets. I'll go with the 700MHz XFX Black edition. You know - so my office will be nice and toasty during winter, also.

2 x $470 = $940
August 12, 2008 - UPDATE:
The Radeon HD 4870 X2 is out! This baby will set you back $560 - $90 more than the GeForce 9800 GX2. That leaves us with a total of $12,022 before shipping and miscellaneous odds and ends. This proves my theory that if you try hard enough, you can blow any budget!

RAID
SATA II is the way to go here, I believe, which means 3ware. The optimal card for this system would be the 9650SE-12ML, the smallest 8-lane PCI Express controller in the collection. Yeah, I think I might be able to cram that into the remaining PCI-E socket, next to the graphics cards. Note to self: Buy a rubber hammer, just to be on the safe side.

$740

Hard Drives
For the system's 1.2TB RAID 6 array, the obvious choice is Western Digital's Velociraptor. That'll sound really cool as they spin up, one by one, won't it?

6 x $300 = $1800

Optical Drives
Allegedly, Sony is the best choice when it cones to Blu-ray drives. It baffles me to learn, then, that Sony's Blu-ray burner lacks a 64-bit driver. The substantially cheaper GGW-H20L Blu-ray burner made by LG Electronics works perfectly on 64-bit Windows Vista and should even be slightly faster, so I'll go with that one instead. The BD-ROM drive, however, will be Sony's BDU-X10S model. I know, I know, I'm a brand snob.

$280
$160

Power Supply
Powering this amount of high-performance hardware isn't a job for your puny old 500W power supply. What's more, a PSU is not very effective at or near its maximum power capacity. Thinking big, I choose Cooler Master's Real Power Pro 1250W, which should be up to the job, and then some. Maybe it'll cause a brownout over at the Intel campus, instead of the other way around, for once.

$330

Case
Lian Li is the master in this field. The noise-dampened PC-A20B midi tower is perfect, since it separates the hard drives and motherboard, preventing cooling problems in one area from affecting the other. It also fits snugly into the available space under my nice beechwood desk. Don't worry, I'll keep a fire extinguisher nearby.

$390

Cooling
An important topic, especially with this configuration. I've heard good things about Zalman CPU coolers, so that job goes to the Zalman CNPS9700 NT. I did consider the blue LED model, but my progressed age got the better of me, sorry.

$80

O/S
What fun is 8GB of memory if you can't use it? The only logical choice for an old Windows hacker in need of a 64-bit O/S is Windows Vista Ultimate. It'll be so much fun to figure out how much of my existing software will no longer work.

$277

Let's see - that's $10,493, right there. You know, my old printer is getting run down, and I really like the Xerox Phaser 6360/DN. That'll be another $1,349, so now we're looking at a $11,842 total. That leaves $158 for shipping, necessary cables, and an additional case fan or two. Twelve grand for a computer system, isn't that something? Never mind that my driveway is caving in and the paint is flaking off the siding of the house. Geeks know their priorities!

After all this, if you've convinced yourself that I have had waaay too much free time on my hands, these last couple of days, you'd be right.

Universal Unix Time

That's right, it's never too early to worry. We, the geeks of the world, all know that the Unix time stamp is represented as seconds since the Epoch, which was January 1st, 1970, at precisely midnight. Unfortunately, the time stamp is defined as a 32-bit signed integer, which will overflow on January 19th, 2038, at precisely 03:14:08. "Great Scott!" you'll undoubtedly say, and you're right, that is kinda heavy.

To solve this serious problem, some have suggested making the time stamp an unsigned integer. Of course, that would suddenly change my birth date to December 9th, 1973. As flattering as this might seem, it wouldn't be very practical in the long run.

Others have suggested using a signed 64-bit integer to represent the date, and that would be fine if everyone were feeling okay with a granularity of one second, which is not the case. Even those who are not satisfied with one second increments seem unable to agree on exactly which SI-prefix would be a fitting resolution.

After thinking about the problem for a while, I believe I have the perfect solution. Why not simply ask the universe for guidance, so we can settle the matter, once and for all?

No, you can relax, mom, I haven't joined a New Age cult. I'm talking about such things as the Planck Time, which is believed to be the shortest interval of time you can measure before quantum effects mess everything up. Hence, you could say that the Planck Time is the duration between quantum ticks - the intervals by which time itself progresses. If we made the time stamp resolution equal to the Planck Time, one second would consist of some 18.5487 quintillion septillion ticks. That's ten to the power of forty-two. Those familiar with Douglas Adams' writings will find this very fitting, indeed.

To determine how many seconds of time we need to represent, let's first talk about history on a universal scale. The furthest back in the past we'll need to represent time would be the Big Bang, obviously. The age of the universe is somewhere around 13.73 billion years, and since a year is usually 31,536,000 seconds, we get close to 433 Quadrillion seconds. That's around 8.0314 Trillion Septillion Septillion quantum ticks, or 8.0314 x 1060. There is still some uncertainty, however, about the exact number of years, so let's just make it an even 1061.

Alright, enough about the past; how far into the future do we need to go? Well, it depends on a lot of things, not least the nature of dark energy, since this will determine the kind of demise the universe will suffer, and consequently when. The most widely accepted theory currently predicts the heat death of the universe in about 100 Trillion, or 1014, years. This translates to some 58.5 x 1063 quantum ticks.

So far, so good. Now all we need to do is find a signed integer that will contain numbers from minus 1061 to, say, 1065. Below is a list of integer widths and their numeric ranges. The number of bits in the integer is always doubled.

32 bits: ±2.147 x 109
64 bits: ±9.223 x 1018
128 bits: ±170.1 x 1036
256 bits: ±57.90 x 1075

As is apparent above, a 256-bit signed integer would suit us nicely. It even allows for shorter quantum ticks eerily predicted by some string theory models. Should these turn out to be right, a simple left shift sequence should sufficiently handle the conversion.

Problem solved! Now we just have to wait for 256-bit processors to enter into production, so we'll have native support for time stamps.

Suppose the zero point of the new Unix time stamp was set at precisely midnight on the 1st of January, 1970, then as I'm writing this, the time stamp value would be approximately 22.6 x 1051. It so happens that 22.6 is the current temperature, measured in degrees centigrade, here in my office. Go figure.