• images
  • July 11, 2015

I just finished my first week as a full stack web developer. It was awesome, mostly because of the great people I get to work with, but also because there were so many new things to learn. Developing on a Mac, using Git and Github for source control, PivotalTracker for scrum management, Slack for chatting with everyone whether they are in the office or not, oh yeah and Google Apps for everything else. Aside from the technology change there is also a culture change. Where at Microsoft, I worked in my own private office and everyone used email to communicate with everyone, even if they were in the office next door. Here, the whole company is in one big room and so you just look up and chat with whoever or maybe they slide their chair (or roll their yoga ball for the younger employees) over and work in a spontaneous group. So what did I learn in my first week?

  • I learned many keyboard shortcuts for Gmail, Atom & iTerm.
  • I learned tons of markdown and the differences in how it is parsed and displayed in Atom and on Github.
  • I learned how to archive repos from Github and connect to file servers on Macs.
  • I learned how to identify merged branches on Git.
  • I learned how to identify unmerged branches on Git and create bundles of all the changes in a branch.
  • I learned how to do Pull Requests and Code Reviews on Github.
  • I learned where the /etc/hosts file is on Windows and why I’d want to use it.
  • Finally, I learned about the .gitattributes file, but that deserves its own post.
  • images
  • February 3, 2015

The following are two things you can try when Windows Update fails with a mysterious error such as 0x80240004

Fix #1 – Rename software distribution folder.

  1. Go to the MoGo or the Start Menu and find cmd -> right click on cmd -> Run as administrator and run the following command:
  2. net stop wuauserv

  3. Click Run, type: %windir% and press Enter.
  4. In the opened window, rename the folder SoftwareDistribution to SoftwareDistributionold.123 Close the window.
  5. Go back to the cmd window and run the following command:
  6. net start wuauserv

  7. Now perform the windows update and check the issue, if the issue persists please follow the below,

Fix #2 – Hack the registry

  1. Go to the MoGo or the Start Menu and find regedit.exe and run it
  2. Navigate to HKEY_LOCAL_MACHINE\Software\Polocies\Microsoft\Windows\WindowsUpdate\AU
  3. Change the value of UseWUServer from 1 to 0.
  4. Now perform the windows update and hopefully it will work.
  • images
  • September 28, 2012

So we’re in the car, and Hannah asks for the radio. Mom says, “We can sing: La, la, lala, la!” Dad cuts in with, “La, la, lala la la, la lalah la la lah!” Cue “Ah, come on!” from me, playing along.

Mom turns on the radio. It’s Sail. Final bridge to chorus. “La la la lalah, la la la lalah, oh…”

Here it comes…

This time for real…


We had an awesome week out at Mayfield Lake. We managed to record some of the action and I used MovieMaker to put together a summary video. A good time was had by all and we plan on making this an annual event.

  • images
  • July 30, 2012

Hey, it’s Hannah! I’m chillin’ at the comp right now ’cause I just finished my school for the day and all my chores.

Today’s been fun because I went to a group called Handmade Blessings at my grandma’s church today (something I’ve been doing for a while now.) and one lady brought an awesome lemony-cake-thing for a snack. I had, like, five slices. šŸ˜€ But it was kinda hard today because my arms are sore from tubing yesterday (see next paragraph) and the ladies always ask me to do stuff and carry things for them. As soon as I got there, there was a problem with the coffee machine (’cause something just had to go wrong :P) and I had to pick it up and move stuff around. Then I had to look for the coffee grounds; and when I finally finished and brought it back to the crafting room, Helen tried to get coffee and nothing came out. I had left the stupid pump out. *facepalm* Then I helped Marlis carry some stuff into the attic and Julie needed help with the birdhouses. Now my arms are even more sore. *heavy sigh*

Now to explain why my arms are sore. Hehehehe!! Yesterday we took the boat out on Lake Sammamish and hooked theĀ inner tubeĀ up to it. I was the first one on, by popular vote. As I sat there, floating away from the boat, I began to doubt whether or not this was going to be any fun. Then mom sped up… ’nuff said. My mom is VICIOUSĀ when she drives the boat. She has this whiplash technique that is very painful but so much fun!!! She turns a hard right and you go flying off the left side of the boat, then she turns left and you whip the other way and gain so much speed that by the time you’re on the right side, the inner tube starts flipping and sends you crashing into the water. Sorry no one got any pics. :(

We must do this again next weekend!!!

To great videos from Microsoft that demonstrate a future where information is at your finger tips.

And just in case you are inclined to be skeptical, consider a similar video from 1993

Ahhhhh, I spent thrity minutes scratching my head over this before a a coworker pointed out an easy solution my problem. Since most of my time was spent searching the web for a possible solution without finding any, I decided to post this entry in hopes that a search engine or two might pick it up and help someone else who doesn’t have awesome coworkers walk past their office on a regular basis.

I just used Visual Studio 2010 to create an ATL project and added an object to it and added a method to the object. This is all the stuff you see on stage at every PDC. CodeProject has a tutorial very similar to what I did. Anyway I write a quick 2 line test.js file that uses ActiveXObject to create it and call the method and I get the following error (0x800A01AD).

test.js(1, 1) Microsoft JScript runtime error: Automation server can’t create object

So what did I do wrong. Turns out, nothing except trying to run the test.js file from a 64 bit command console. All I had to do to get it working the way I expected was launch the 32 bit command console (commonly found at C:\Windows\SysWOW64\cmd.exe) and run it from there.

  • images
  • December 3, 2010

Another cool video on YouTube. This one contains some very innovative use of text.

As Mr. Crockford is removing JSLint‘s support for WSH siting other community improvements, I thought I would post one such improvement. To create s WSH version of JSLint follow these easy steps:

1. Paste the following code into Notepad or your favorite editor and save as wsh.js.

(function () {
  var i, j, e, filename, file, source, fso = new ActiveXObject("Scripting.FileSystemObject");
  if (WScript.Arguments.length > 0) {
    for (i = 0; i < WScript.Arguments.length; i += 1) {
      filename = WScript.Arguments(i);
      if (fso.FileExists(filename)) {
        file = fso.OpenTextFile(filename, 1, false, -2);
        source = file.ReadAll()
          .replace(/\r\n/g, '\n')
          .replace(/\r/g, '\n')
        if (!JSLINT(source, {})) {
          for(j = 0; j < JSLINT.errors.length; j += 1) {
            e = JSLINT.errors[j];
            if (e && e.line) {
              WScript.StdErr.WriteLine(filename + '(' + e.line + ') : ' + e.reason);
        } else {
      } else {
        WScript.StdErr.WriteLine(filename + ' : File Not Found');
  } else {
    WScript.StdOut.WriteLine('jslint - Windows Scripting front end for JSLint');
    WScript.StdOut.WriteLine('Usage: jslint filename [filename] ...');

Update: The code above includes a fix suggested by Marina Schiff on the jslint Yahoo group after Mr. Crockford removed a similar workaround from jslint.

2. Download the latest version of fulljslint.js from Mr. Crockford's GITHUB.

3. Concatenate the two files into one file named jslint.js (You can do this any way you want but the following DOS command will work if you run it from the directory that contains both files)

copy fulljslint.js+wsh.js jslint.js

4. To ease typing, paste the following command into jslint.cmd

@cscript "C:\PATH TO YOUR TOOLS DIRECTORY\jslint.js" //Nologo %*

Now to check foobar.js just run the following command

jslint foobar.js

Since I am an avid Source Insight user, I hooked the above up to a "compile" (F5) key and use si's output parser to quickly take me to the lines containing lint.