Dennis Forbes on Pragmatic Software Development   Subscribe to RSS


About the Author
Dennis Forbes is a Toronto-based software architect. While focused primarily on the .NET and SQL Server worlds, Dennis frequently ventures outside of this comfort zone into game development, Linux development, and image processing. He has been published in several industry magazines, has been quoted in the Wall Street Journal and has been interviewed by NPR.

He is a vice president and lead software architect at an innovative New York City hedge fund back-office services firm.

Dennis has been working on solutions for the financial, telecommunications, and power generation markets for over 13 years.


Recent Entries


The Feed Bag

 
Monday, December 18 2006

I frequently go scrounging around for niche development tools/libraries to solve one-off needs, and it's frightening how ubiquitous fake, 3D-rendered product box images are in the software tool industry.

These rectangular parallelepiped (aka "box") renderings generally feature some gangly, oversized text, coupled with awkward, gaudy graphics.

Further investigation has revealed that there's a whole industry of "3d box rendering" software vendors, all promising to pump up your sales if you put one of these travesties on your product page.

What's the point of these fake product box renderings? Why do so many ISVs insist upon leading their product page with them?

"It makes our product more real! Like something physical that you could hold in your hands."

No it doesn't. It makes it less real.

Seeing a clearly bogus box that no one would ever spend actual money printing doesn't fool anyone. Worse, it gives off the putrid stench of deception, implying that there's a real shelf-clogging box when many of these products provide nothing of the sort, most being e-delivery or at most a CD shipping in a flat pack.

It begins a relationship of mistrust.

"But Microsoft does it! Microsoft=successful, therefore it must be a good practice"

Apart from the weak (and admittedly strawman) rationalization, not only has Microsoft mostly abandoned the "picture of the box" graphics on their product pages, where they did use it they used the professionally produced graphics they printed on the real box -- the real box that you probably also saw at Circuit City or Future Shop or wherever.

The product page graphic made reference to real life. It didn't spin some fiction.

We as an industry need to stop this image on cuboid violence. If you must decorate a product page, it's less of a crime to use some of the standard "beautiful people looking happy" pictures, though even that should be avoided.

Tuesday, December 19 2006

In some previous entries I described my skepticism of Riya -- a supposedly extraordinary new image recognition technology that could amazingly discern between twins, among a plethora of other amazing features (such as discerning the specifics of highly obscured, stylized text). The "blogosphere" went nuts, with a lot of believers hoping they'd catch the leading wave of this amazing new innovation, leading the trend.

Lots of predictions were made about Google or Yahoo paying hundreds of millions for this revolution.

Looks like Riya is now a handbag finder.

Nonetheless, today I see a featured Slashdot story declaring the privacy invasion that an amazing new facial recognition will potentially bring. One again it's a "coming soon" technology that's going to revolutionize the image analysis market.

[EDIT: Remarkably, without even the slightest ounce of proof of any real world value, this "technology" has been featured on many of the largest news sites. Now that's P.R. that's worth its pay]

Of course this one is very cleverly marketed: If they simply said "We're going to introduce something amazing sometime next year!" most would rightly dismiss it as vapourware, waiting for actual proof. Instead it's introduced under the "what is this going to do to privacy?", a distracting question that lets lazy technology writers run with it without actually researching the validity of the underlying promises.

Will there ever come a time when people are just a little bit more skeptical of this sort of thing?

QuickNotes

Visual Studio 2005 SP1 was released last Thursday. The computationally demanding 442MB installer runs for hours, so set aside some time before you start.

Thursday, December 21 2006
  1. [INDEX OUT OF BOUNDS EXCEPTION]
  2. [INDEX OUT OF BOUNDS EXCEPTION]
  3. [INDEX OUT OF BOUNDS EXCEPTION]
  4. [INDEX OUT OF BOUNDS EXCEPTION]
  5. [INDEX OUT OF BOUNDS EXCEPTION]
  6. [INDEX OUT OF BOUNDS EXCEPTION]
  7. [INDEX OUT OF BOUNDS EXCEPTION]
  8. [INDEX OUT OF BOUNDS EXCEPTION]
  9. [INDEX OUT OF BOUNDS EXCEPTION]
  10. [INDEX OUT OF BOUNDS EXCEPTION]
Saturday, December 23 2006

Did you know that your PC can be immediately available while consuming less than 1/25th the power? Read on!

(If your PC already is configured to go to the proper S3 sleep, look below for some power consumption numbers for the various levels)

Coinciding with the recent, widely-linked WSJ article on power usage around the home, I happened to be anxiously awaiting my own power meter's arrival in the mail. In my case I wanted it for a different purpose (a complete article on that topic will be published shortly. For now I just wanted to author this post -- on the topic of S1-S4 power modes -- so I could reference it from the other post, avoiding long parenthetical sidetracks like this), however in doing research for the other article, some rather surprizing analysis was completed that I thought worthwhile to share.

My primary development desktop PC is rather obsolete: Athlon XP 3200+ on an nforce2 motherboard, 1GB, two hard drive (totaling 200GB), network card, nvidia 6600GT 256MB AGP video card affair. From an energy usage perspective, it's very comparable to most current PCs.

