Archive for February, 2010

Review: Celestron Digital Microscope

Wednesday, February 24th, 2010
Human blood cells

Roger has always excelled in math and sciences — no surprise given lineage — and is of the age (9) where the science education is moving into bigger and smaller areas of study.

So far, he has gotten by with a QX-5 Digital Microscope
and mixScope. While the QX-5 is great for looking at money, the veins in leaves, bits of mushroom and tiny critters, high magnification is pretty much useless because the construction makes focus impossible.

Thus, the desire to get something more like a real microscope. In particular, I really wanted a microscope that allows for live viewing on a computer screen (like the QX-5). While, there were some good ones for less than $500 — 3MP digital camera model microscopes that included simultaneous use binocular eyepieces, even — their software is pile of Windows only crapware.

No, thank you. Next!

Close-up of cross section of spinal column.

Enter the Celestron 44340 LCD Digital LDM Biological Microscope. It replaces the normal eyepiece with a 2.1MP digital camera and a color LCD screen. More importantly, the build quality is actually quite decent such that focusing at, even, the 400x maximum optical zoom is quite smooth!

Unlike the QX-5, the Celestron 44340 is really only for use with proper microscope slides (The QX-5 still has a purpose!). blank microscope slides and slide covers are cheap, so I picked up a bunch of those, too.

The slide table includes a very nice set of caliper style adjusters for moving the slide around in a highly controlled fashion. Slides are held in place by an easy to use spring loaded caliper.

The microscope can illuminate the subject from either the top or bottom and the bottom illumination includes a variety of color filters that can be quite useful. Intensity of illumination can be adjusted.

The top illumination is nearly useless at all but the lowest magnification (otherwise there isn’t enough distance between lens and subject).

The digital controls include an EV adjustment, a digital zoom, and the ability to take snapshots. Digital zoom only works when the snapshot resolution is configured for less than 1600×1200. Digital zoom works by interpolating data across the sensor into a lower-than-sensor resolution image that provides a higher-than-optical zoom factor. It actually works fairly well (unlike most digital zooms).

Pollen. Evil, evil, pollen.

The unit also comes with a really nice hard sided carrying case, a dust cover, and power adaptors for global use. A surprisingly complete kit — I was completely blown away by the quality of the case for a device this relatively inexpensive.

My only real complaint is that the LCD is effectively physically attached to the camera & lenses. That, combined with the relative stiffness of the buttons means it is hard to take an image that isn’t blurry. However, it seems that the unit has a slight delay between button push and recording such that is isn’t as big of a problem as it could be. But, still… stupid design — just move the damned shutter button to the base. I’ll probably hack the unit to add an external shutter button.

All in all, I’m thoroughly impressed by the build quality and feature set of this microscope. I would still have been impressed if my $180 had purchased a microscope with this optical performance, sans awesome case and really nice slide table.

All of the images in this blog post were taken with the microscope, no surprise. It is a boxed set of prepared slides that I also picked up from Amazon.

No, iTunes, I don’t want to listen to holiday music in February….

Monday, February 22nd, 2010

We have a ton of Christmas music — 400 or so tracks, with it growing by about 50-75 tracks each year — that ranges across all genres. It is some awesome stuff; blues, reggae, pop, traditional, you name it…

However, it is music that should only be in the rotation starting December 1st, heavy rotation by about the 15th-20th and then no more from December 26th to the next December 1st.

Of course, iTunes is agnostic and, thus, does not follow my holiday music filtration wishes.

Easy to fix.

  1. On all Christmas/Holiday music, add a grouping of “Holiday” or “Christmas” (or whatever you want).
  2. Create a smart playlist that finds all music in said grouping. Make sure the smart playlist matches unchecked items.
  3. On December 26th, select all, ctrl-click, and select uncheck selection
  4. On Decmber 1st of the next year, select the smart playlist, select all, ctrl-clik, and select check selection

Done. iTunes will not select unchecked songs when constructing genius playlists or when playing through the library on shuffle play. Smart playlists can optionally include checked songs.

Review: Breville Toaster Oven (of awesomeness)

Sunday, February 21st, 2010

I have long wanted a really good toaster oven. One that had decent capacity, was versatile, and insulated such that it doesn’t lose a ton of heat when sticking food into it. As well, I can’t deal with poorly designed products and will often choose dead simple over a full featured item simply because simple is harder to screw up.

After 8 months of research and comparisons, I finally settled on the Breville BOV800XL Smart Oven. It isn’t simple and it certainly isn’t cheap, but the Breville is really quite an excellent piece of technology.

The Breville’s controls are straightforward. You select the mode first, then there are two additional dials that configure, effectively, temperature and time. For toasting, the two additional buttons select slices and darkness; seemingly silly, but it actually works quite well!

As well, the toaster oven has a convection setting and a “frozen” setting that automatically adjusts the cooking times to account for cooking frozen foods. The “frozen” button is the one feature that borders on frivolous gadgetry. Then again, cooking random frozen foods really isn’t a part of our diet. If it was, the adjustment it makes actually does make sense.

The interior capacity is large enough to bake a 13″ pizza or roast a whole chicken (though you might have to cut it into two halves). Combining decent insulation with high wattage, the Breville both heats relatively quickly, holds heat well, and the outside does get warm, but not terribly hot.

When the internal rack is in toasting position, opening the door magnetically slides the rack out a few inches. Very convenient.

All in all, the Breville is a well engineered kitchen tool. It can easily replace your toaster and can often fill in for your full sized oven while both pre-heating more quickly and using less electricity overall. And, of course, the Breville can act as a secondary oven for those times when you need two ovens.

Since the addition of the Breville to our cooking toolset, it sees daily use.

Read the rest of this entry »


