There was an error in this gadget

Wednesday, February 29, 2012

Details matter and you're responsible for them! But not at Verizon.

Details and quality matter.  If you don't pay attention to them you'll build terrible software.   It's your job as a team lead to drive quality.  If you think that modern software developers will not commit obvious mistakes, I beg to differ.

Here's an example of what I mean.  Verizon reports my data usage as 1024 MB/month.  This is clearly wrong because there's no way I use exactly 2^10 MB (or 1GB) every month.  What's more, they report my allowance in MB as (2) when it's actually 2GB. 


This table is wrong because:
  • The data are wrong.
  • The scales are wrong - not out of scale, but literally wrong.
  • They have duplicated data (repeating total data used) for no clear reason.
  • The alignment of the numbers is off - you put the ".00" on the right, so that people can compare big numbers by length.
  • There's too much precision.  Do I really need six significant digits on my data usage?  No.  Remove the decimals at least.
  • All of the fonts are bold (save for the repeated data, which shouldn't be there) for no clear reason.

I'm not sure who's responsible for shipping this - but it clearly should never have been released.  It's functionally broken and broken at a design level.

The Verizon Wireless Account Analysis chart is no better:



This chart is a disaster and an example of how you should NOT build a chart if you wish to communicate clearly.
  • The month label has exactly the same font treatment as the months - so it reads as "January month,"  rather than a label.   
  • Rather than putting the scale on the left, by Data (in MB) they put it in big bold font on the RHS.
  • They put the title in a Tab, when there's clearly no other tab to select. 
  • They've left huge amounts of whitespace by putting the legend on the bottom instead of top right, like most legends.  That's a nit, but still.
  • Why is this weird window size like this, so that there's a huge gray border and also tons of whitespace beside the chart?
  • Why did you capitalize megabytes?  They are not a proper noun, they are a unit of measure, like inches.
I suppose I should not expect much from a company to which I pay only $xxx per month - but a reasonable team lead could identify and fix these problems in just a few minutes.

Things like this make me want to short Verizon, but I think their fiber, wireless, and cable operations are better aligned than their competitors, so I suppose I have to forgive these painful mistakes.

Tuesday, February 28, 2012

What belongs in the book?

I know a lot of great product, program, project, and engineering managers.  Team Leads, as it were.  Collectively, you're all a lot smarter than me.  Frankly, you're probably a lot smarter than me individually, but we won't dwell on that.  So what does the book REALLY need to cover?  Here's a link to the table of contents - let me know what's missing!

Monday, February 27, 2012

Macs are better than PCs now.  I say this not because the screens on common Macs are beautiful or because the form factor of the MacBook Pro and Air are fantastic.  Rather, it's because they're better corporate machines.
  • They're more secure - filevault, a linux kernel, and generally small virus surface area all help.
  • They're way more stable - see above RE: linux kernel vs Windows.
  • The vast majority of your work is probably done in a browser now, or at least should be, rendering desktop apps obsolete.  Sure, things like Photoshop or Omnigraffle are still best running natively, but Omnigraffle (the best wireframe/flowcharting program out there) is only available on Mac.
  • OSX is easier to use for common users than Windows - and that means lower support costs.
  • They're now more manageable in the Enterprise.
Manageability is pretty new.  Adding to a suite of already released open-source tools, Google recently released "Cauliflower Vest," which enables admins to unencrypt encrypted disks in a secure way.  See here:

http://google-opensource.blogspot.com/2012/02/cauliflower-vest-end-to-end-os-x.html

If you're running a laptop without an encrypted disk, throw it out, encrypt it, or switch to a Chromebook (http://www.google.com/chromebook/) so no sensitive data is stored locally.  As a business user, you can't afford to leave your laptop in a coffee shop or airplane with an unencrypted drive.  It's just far too easy for blackhats to read your bits.

Now that Macs are easily and powerfully managed, and most software is in the cloud, there really are no more excuses.

Also check out Simian, which enables hosted software deployment for Macs.  Open sourced at  http://code.google.com/p/simian/

Friday, February 24, 2012

Showing tweets on Google Sites - via gadget hack

It's super-easy to cobble together arbitrary JavaScript gadgets in Sites now. 
  1. Create a text file "foo.xml" on your local computer. 
  2. Add some wrapper XML into that file that looks like:
    <?xml version="1.0" encoding="UTF-8" ?>
    <Module>
    <ModulePrefs title="Custom Gadget" />
    <Content type="html"><![CDATA[
    //your stuff goes here!
    ]]></Content>
    </Module>
  3. Replace the "//your stuff goes here" with the JavaScript you want.  In my case, I pulled the content from my Twitter gadget on this blog.
  4. In your Google Site, upload the file as an attachment.
  5. On the Sites page in which you want your gadget to show, create a new gadget from a URL, where the URL is the location of your file.  In other words, something like https://sites.google.com/a/domain.com/foo.xml
Done - works great!

If you're really clever you'll quickly discover that building an interface to allow you to customize that gadget is also super simple. 

But why bother if it's just for you?  Do the simplest thing that possibly works if you want to ship!

- Chris.