I've been meaning to replace it with a shiny new Core 2 Duo for some time, but the hassle of setting up all of my software again, configuring everything the way I like it, and so on, is a huge disincentive. Add the fact that my current PC never leaves me really begging for more power, so there's not enough drive to upgrade.

On the bright side, while I've procrastinated about upgrading, the state of mainstream computing has continued to march forward, so what I'm upgrading improves with every passing quarter.

I use my laptop quite a bit, but the machine described above is really the workhorse, and I generally leave it on throughout the day. I leave it on partly because I sometimes need to remotely access it, but more so because I tend to have the need to jump onto it to do short tasks throughout the day. Booting up on a need basis isn't acceptable as even the fast boots of today are still too slow, not to mention having to start all of the various tools that I use.

I used to rely upon S4 (hibernation), but even there the time to restore is too time consuming for these quick-hit usages. Add to that the occasional failure of hibernation to actual recover from a hibernation, locking up when the load is complete, forcing me to dump the state and reboot from scratch -- makes me very wary of the feature as a whole, though I realize it's more than likely an issue with a specific driver or piece of hardware that I'm using.

So instead lately I've been resorting to standby -- auto initiated at a preset interval of non-usage, and manually triggered when I know I'm leaving the PC for a bit. I presumed this was a substantial power savings.