Thursday, February 11th, 2010

Ow ow ow ow.

Do not buy this fan.

It can shock you.

Specifically, the metal toggle switch’s handle is spring loaded such that if you push on it like a push button, it will short out internally. Not only does it send a pretty spray of sparks out of the switch, it will also shock the crap out of you.

As suggested, I have reported the fan to the Consumer Product Safety Comission and will write-up whatever the followup experience may be.

Sony Hates Users; PS3’s “Restore Default Settings” Eats Your Data

Tuesday, February 9th, 2010

I’m the first to embrace that much of this was written in anger and, though I might now word it differently, I’m not going to because it captures the depth of frustration and crappy experience I endured (a first world problem, assuredly).

But, hey, let’s make the vitriol useful– if there were a means that I could report bugs, I would. If there were a way to capture the state of my machine for validation, I’d do it. If there is some way that my crap user experience could be used to prevent future user abuse, that’d be awesome.

To be completely blunt: The team responsible for the PS3 non-gaming user experience — the menus, data management, user interface, and everything else that doesn’t happen in game — are either incompetent buffoons or have a management chain and/or product marketing/design/definition demands that are ridiculous, stupid, and an insult to the customer. (Personally, I’m betting it is the latter — the PS3 is an impressive piece of engineering, both software and hardware).

It is unfortunate that the PS3 is the only vehicle via which one can enjoy such great titles as Ratchet&Clank, WipeOut HD/Fury, and Uncharted. It is insult to their greatness to require the user to have to experience but a moment of the steaming pile of crap that is the Playstation 3 user experience.

I did something incredibly stupid this evening.

I assumed that Sony remotely cares about user experience, that Sony understands that their users care about saved game data, and that Sony — after more than a decade in the game console business — might have a clue about how to implement a system.

Boy, that was a stupid assumption.

I wanted to move the PS3 from TV A to TV B. No video; TV B doesn’t do 1080p. No problem; a google search or two later reveals that holding down the power button will reset the video and give you a menu where you can reset the video.

Nope — the closest is restore default settings. An internet search indicated this was the right thing to do. Wrong. The internet was wrong. Very very wrong. Don’t do that. Don’t ever do that. If you want to switch the resolution of a PS3 without losing data, do so on a TV that works with the PS3 in the current display mode first. If you don’t have one, you are screwed. Sony? Why do you hate your users?

In fact, what it does is worse than restoring the system to factory default. The first sign of trouble is when the PS3 says something like “Hey, I discovered there was user data I didn’t know about, I restored it”.

It lies.

It actually creates disconnected, unsigned, unblessed, shell accounts that have your data in an unusable form. They will have an asterisk in front; bbum became *bbum.

Uh oh.

Upon logging into the faux-*bbum account, many things are now broken. The worst — the single biggest insult — is that the original save game data is still there, but many games can’t use it.

Assasin Creeds II? Apparently, that saved game data will still work. Peggle? Nope, not so much. Oooh.. joy… looks like all data related to games purchased from the playstation network is trashed. WipeOut HD? Won’t even launch — key file missing, redownload dumbass user! But, Sony, All I wanted to do was make it work again? Why are you throwing rocks at me?

Better yet! When you redownload, the PS3 downloads all the bytes and then says “Hey, man, you already got the same crap installed. Do you really want to install it again?” The stupid. It burns!

Now, logging back into the Playstation Network let me sync my trophies. But there was also some warning that said that I might not be able to earn any more trophies, implying that online play was broken in some fashion. Of course, there isn’t anything that I can find to verify current status.

Wait. I played Peggle once and the challenge modes were locked. Now they aren’t. Huh… what? It appears that I didn’t lose Peggle data, but that something magically triggered the reconnection of the data. I’ll have to assume that it was the WipeOut HD “key” download as that seems to be the only “user authing data event” to have happened.

At this point, I renamed the account and have restored Playstation Network connectivity. I may or may not have a mostly working account. I have lost data — all Peggle data gone and deities knows what else. Even getting back to this point was a bunch of effort that I wouldn’t wish upon a non-admin user any day.

Of course, that I failed to maintain a backup was definitely a fault of mine. Then again, I didn’t actually lose any data, Sony just went to great lengths to make my data unusable without actually modifying it.

Or not. It might be that my data is now fully restored and usable. Or it might not be. There is no way to tell. Who knows? I might decide to fire up Uncharted One later this year only to discover that I can’t load the game save and have to start over.

Sadly, this abusive user experience is not unique to the PS3. I had a similar experience with the Wii, though — to be fair — Nintendo has apparently addressed that exact issue in the interim couple of years.

objc_msgSend() Tour Part 4: Method Lookup & Some Odds and Ends

Thursday, February 4th, 2010

Table of Contents

  1. objc_msgSend() Tour Part 1: The Road Map
  2. objc_msgSend() Tour Part 2: Setting the Stage
  3. objc_msgSend() Tour Part 3: The Fast Path
  4. objc_msgSend() Tour Part 4: Method Lookup & Some Odds and Ends

In the first three parts, I gave an overview, explained a bit of the ABI used by Objective-C, and took a near instruction by instruction tour of what happens on the fast path of Objective-C method dispatch. By fast path, I mean what happens 99.9% of the time; a very fast, no overhead, no function call, no locking, set of instructions that grabs the method implementation from the cache and does a tail-call jump to that implementation.

The slow path is used rarely. As little as once per unique selector invoked per class with a goal of filling the cache such that the slow path is never used again for that selector/class combination. A handful of operations will cause a class’s cache to be flushed; method swizzling, category loading, and the like.

Note that during +initialize, methods won’t always be cached. Yet another reason to not do any real work during +initialize! Read the rest of this entry »