# Tuesday, November 01, 2011

Okay, well maybe not everyone, but most of us.  For something a lot of us spend so much time doing these days, we don’t really seem to question how we do it.  There are the standard myths like that the standard QWERTY layout was to slow us down.  In truth, however, it was adopted from one particular brand of typewriter, the Remington No. 2, in 1878.  The original design evolved largely because of jams of the internal typing arms in early models.  I’ll save you the rest of the snooze inducing details of the history lesson.  You can check it out here, if you’re that interested. 

Since then, that old, bad, layout has just sort of settled in, like a cantankerous mother-in-law that’s come to live with you.  Then in 1936, along came Dr. Dvorak, with a new layout to make us all type at warp speed, reduce errors and protect kittens from climbing trees.  Check it out:

Dr. Dvorak studied how people type to optimize the behavior.  Notice all the popular kids are located on the home row: A, E, T, S, etc.  This lets users spend around 70% of the time on the home row.  Also, all the vowels are on the left side and the popular consonants are on the right, so the user is usually alternating right and left.  You can read the rest of the details here.

So what, you say?  Every keyboard and operating system is designed to use QWERTY and we are all taught to type that way, unless you weren’t taught at all and home grew hunt and peck style (I’m looking at you, Andre).  Some people claim to be pretty fast at hunt and peck, but they still need to look at the keyboard and are slower than they could be.  For comparison, here is the finals at the 2010 Typing Championship.  The winner won with 163 wpm.  Not too shabby by any means.  However, compare that to the Guinness World Record Holder, Barbara Blackburn, with a top speed of 212 wpm.  She also maintained 150 wpm for over 50 minutes straight!!!!  That’s right, granny could kick the pants off of the current fastest competitive typists, due in large part to the Dvorak keyboard.  The 2010 champion, Sean Wrona, even admits that Dvorak and another layout known as Colemak are better, but he seems afraid to take the plunge and switch: 
“I am frequently asked which keyboard layout I use. I have only ever used the traditional QWERTY layout. I recognize that Dvorak and Colemak may be better on the hands, but it would be too much of a loss of speed in my case to justify switching.” - http://seanwrona.com/typing.html

The reason I am rambling about all of this is because I have decided to take the plunge and switch to Dvorak.  I learned typing in a high school class and have been typing okayish with QWERTY ever since.  However, I find QWERTY kind of annoying and for something I spend about 8-9 hours a day doing, I’d like to do it in the best possible way.  I’ve got my Dvorak stickers, and I will be switching all of my keyboards at once, and spending 15-30 minutes a night doing typing lessons at keybr.com.  Windows, mac (not that I have one), and even android and jailbroken iphones all have Dvorak keyboard layouts available.  For a comparison, I have tested my current speed with QWERTY.  After 7:44 on keybr.com, I got an average speed of 50 words per minute, and a top speed of 62.  After I feel comfotable with Dvorak, I will be posting my new speeds, which will hopefully be a bit better.

Need any more convincing?  Here are 7 reasons to make the switch.

Tuesday, November 01, 2011 2:42:51 AM (GMT Standard Time, UTC+00:00)
# Friday, September 09, 2011

I'm a big Remember the Milk (RTM) fan.  I love the power of the lists, tagging, locations, etc.  I believe it has a lot more potential as an easy to use, powerful, tasklist.  There are still several annoyances and limitations to it, however.  One of the biggest is the level of effort required to get a task into RTM.  We all have those AHA moments, "ooh!  I need to..x", and one of the main tenants of Getting Things Done is to "empty your head".  The harder that is to do, though, the less likely anyone is to jot down an idea when they think of it.  That's why I carry a voice recorder in my car and why there are various products to help us facilitate this perpetual mind dump.  So, along those lines, I would like to share a solution I've found to submit a task to RTM in under 5 seconds, depending on how fast you type.  If your typing isn't quite up to snuff, well....that's between you and Mavis Beacon. 

For this project, you will need

Okay, soooo, the idea here is that RTM users have an email address that they can send messages to and those will show up in their RTM inboxen.  Add to that, that RTM has a smartadd syntax so you can assign the list, tags, location, due date, etc in one pass.  So the idea here is that you have a command line statement that will send an email to your RTM account, using the supplied argument as your subject.  So for this I am using Slickrun because it so fast and easy, to trigger Thunderbird to create an email and send it to RTM for me.

Let's get prepped:

  1. Install Thunderbird and slickrun
  2. Pick your favorite shortcut key combo to bring focus to slickrun.  I think the default is WinKey+Q or WinKey+W.  I prefer WinKey+A.
  3. Hit your key combo or use your mouse if you prefer the scenic route.
  4. type "add" (without the quotes) and hit enter.  A new magic word form will popup.
  5. Fill out the form with the following arguments, using your actual RTM email

Filename or URL

MagicWord (use whatever you want here, I like rtm)