With delivered power meter in hand, I finally had a chance to prove it one way or other. First I measured the "base load", when the PC is sitting on and ready for use (note that actually doing something causes this number of spike, sometimes substantially, so I'm intentionally indicating the idle power usage). This measurement is only the mid-tower consumption, and does not include monitors, speakers, etc.

Idle Power Usage: 129 Watts.

Wow. 129W just sitting there idling. That's about $10 of electricity a month. An ignorable cost, but when you've had conservation beaten into you it really makes me feel quite guilty thinking that my PC was consuming upwards of 100kWh a month largely doing nothing. What a waste.

Next I measured standby mode. In this mode the machine takes just a second or two to recover, ready for use (which I do by either sending it a Wake-On-Lan packet from remote, or by clicking the mouse/keyboard).

Standby (S1) Power Usage: 112 Watts.

Still 112W? Admittedly I was quite shocked that a non-functioning, non-computing PC, with hard drives powered down, could consume this much power. Sure this was a fluke; I did the same test on several of PCs and found the same marginal power savings in standby (S1) mode. This finding was entirely contrary to many sources that claim much greater efficiency of S1 mode.

All of the above was in Windows 2003 (and is the same behaviour on several XP machines I tested). I rebooted the same machine into Vista, and was shocked to find the standby mode consuming far less power (not to mention that it was audibly different -- it actually shut down the fans and such).

Back in Windows 2003, I started investigating why the disparity exists, and why I'm not seeing the power savings I should.

It turns out that XP, and thus 2003, identifies the power support on first installation -- determining which of the S# modes your machine supports -- S1 is the weakest power mode, S3 is a "suspend to RAM" mode (where power is cut to basically everything but the RAM modules, retaining system state with very little power), and S4 is hibernation, where the state is saved to the hard drive. Not only will it not automatically accommodate later changes (for instance BIOS changes), but apparently it very frequently defaults to only configuring standby to S1, even where the machine fully supports more. Furthermore, some configurations of USB devices will cause it to revert to the hoggish S1 standby mode.

My search brought me to a little Microsoft utility called dumppo.exe. With this, I could imperatively force the operating system to start using S3 sleep (given that my PC already supported suspend to RAM. Every new motherboard supports it, although some default to it being disabled in the BIOS). After running dumppo admin minsleep=S3 and rebooted, I put the machine into sleep and checked my power meter.

Sleep (S3) Power Usage: 5 Watts.

(I've scaled all of the power consumption values relatively, and the above says "5 Watts")

Not only is the machine using the same power in S3 sleep as it uses when it's completely off -- yes it does use 5W powering the network card and other motherboard systems even when it's "off" -- but the availability is impressive, with it coming completely to life instantly, and thus far reliably.

Again I use Wake-On-LAN to tell the machine to come alive remotely, making it immediately accessible from afar, and it's far more available than hibernation. Win/Win/Win!

A little utility and suddenly this PC is using 1/20th the power than the prior standby mode. Given the average usage cycle, this will drop monthly energy consumption for this PC from 100kWh to approximately 35kWh a month. Imagine the conservation an entire office building would achieve (consider that many IT departments unnecessarily mandate that all PCs are on 24 hours a day to allow for automated off-hours patch deployments).

Not everyone will have this particular problem (with S3 not being recognized by the operating system), but some quick checks of PCs under my control and among friends and family has demonstrated this to be a ridiculously common scenario, so I thought it worth an entry.

Wednesday, December 27 2006

I've been interested in two-factor authentication on the cheap as a technique to improve systems security for some time. My interest is primarily in making this technology available for marginal cost, with limited scale-out fees. This is a task that should be easy given the widespread availability of powerful mobile computation devices -- namely cellphones with J2ME -- and the ease of adding secondary authentication to most platforms (e.g. GINA authentication in pre-Vista, and Credential Providers in Vista and similar options on other environments. Adding two-factor authentication to a web application is a breeze).

Two-factor authentication, for those who haven't come across it before, is the addition of a secondary identity "proof" above and beyond the normal one-factor password. The purpose being to limit risk when user passwords are surreptitiously gained by nefarious agents, which could happen due to keyboard sniffers (a simple USB interceptor at the back of the target's PC could log weeks worth of keystrokes), trojans, use of public or compromised computers, password reuse or selection weakness, and so on.

Passwords alone are a really weak technique for system security.

The most well-known implementation of two-factor authentication are RSA SecurID hardware tokens -- or similes --  usually built as little keychain units that display a frequently changing, time-based access number (unique per token, so the central system needs to know which key went to which user). To log onto secured systems, such as banks and corporate VPNs, the user needs to enter not only their normal password, but also the code displayed at that moment on their token. So user sally logs on with her password 5gromet4u and her authenticator token is displaying the value 10492838, so she enters that in the pertinent login box. On the server the authentication service validates her password, and that the token that she was assigned should be what was provided (on the server side it's usually generous, allowing the authenticator token for a few minutes in the past and future to accommodate minor time skews, or Sally being slow entering the values).

The cost of these simple devices is usually absurdly high, however. Worse, the service software is usually pompous, overbearing, overpriced systems that take an absurdly simple need and make it a colossal pain to deploy and manage. This is irritating because the core technology behind such systems is absurdly simple -- hash the current date (truncated to a certain level of precision -- say every minute) together with a private value on the hardware token and convert to a BASE10 value to a certain number of digits (e.g. the first 8 digits of the BASE10 encoded hash). On the server end it knows the private value associated with each hardware token, and can perform the same process, so if the time is synchronized on both ends the hash values match.

e.g. here's my 3 minute C# version of a minute-granularity token generating method.

private string GetTokenValue(string userSpecificPrivateKey, int tokenLength)
{
    System.Security.Cryptography.SHA1Managed hash = new System.Security.Cryptography.SHA1Managed();
    byte[] hashValue = hash.ComputeHash((new UTF8Encoding()).GetBytes(System.DateTime.UtcNow.ToString("yyyyMMddHHmm") + userSpecificPrivateKey));
    string hashString = String.Empty;
    for (int counter = 0; counter < (tokenLength>>1) && counter < hashValue.Length; counter++)
    {
        hashString += ((hashValue[counter] / 256.0) * 100.0).ToString("00");
    }
    return hashString.Substring(0,tokenLength);
}

So if I've been assigned the secret, user-specific value of AF8CAD55JK9 (a value that was securely communicated and configured, or burned directly, into the token device and of course configured on the server, but then never spoken aloud or communicated again), then at 1:00 pm UTC on December 28th, 2006, the method will return the token 5864947577 for a token length of 10 digits.

Cell Phone

So here we're all walking around with incredibly powerful cellphones featuring massive amounts of memory and computation power -- I still marvel to think that my cell phone has double the memory of my pimped-out 4MB Atari ST circa 1998 (which itself was 8x the stock memory), and features many, many magnitudes more computational power. At the time that Atari ST seemed infinitely capable -- and most cell phones promise tremendous flexibility and ease of expansion with the universal runtime of J2ME.

Surely to make such a token application for our cell phones should be enormously trivial. I've built GINA modules before, so that element is relatively trivial as well, and is only getting easier with Vista/Longhorn (Dear Microsoft - Where's my free Ferrari 5000 laptop for this Vista mention?)

So over the holidays I wanted a bit of a change from the norm, so I grabbed the NetBeans IDE and the mobility pack and then the pertinent Motorola SDK (all while deciphering a ridiculous array of often conflicting acronyms, and the version soup that is the Java world). All in all it was a remarkably simple and easy route to developing mobile applications, though I was a bit perplexed that I even needed a device specific SDK (I thought J2ME was sort of universal, beyond the basics like screen size/color support), meaning that widespread deployment would probably be far more difficult, with hundreds of possible builds being necessary.

Implementing the above into a J2ME application, displaying the current token value (changing every minute), along with some simple configuration options, was absurdly easy, despite Java not being a skill of mine. The slick little emulator worked wonderfully and displayed what the application would actually look like if it were running on my class of phone.

All in all the free J2ME development ecosystem has improved significantly since my last (abandoned) effort in this space, with some very slick tools and technologies.

Considering the enormous size of the market, it isn't surprizing.

Then I tried to deploy it to my cell phone. What a nightmare: Despite bluetooth and USB connectivity -- theoretically -- it was a complete no go.

The cell phone industry is a travesty. I went through this exact same exercise years ago, again giving up in disgust at all of the barriers that the cell phone industry in cahoots with the wireless providers put in one's way -- basically they do their damndest to limit the flexibility of the devices they provide (even though I bought this phone, and it is legally mine...not really sure how a provider has any right to put any constraints or locks on it. Of course I have the same thing with the Motorola PVR that I bought from my cable provider, again with various features and functions disabled by the cable company), trying to ensure that you're forced to do everything through their cost bloated network, buying from their grossly overpriced online stores, and application deployment has to happen through a system that ensures that they get a tremendous take even if their participation is entirely unnecessary.

To get this application on my phone I'd have to resort to a stack of basically warez-like software (from shady sources, spoken of in hushed voices) to circumvent all of the ridiculous constraints.

Once again I'm giving up at making the phone I carry around more useful. Maybe I'll look at one of those Windows Mobile phones (come on Microsoft! Where's my Acer Ferrari 5000!), which presumably offer more user control and flexibility.

Wednesday, December 27 2006

Gadgets Getting a Free Ride?

A Wall Street Journal reporter recently did an analysis of their home power consumption, the resulting article making the rounds of the meme sites. It appeared just as I was eagerly awaiting my own P3 Kill A Watt's arrival in the mail (no free units, or Ferrari 5000 laptops, were received for that mention).

Household Power Usages

  • 45W - Outside Christmas Lights
  • 7W - DVD player
  • 3W - Microwave sitting idle
  • 785W - One Side of Toaster
  • 75W - Christmas Tree Lights
  • 145W - Central Vacuum Brush
  • 1250W - Carpet Cleaner With Water Heater On
  • 1475W - Kettle
  • 995W - Coffee Maker Brew Cycle

I ordered my Kill A Watt to answer a question I posed on here last year - "Will Power Consumption Burn Vista's Avalon Aero Graphics?" In that post I pondered whether the 3D acceleration of Vista would measurably (and perhaps significantly) increase the power consumption of the host PC: If millions of PCs started consuming an extra 50W to power 3D interfaces, you're into the territory of building nuclear reactors to support Windows Vista upgrades. I'll get to that later.

In his analysis, the author of the WSJ piece -- Jason Fry -- surveys the electricity consumption of various devices throughout his apartment, trying to determine if gadgets are really to blame for increasing power usage. He concludes by declaring that "gadgets don't deserve the real blame for our nation's mounting electric use".

Mr. Fry came to this conclusion after estimating that some household appliances (such as a clothes dryer), along with general lighting, use ungodly amounts of electricity compared to his observed gadget consumption measurements.

On that point he is unarguably correct: The US DOE has been publishing standard power usage statistics for decades, breaking down where power goes in an average American home (note: average meaning that technophile young households are balanced out by a large number of technology-free senior homes, though of course there are tech-loving seniors and tech-fearing young adults). In a recent outing the DOE found that, averaged out, refrigerators (13.7%), lighting (8%), clothes dryers (5.8%), and air conditioners (16%) were significant electricity culprits, with home electronics seemingly minor players.

What Mr. Fry fails to observe, however, is the general trends in household power consumption.

Refrigerators and air conditioners, for instance, have seen dramatic power usage improvements over the past couple of decades. Even a decade old refrigerator can be significantly less efficient than the latest model, gulping upwards of twice the electricity, three times as much if it's two decades old. Furnace blower motors have been moving to DC, significantly reducing their electricity consumption as well. Even clothes dryers have seen significant efficiency improvements, not to mention that many coffee makers are moving to a much more efficient thermal carafe design.

On the lighting front, compact fluorescents have stormed the market, and are now more common on retail shelves than their obsolete incandescent predecessors, delivering the same light with one quarter the power.

Home insulation standards have been improving by leaps and bounds, reducing heating and cooling demands considerably: Homes might be growing in size, but they can be heated and cooled with much less energy per square foot than a home of just a couple of decades ago, and of course lighting extra space is far cheaper.

Virtually every major appliance has seen moderate to dramatic power improvements over the past several decades. Of course on a average basis some of these gains have been wiped out (from a purely per capita average perspective) as these appliances have gotten more accessible, with more homes having central air, dishwashers, and so on, but this lifestyle improvement has thankfully come in concert with efficiency improvements.

Despite all of these improvements in the major electrical contributors, however, the average monthly household power consumption has risen, as Mr. Fry notes, from 793 kWh in 1990 to 938 kWh in 2006.

How can we explain this seeming disparity?

The Personal Perspective

CF Light Bulb

My wife and I have been slowly replacing our light bulbs with the new compact fluorescent (CF) variant ever since they first appeared as a novelty at the local Ikea. We've kept buying as they've gone from being bulbous, slow to turn on nuisances to being instant on, pleasing, low-heat, seemingly last-forever replacements.

We're now at the point where every single non-specialty bulb in the house is a CF.

Outside, the CF floodlights are controlled by timers and motion sensors, and stay on for minimal durations. Inside I try to keep unused lights off, an exercise that usually necessitates covertly following -- hiding in the overly-lit shadows-- behind my wife, turning off the lights she's left on (she's not quite as committed to the pursuit as I am).

Our refrigerator, clothes dryer (with moisture sensor ensuring it dries the minimal amount to achieve the job), and dishwasher (with cleanliness sensor, always run without the unnecessary dry cycle) are relative new models, consuming far less electricity than their predecessors.

We could probably save the Earth a little more if we didn't do one to two loads of dishes a day, and if we didn't wash a dozen loads of laundry a week, but hey, that's modern life with small children. These are luxuries of modern living that I'm going to clutch onto until the ocean is lapping at the door.

Our air conditioner is just about to be replaced with a high efficiency SEER 16+ unit, but even that won't make much of a dent given that we live in the Toronto area. While we have the occasional hot spell, during most of the summer you can be entirely comfortable just by intelligently opening and closing windows and shades at appropriate times (banking night time cold air can be very effective in this pursuit). This summer past I doubt we had the air conditioner on for more than a half dozen days. The summer before was far more taxing on the AC, but the extremely high heat was an exception...hopefully.

Our water heater is a natural gas unit, as is our furnace, the latter having a high-efficiency DC motor.

So where's the power going in our relatively small, suburban home?

Behold the power usage graph from a somewhat recent power bill.

Power Usage

The months (at the bottom of the graph) go from July 2004 to July 2006. The summer of 2005 was freakishly hot, and our son was a newborn at the time, so we used the A/C much more than normal.

On average I'd say we use about 22kWh per day during a non A/C day.

Too PC?

My main PC -- the one that I'd leave on pretty much around the clock -- is a rather dated affair (it's such a pain migrating to a new PC). Featuring an Athlon 3200+, 1GB RAM, a couple of relatively small hard drives, and an nvidia 6600GT video card, it's empirically relatively power efficient given that it survives quite happily on a rather anemic 300W power supply, in an era when many advice guides are pushing monster 450W+ units.

This PC -- the midtower alone -- uses 129W doing nothing of consequence, with only the idle thread counting cycles for fun, spiking to 140W when it's CPU saturated (such as running SETI@Home around the clock), jumping further to 165W when a demanding 3D application is running.

I often keep this PC on around the clock to allow me to access it remotely, and to make it immediately accessible when I have the need to jump on and do something. It is hardly uncommon in the technology industry to have an always-on household "server" of sorts.

Being kind (or unkind) and presuming it sits doing nothing, it's still eating through 3.096 kWh of power per day! Doing nothing. Here in Ontario that comes out to about $0.32 a day (given that the fully-priced incremental cost of electricity averages around $0.106 / kWh), but more important than the almost negligible run cost, it's a fair amount of resources being used perhaps unnecessarily.

To try to achieve a bit more conservation, I enabled Wake-On-LAN and started putting the PC in standby mode when I wasn't using it, sure that it was yielding great savings. Imagine my surprize when I discovered that the so-called standby mode still slurps 112W!

I thought I was saving the Earth, when actually I was just adding inconvenience for myself.

( I've since discovered that a quirk in XP had it not using the full ACPI features of my system, and have since started going to S3 standby, dropping the unused power consumption to a miserly 5W. This is the same power consumption the system uses when it's "off" )