rtm

"C:\Program Files (x86)\Mozilla Thunderbird\thunderbird"

Parameters: (copy that text verbatim, including the quotes)

-compose "to='dan.xyz@rmilk.com',subject='

Okay, let's skip ahead to using this little gem:

Simply hit your slickrun key combo, type your magic word, then enter your RTM task using smartadd syntax and make sure to add a closing quote and the end of it (to match the opening quote in the command argument)

Hit Enter

TBird will open a new window.  Hit send and go about your day.  It may take a few seconds for the window to disappear.  Feel free to minimize it (or stare at it if you're easily entertained).

This will also work for other systems that have email addresses you can send to, such as evernote.  Here's an example of the command line for evernote.  Make sure to grab your actual email address out of evernote settings of course.

-compose "to='dan.abc@m.evernote.com',subject='

Enjoy!  Let me know if you found this helpful or not.

Friday, September 09, 2011 4:51:42 AM (GMT Daylight Time, UTC+01:00)
# Saturday, July 30, 2011

I definitely fell off the wagon a bit.  I was doing pretty well through June.  I had a personal record 5K time  and I got down 214 lbs.  In July I somehow fell out of my groove.  I put all my weight back on and my cardio has definitely regressed.  I think taking a vacation in late June combined with a few other factors messed me up.  Mostly, I wasn’t sleeping enough so I couldn’t make my morning working.  I still wanted to work out, but I wasn’t keen on strolling into work at 11:00am.   That’s enough stalling, now onto my numbers:

Current State of Affairs:

Height: 5’11”
weight: 227

P90X Fit Test

Test Day 1 Day 90 (July 17th)
0. Resting Heart Rate 82 bpm 55 bpm
1. Pull Ups 0 (used to be 4) 1
2. Veritical Leap (Earth gravity) 16 inches (used to be 22) skipped (lost yard stick)
3. Push Ups (max til failure) 35 42
4. Toe Touch +3.5 inches (that’s right, I can touch my toes!) +5.0 inches
5. Wall Squat 179 seconds (aka 2:59) 185 seconds (3:05)
6. Bicep Curls (max til failure, no time) 20 reps, 25 lbs 23 reps, 25 lbs
7. In & Outs (ab exercise, max til failure) 35 39
8. Heart Rate Maximizer 0 min: 163 bpm
1 min: 124 bpm
2 min: 109 bpm
3 min: 96 bpm
4 min: 97 bpm
0 min: 162bpm
1 min: 116 bpm
2 min: 104 bpm
3 min: 99 bpm
4 min: 93 bpm

As you can see, I made slight strength and cardio gains.  If I hadn’t fallen off the wagon 2/3 the way through, I’d have slight weightloss gains to match.

It’s a journey, not a one time photo shoot.  So I’m going to pick myself up and get back in it.  I did a full P90X workout day for the first time in a few weeks.  I’m gonna do another P90X/Insanity round for the next 30 days, combined with clean eating, then its on to Asylum for me.

Saturday, July 30, 2011 6:56:44 PM (GMT Daylight Time, UTC+01:00)
# Friday, June 10, 2011

I just survived a huge ordeal with setting up MVC 3 to play nicely on IIS 6, so I thought I’d blog about it to make sure nobody else endures this mess.  I’ll go through these steps in order so you can roll through this issue as fast as possible.  I’ll save my long winded drivel til the end.

  1. I assume you’ve got VS 2010 SP1 on your dev box, MSBuild and .NET 4.0 on your build box.
  2. Install MVC 3 on your dev web server, whether that’s local or remote or use one that has it if you’re paying for hosting.
  3. If you cannot install MVC 3 on your target web server, you can do a bin deployment as Scott Hanselmen explains, but that is really only useful for small projects when you’re deploying from your local dev machine.  Some people posted examples of how to setup MSBuild with a task CollectFilesFrom_binDeployableAssemblies, but the examples were either incomplete or I was too incompetent to figure them out, so I setup a simple copy step to make this happen (note – you’ll have to make msbuild variables for values like BinDeployableSource):
  4. <Copy SourceFiles="@(BinDeployableSource)"
            DestinationFolder="$(SourcePath)\$(WebProjectBin)"
            SkipUnchangedFiles="true" />

  5. Now here’s the kicker and what was really killing me.  You need the web.config from inside the Views folder!  My robocopy deployment scripts wasn’t setup to include web.config’s from inside the Views folder.  I have to credit Andrew Barber with figuring this out.

My setup:  I’ve got VS2010 on a dev box.  We’re using SVN and its kicking off a CI build on our build server, which then uses robocopy to deploy our web assets out to the dev web server.  If you’re having any issues fixing this, please comment on here or contact me and I’ll try to help you out.

Friday, June 10, 2011 10:11:27 PM (GMT Daylight Time, UTC+01:00)