Now add in the two 19" CRT monitors. I still use CRTs because they still work really well, and when purchased were high-end units, and still feature great display quality. I'm also realistic that the LCD power usage isn't nearly as good as often presumed, especially in the ultra-power backlight new units). Each of them uses 67W when displaying a black screen, peaking at 88W with a fully white screen (LCDs generally don't exhibit the same fluctuating power usage, as the backlight is generally on all the time at full brightness, though some new home theater LCD TVs can lower the brightness of the backlight to extend the dynamic light range for very dark scenes). A comparable LCD screen would use about 45-50W (yes, I've validated those numbers, and a 19" LCD really does use that much power. There is a going myth that LCDs are far more efficient than they really are).

Splitting the difference, that's 77W per monitor when not in a power save mode. 154W in displays, coupled with 129W+ of computer, coupled with a 5-10W speaker system. The printer/scanner uses marginal, infrequent power, so it isn't worth a mention.

Averaging out and very conservatively assuming that the computer gets 50 hours of active use per week, 50h*(135W+154W) = 14.45 kWh / week, otherwise acting as a listening server (118h * 129W) = 15.22 kWh / week, that accounts for a total of 29.67 kWh per week, or about 4.2 kWh per day.

19% of our power consumption going to one PC! This isn't even my primary PC, but instead is more of the star around which various other PCs and laptops revolve, a deployment model that is appearing in many tech-savvy households.

Add to that the 5W used by the speakers, the 7W used by the switch, the 10W used by the router, all on around the clock, and this stuff starts to really add up (another 0.5 kWh per day -- almost 3% of our total daily consumption -- going to a couple of unnoticed little devices).

20 years ago a home PC was a Commodore 64 or an Atari 800, or if you were wealthy an Atari ST or just released Amiga. Those personal computers of the day used around the same amount of power that my lowly router uses today (itself a little computer running Linux). Now PCs are power hungry maniacs, and we often have households with multiple PCs, several on around the clock.

Over the past decade the power consumption of home PCs has increased significantly, with brief retreats as processor generatures mature and see efficiency improvements. Game entertainment units have seen the same power-hungry march, with new units featuring massive external power bricks, often featuring frequent heat-related crashes.

The Home Entertainment Megaplex

How about watching television? Surely we've made great strides in television watching.

P3 Kill A Watt

20 years ago you'd huddle around the 23" color television, and that was the entirety of your "home theater". Nowadays watching television often entails powering up the PVR, the receiver, and the big screen television. Our own television setup is extremely modest by regional standards, and is comprised of a standard 5.1 receiver, PVR, DVD player, and 27" LCD television. I'm going to simplify and ignore the media PC.

Powering up the units, we see that the receiver/audio amplifier takes 51W, regardless of output (if you really crank it you can get it to start to spike, however the difference between loud and really loud is only a W or two of power output, going to ear-piercing when you exceed that). Turning on the PVR we find that it takes 42W. Actually it takes 42W regardless of whether it's "on" or not, as it still sits there chuttering its hard drive and thinking about world domination when it's supposedly off. Powering on the TV, you can add another 110W, despite the fact that this is a "low-power" LCD unit, with a much smaller backlight than many of the larger, ultra-high-contrast units available.

203W just to watch television.

Say that it's on for 36 hours a week (like most families, it's often on even when unwatched, especially given some of the great digital music channels our cable provider streams out), and "off" for the other 132 hours, that means that it's consuming about 36h * (51W+42W+110W) + 132h * (42W...remember that always siphoning power PVR) = 7.3 kWh + 5.5 kWh = 12.8 kWh, or about 1.8 kWh per day. Another 9% of our power usage going to watching television, despite us theoretically having a lower power setup.

Our television power usage would be magnitudes worse if we had a large screen plasma.

Think ahead a bit, and contemplate what the endless decline in LCD prices will result in: it seems obvious that any power efficiency gains of LCDs over classic CRTs -- an efficiency improvement that's already been dwarfed by the appetite of accessory devices in a normal home theater -- will get wiped out as we move to larger and larger displays, with monster backlights. 

It is entirely foreseeable that the near future will see a living room with multiple screens (similar to dual or tri-monitor computer setups that you see today).

Discretionary Power Usage

29% of our entire household power usage going to an infrequently used PC and the pursuit of television.

It hardly seems like gadgets are quite as innocent as Mr. Fry made them out to be. I don't even need to add up the millions of tiny nibbles by battery chargers, accessory devices, and so on, to realize that they are a noticeable, discretionary contributor to the demand on the grid.

Fire up a PS3 on a big screen plasma and things would really get ugly.

Worse still, predications are that it's only going to get worse. The US DOE predicts that "Electricity consumption for home electronics, particularly for color TVs and computer equipment, is also forecast to grow significantly over the next two decades. EIA projects electricity consumption to grow 3.5 percent annually for color TVs and computer equipment through 2025, to more than double the level of consumption in 2003."

Ouch!

The Bright -- Or Rather Hot -- Side of Power Gluttony

Unless you're shining lasers at alien planets, all of that wasted energy is realized as heat: The hotter the device, the more electricity it's consuming (and vice versa), regardless of whether the juice went directly and intentionally to heat -- as in a stove -- or as an unavoidable side effect of some other pursuit -- such as analyzing radio signals looking for alien chatter on your home PC (perhaps we should combine goals and the SETI@Home people can distribute new oven burners comprised of a grid of networked multicore processors. Win/Win!).

If you live in a hot climate, or in a moderate climate during heat spells, all of that heat is a bad thing: It means that it's doubly wasteful, as it was wasted energy in the first place, and then is additional load on the overtaxed A/C. We've all experienced walking into a room hosting a PC rig to find it unbearably hot, this computational space heater spilling out endless warmth while the rest of the house is cool.

If you live in a colder climate, however, that heat actually contributes to household heating, reducing the load on the main heating supply. If you use electric heat in your household, then all of the wasteful appliances really aren't "wasting" during months when you need to heat your home, and that PVR is just as efficient at turning 42W into heat as your baseboard would be with the same power. This presumes that the heat isn't excessive, and is where you want it.

The point is that it isn't all loss in all situations. I can say definitively that since we've put more effort into being energy efficient in hopes of saving the planet for future generations, our furnace comes on quite a bit more. Of course natural gas and a high efficiency furnace yield more BTUs per dollar than electricity, but it does undermine the savings just a bit, and it is a pragmatic consideration to keep in mind.

Vista the Power Hog?

As mentioned at the outset, I originally ordered the Kill A Watt to get some solid numbers on whether Vista increases the power usage of a normal PC over its predecessor.

It doesn't.

The measured difference between doing general desktop tasks on Vista Ultimate running with Aero Glass, and Windows 2003 running on the same hardware, was negligible. I could cause power spikes if making unreasonable demands of some of the new Vista 3D features, but could only cause a measurable difference doing something ridiculous with the intention of causing a spike.

Having said that, unsurprizingly some of the 3D screensavers included with Vista cause a 20W power consumption increase as the graphics hardware is enlisted to help draw some spinning 3D text on the screen (years back I worked at a small engineering shop during a period when we proudly went from using someone's desktop as the "server", upgrading to a real, albeit low-end, Dell server. Frequently the server would seem to start choking, taking forever to perform simple tasks like transferring a file. The "sysadmin" would go up and take a look at the physical box -- Windows had no real remote administration tools at the time -- and declare that everything was fine. It did seem to be fixed, but then twenty minutes later the sluggish response returned yet again. The problem, as you probably guessed, was that the machine was configured to display a 3D text screensaver when not in use: given that the machine didn't even have hardware 3D acceleration, the CPU was saturating doing transform and lighting computations for a screen saver for a box sitting in a tiny closet unseen).

Friday, December 29 2006

On Blogging

Hearing the word "blog" makes me vomit just a little in the back of my mouth.

Having real people in the meat world comment to me about my "blog" leaves me feeling just a little embarrassed and uneasy: There's just something about the pompous self-importance and imagined sense of influence of the whole "blogosphere", coupled with the cacophony of useless chatter coming from some dubious participants, that makes it a group that I really don't feel entirely comfortable being associated with.

Many blogs (not including yours, of course) feature predominately insipid ramblings, with space-filling content of limited or no informational value. Many of their authors have no particular skill or unique message in the realm that they focus on.

Bloggers themselves often subscribe to hundreds of blogs just to have content to blog about (I'd wager that RSS readers are overwhelmingly used by RSS publishers...), in a giant circular linkfest, all saying the same things in unison. The more accessible the source, the easier it is to "contribute" by making some ancillary comment about how the shed should have a red stripe instead of a blue stripe, the more subscribers, the more references.

Don't think I'm excluding this very blog from these criticisms. I'm very critical of my own works.

Among the "A-list" bloggers, many are the Paris Hiltons of the technology world -- readers (a fanbase primarily consisting of B...Z-list bloggers, as mentioned earlier. Among the general population, especially people and groups of influence, even the largest bloggers have zero influence or namespace) follow them, and link to them, and talk about them...because people follow them, link to them, and talk about them.

People anxiously watch their moves because they don't want to miss anything that "everyone else" is watching. It really is extraordinary.

I've never been discrete about my feelings of this topic: I started this blog by indicating my contempt for blogs in general, commenting that I viewed this more as a mature content management system. It was a halfway point between formal writing and informal writing, where I could "own" my content, easily posting and altering information while making it available for search engines (and perhaps playing the system a bit to ensure that I maintain and gain search engine credibility, which I've gained in buckets).

I don't use an RSS reader, and from that obviously I don't subscribe to any blogs.

Now and then I do browse around some of the few blogs that feature occasionally insightful or interesting or thought-provoking content, or from authors who have inside information (e.g. developers inside a corporation whose software or tools I depend upon, sharing a unique perspective that can be valuable for me), and often traipse back through the history a bit, gaining knowledge and perspective, just as I did before they were called blogs and were just papers and articles that people posted online.

Often these blog-diving journeys begin when one of their posts make it atop the meme or news sites. I got linked on Slashdot yesterday, and of the ten thousand or so visitors referred over, a very large percentage actually felt the desire to go browsing through historical entries, which is something that always makes me feel that I've "succeeded" in my quest a bit.

My opinions on the topic of blogs have hardly endeared me into the blogging community. Even those who fully agree with me are naturally wary of linking this way, lest they play into exactly what I criticize. I don't have a "blog roll", and when I do link to other blogs, which is infrequent, I usually tag it with a rel=nofollow just to be sure to indicate that I'm not giving any link love, and I'm certainly not looking for cheap reciprocity. If my goal was inbound links from other bloggers -- the ultimate goal of many bloggers -- this would be the absolutely worst way to achieve it.

I am not a blogger's blogger.

All of this isn't to say that blogs -- even those dedicated to documenting the most banal of everyday events -- don't have a "right" to exist, or even a very useful purpose. The more information on the net the better, and everyone has every right, ability, and encouragement to post anything and everything online. There are a lot of extraordinary blogs out there, amongst the noise.

The beauty of the internet is that if you don't want to read it, no one is forcing you to. Even if I don't like some blogs, I have no position or right or even moral opening to demand that the person cease its production.

Yet this whole "industry" needs a serious kick in the nads, and a serious correction of perspective. 10,000 readers would give one a significant position in the blogosphere, yet it's less readers than the two-bit journalist whiling away their career writing for the local newspaper in the tiny industrial town I grew up in gets every single day.

All of that was initiated by some of the grandiose pro-blog comments I came across while reading about the incident described in the next section, and some of the anti-blog commentary that resulted (yes, if you read the above with an open mind you will discover that it actually exonerates blogs from some of the criticism they've received).

On Ethics

A bit of a controversy kicked up recently over Microsoft (or its agents) giving out freebie high-end laptops with "no strings attached" to a variety of bloggers (some of whom have been identified, others not).

They emailed some bloggers, covering the gamut of popularity, informing them that they can receive a spanking new $2300USD+ laptop, pre-loaded with Windows Vista. After they were done "reviewing" it -- wink wink -- they could choose to return it, give it away, or keep it (there were variations of the email -- apparently they haven't mastered mail-merge technology -- one implying that the recipient could "borrow" it indefinitely, which is a bit of tax weaseling given that legally the sender was required to log the recipient's tax information of this valuable, taxable gift, and the receiver is to pay the appropriate taxes).

Several of the recipients of this Laptop Loot immediately posted about their great fortune, coming clean about the source, but claiming that somehow they were immune to the long proven and entrenched law of reciprocity. Their supposed objectivity was completely unswayed, we were told.

Other recipients were quiet about the whole affair, or worse made posts indicating that they just "traded-in" for the spanky new laptop. Another claimed that it came from a different source than actuality (just got a laptop from Microsoft and AMD? Say it came courtesy of Acer!)

Critics and pundits have taken up arms on both sides.

Defenders of the bloggers have almost universally fallen to the defense that those who throw stones are just jealous, which is a convenient, albeit very juvenile, retort to virtually any criticism. The alternate defense being that everyone is unethical in every industry, so what's the problem? It's a race to the bottom, baby, so grab whatever you can en route!

Critics have largely exaggerated the whole affair, declaring that the laptop recipients are worse than Hitler. Or something like that.

Few (if any) of the thus identified recipients have any hardware review credibility or experience worth noting, so their perception of the laptop itself is laughably useless (already we've seen some inane, content-free "reviews" appearing), at most restricted to valuable comments like "sure is pretty" or "seems fast". To counter this, some recipients have claimed that the laptop was justified because it allows them to review Vista without all of the trouble and difficulty of actually installing the operating system (or going through the Herculean effort of returning the supposed review unit), clearly indicating their experience level (low to none), not to mention their complete lack of dedication in exerting any effort at all in the pursuit of bringing useful content to their readers. If it isn't as easy as loading their RSS reader and punching in some opinions -- sort of like this entry! -- then they can't be bothered.

Deliver it on a platter, please.

Why do people read these people again? I've had various builds of Vista, and now the gold version, in virtual machines, and on an actual PC, for a good amount of time -- and I'm hardly interested in sitting on the razor edge of Microsoft technology, and surely was long beaten to the punch by pro-Microsoft cheerleaders -- as have many tens (hundreds?) of thousands of people who actually know what they're doing, and who aren't crippled with laziness. I have no inside track at Microsoft -- I'm quite antagonistic about them -- yet somehow I manage.

It runs very well, with all features enabled, on the middle to low-end PC I have it on, eliminating any (counterproductive) claim that only a high-end laptop would suffice.

All in all the whole thing is a lesson in how easily people can be bought, and how cynical one has to be about the opinions they find (and perhaps how meaningless those opinions really are), even among the pure and unadulterated blogging community (which, we are told, is supposed to be a superior alternative to the corrupt mainstream media). It is human nature to reciprocate favours, such as a $2300 laptop, but worse still is the inevitable invisible hand effect: If you want to keep this good stuff coming, you know what to do. Bring on the love, baby!

More disturbing is the entirely corrupt sense of ethics espoused by many of their supporters.

Nonetheless, I don't blame Microsoft. They're hardly alone in doing something like this (and like a mistress and a strayed husband -- why blame the mistress when she isn't the one that's married? Why blame Microsoft when they're not the one trying to present an impartial, objective opinion? Microsoft is just trying to sell a product.)

There's an extraordinarily good essay on this topic from a former magazine writer, sharing many parallels with the current situation. He details how the automotive industry used the same sort of coercion to get them to convince you that the new car is a lifestyle instead of just 4 wheels and an engine. He describes the soul-selling corruption that he witnessed among his peers, at the behest of Volvo (although it was hardly the only guilty company). The essay does nothing to sour my opinion of Volvo -- the Microsoft in that case -- but it does make me feel very negatively towards the supposed reviewers who beg their readers' trust. Who are empowered only by their readers' trust (otherwise Volvo wouldn't have wasted the money buying their voices).

I originally found that link from the superb The Submarine essay by Paul Graham.

I also highly recommend the superb book Influence: The Psychology of Persuasion. I was originally hooked onto that book by Spolsky several years back, and found it extraordinarily insightful about some of the techniques "compliance practitioners" use to get people (such as low level bloggers) to do their bidding.

On Bias

No one is unbiased. Even something like Visual Studio committing hari kari, taking some work out with it, can make me anti-Microsoft in completely unrelated matters for a period, often unfairly. On the flip side, if their tools help me achieve a particular result with gusto, I might be prone to suddenly thinking the brown Zune with "squirt" technology looks like a mighty nice MP3 player.

This is the case with all of us. We're human.

I've written about bias and blogs before, so I won't retread all of that.

One thing that I marvel at, however, is seeing that some of the lucky laptop recipients have explained that they can't be bought by Microsoft, because they I(HEART)Microsoft already: Their position is already so pro-Microsoft they couldn't possibly be swayed further. They're gonna love it anyways!

Again, I have to ask: Who reads the postings of that sort of person? I'm deadly serious. Why would you read the opinion of someone who would declare (explicitly or implicitly) such a confused outlook on reality? I share the same feeling about those who can't possibly see any good in anything Microsoft does (or big oil, or Republicans, or the UN, or whatever).

If you are in technology and you think this is teams that you are playing for (e.g. Linux or Microsoft or Apple), and you don't directly work for and get paid by one of the aforementioned teams, then you've taken a seriously wrong path somewhere. If you are getting paid, then you'd better be wearing a "Hi, my name is and I work for " nametag, and you'd better realize how entirely impossible it is for you to be any more than superficially unbiased. And no, softball criticisms aren't going to fool us into thinking otherwise.

If you aren't getting paid, then you should NEVER declare your fealty to a technology camp, or fool yourself into thinking that you have to pick. You don't. Don't do yourself, your employer, your clients, and your users a tremendous disservice by myopically aligning yourself with interests that don't necessarily correlate with your own.

  Blogging   IT 

Earlier EntriesLater Entries

Dennis Forbes