by david

Geocoding addresses using Google Maps and Google Docs

8:33 am in Uncategorized by david

Google docs just turned the corner for me, from being ‘a convenient trimmed down online version’ to being ‘an innovative online version packed with features’.  I am quite impressed, and hope this is the first of many enhancements to come that make life (and the world) that much easier.

Backstory: I am having a wedding in the UK, and expecting quite a number of out of town guests to attend.  Part of the web site that I have set up to support the wedding includes a list of potential accommodation sites, with links and short descriptions.  Exactly the type of thing that begs for an interactive map.  I did some research on the best way to set up Google Maps to support this feature, and most of the options required hacking some code together and using the API.

I found an an article on apitricks blog, that clearly lays out a method to geo-code using a list of addresses in a google docs spreadsheet.  The process is incredibly simple.

  • Make a new Google Docs spreadsheet
  • Column A: Include a column that has descriptive information (Name, text description) after the address column.  This will be used as the description when you mouse over the point on the map.
  • Column B: Load up your addresses – best bet is to include all address components in a single field (street address, city, state, zip, country all together in a single cell).  If you have the components in separate cells, concatenate them into a single field.
  • Column C: all rows get the same URL “http://maps.google.com/maps/geo?output=csv&q=” – this will be used to build and submit the query to google maps.
  • Column D: Call the “ImportData()” function. This will be run as a formula within google spreadsheets, and will return Lat/Long information that can be used to develop the map.  The syntax is as follows: “=ImportData(CONCATENATE(C1,B1))” – where “1″ is for the row number (“C2,B2″ for row 2, “C3,B3″ for row 3…)
  • Columns E, F, and G will auto-magically be populated by the google spreadsheet as the output of the ImportData function.  Columns F and G are the keys to the map (Lat and Long, respectively).
  • Column H – for simplicity, I make this column equal to the descriptive text in Column A (or you can pull a number of fields together here).  This will be used to populate the meta data for the flags (the mouseover text that appears for each flag).
  • Go to the “Insert” menu, and choose “Gadget…”
  • Choose “Maps” from the available options, then the type of map you would like to use (I use the 2nd option, “Map”).
  • In the gadget settings, choose the “Range” to include the Lat and Long, as well as the final descriptive text columns.  (In my example, my range is “Sheet1!F2:H42″.  This corresponds to worksheet 1, and columns F, G, and H, rows 2 through 42.
  • Click the checkbox for “last column tooltips” (this is the reason we created and included column H).
  • Choose map style… I used the hybrid map.
  • Click “Apply and close”.  A map will appear on your spreadsheet, populated with flags and tooltip descriptions corresponding to the addresses / Lat&Long in your spreadsheet.
  • Click the map, and a “Gadget” menu will appear in the top right corner… click it and a dropdown list will appear.  Choose “Publish Gadget”, and it will provide a handy bit of script text that you can copy and paste into your web page.

Once your data is populated in the spreadsheet, the whole process takes less than 10 minutes.  That absolutely amazes me.   One limitation is that Google Docs only allows up to 50 functions to be called on a single sheet – so you are limited to geo-coding 50 addresses.  There is nothing that would limit you from loading the addresses 50 at a time, and hard-coding the Lat/Longs as many times as you need to for your list.

by david

8:26 am in Uncategorized by david

David's House
I was renting a car the other weekend, and was informed that I would need to bring proof of my UK address. I brought a letter from my bank… but as a joke, I also printed out a screen shot from Google Maps (satellite view) of my house in London… It showed the address on the left, and I typed “David’s House” into the search bar before printing it out. I explained to the car rental agent that this was proof that I lived there, because “… when you do a Google Maps search for David’s house, that is what shows up.”

He paused, looked at me, looked back at the printout, and didn’t ask a single question. Not a twitch.  Not a moment of hesitation or any sign or signal that he thought I was an idiot. He completed the reservation like a champ.  I was amazed.

 

by david

Moby – 5 months

7:16 am in Uncategorized by david

Moby Monkey Scruff-a-Luffagus
Moby’s measurements at 5 months:

Height: 30.5cm (12 inches) tall at the withers
Weight: 3.8kg (8.3 pounds)

by david

North Korean leader Kim Jung Un Assassinated?

5:11 pm in Uncategorized by david

I have a morbid interest in all things North Korea. It is a cult, in the saddest of senses. It is a nation engaged in blackmail. It is a nation lost.

It is 9:00pm GMT on Friday, February 10th… and the Chinese twitter-verse is all a flutter over rumors that Kim Jung Un has been assassinated while visiting Bejing, and that the assassins have in turn been killed by security guards.

It boggles the mind. Is there any truth? If so, who is behind it, and to what end? I can’t help but hope that this is a positive turn of events for the North Korean people. But what if it is the opposite? What if Kim Jung Un was the positive turn of events – a ray of hope and change for North Korea. What if powers content with the way things were have snuffed out the only ray of hope that the North Korean people had ahead of them?

Is it darker days ahead – or bright sunny skies? Steady as she goes? All just a puff of smoke? Only time will tell.

UPDATE: It is now 4am GMT, and it appears that the assassination story was actually a birthday party.

by david

Moby’s Measurements – 20 Weeks

8:49 am in Uncategorized by david

Moby is getting bigger… his measurements at 20 weeks are now as follows:

3.5kg (7.7 pounds)
29.25 cm (11.5 inches) at the withers

by david

Snowy day in London

7:35 am in Uncategorized by david

The first snowy day is upon us… and it is bound to be a cold one as well.f Just a few flakes so far. Nothing sticking. Moby looks cute with a couple of ice crystals stuck to him.

I reached out to a recruitment firm today and made personal contact – and it was worthwhile. Had a good conversation and think this will be the plan going forward until I am able to find something good.

Time for a coffee.

by david

Moby’s Measurements… 4 months

6:23 am in Uncategorized by david

Moby has hit the 4 month mark, and I thought I would capture his details.

Height at the withers: 9 3/4 inches – 24.5 cm
Weight: 2.75 kg – 6 pounds
It is hard to find any sort of lookup charts to track his size. He is a maltese / poodle cross, and there is a lot of possible variability that comes with crosses. I would be a lot more informed if I had a chance to meet his parents. My thoughts are as follows:

  • He is already (just about) taller than the breed standard for a toy poodle, so assuming he is a miniature poodle
  • He is slightly below the growth curve for a miniature poodle, I think that has to do with his Maltese side
  • He is close to the top end of the Maltese on the breed standard size scale

Miniature Poodle breed standards for size are:

  • Height: 11-15 inches (28-38 cm.)
  • Weight: 15-17 pounds (7-8 kg.)
  • Maltese breed standards for size are:

  • 8-10 inches (boys)
  • 6½-9 pounds (3-4kg.)
  • Taking that into consideration, I am going to guess that Moby will wind up:

  • 13 inches (33cm) at the whithers
  • 13 pounds (6 kg)
  • He is certainly bound to be a small dog… but I am optimistic that he is growing up a happy, healthy, confident and well balanced boy that enjoys some running and romping, can handle a long walk or hike, and (hopefully) has no issues playing with larger and smaller dogs.

    by david

    Moby’s first week. (Now 16 weeks old)

    6:25 am in Uncategorized by david


    It has been an incredible first week.

    Potty training is coming along quite nicely. We don’t even have to leave out puppy pads for him. Relatively accident free. I wake up a couple of times a night to take him out… I have been cautiously listening for him to fidget or wake in the night… and if he does, I whisk him out back to the garden. Last night, one trip was all that was needed. I am looking forward to when he can go all night.

    We have started going on walks, which has made me aware of that some things that I take for granted are quite unnerving to a young puppy setting out in London. Cars, for one thing. Cars are spooky for a little guy – and he hears them coming a lot further away then I do. Each time he hears a car, we pause, and wait to make sure it is going to pass by safely. It makes sense, really… but also slows down progress, especially during high traffic times. Our first couple of ventures would be more aptly referred to as “stops” than “walks”, as we were doing more of the former than the latter.

    Last night was his first night out on the town. Hayley and I took Moby to a local pub – the Ferry Boat Inn in Tottenham. He did great – say patiently and just cuddled up. Sitting in a pub next to a fire with a dog is really nice.
    I feel that he has grown a bit in the last week – he seems taller to me. His puppy belly is not quite as pronounced after he finishes eating as well. It will be interesting to see Hayley’s reaction to his size when she comes home from Switzerland next week. She will be away for five days… and I am going to assume that there will be a detectable difference in Moby in that time.

    On Monday, we will be going to a puppy training / socialization session in Chingford. I am really looking forward to seeing how he reacts / interacts with the other dogs. I am really looking forward to just seeing the other puppies in general. I am guessing that there will be quite a number of puppies in attendance, given the holiday season.

    by david

    Puppy Training Sheet…

    9:37 am in Uncategorized by david

    I made some puppy training sheet to hang on our fridge, to help in the puppy housebreaking process. I am going to laminate the paper, and use small round button magnets to hold the numbers / markers in place. The round puppy paw prints are going to be glued to the tops of the button magnets, and will be the markers for the timeline table.
    Download the PDF of the PuppyTrainingSheet:

    Feel free to use and enjoy. Released under creative commons license.

    Creative Commons License
    Puppy Training Sheet by Ultrasupergenius.com is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
    Based on a work at ultrasupergenius.com.

    by david

    Sir Moby Monkey Scruff-a-Luffagus

    7:08 pm in Uncategorized by david

    Moby Monkey Scruff-a-LuffagusThe Duke of Poop has arrived. What a cutie. So far, he has proven himself to be an incredible eater and drinker – I have been blown away by his appetite and the amount of water he will drink down in a sitting. Along with those comes pooping and peeing – and he has a 100% accuracy rating on hitting his puppy pad so far. Good man! He loves his security blanket – I rubbed down his litter-mate friend with it (a little Westie that he grew up with – Moby was the only pup in his litter). He has the cutest puppy eyes, an affinty for chewing buttons… and really seems drawn to any cord, power cord, or rope. Also has his eyes on Hayley’s new Christmas slippers.

    He really enjoys his new bed. He likes his rope bone. But most of all, he seems to love his Mr. Sheepytime blanket (his security blanket has a sheep on the top).

    He is a scruffy little monster, with long legs and an incredibly fat little belly. He has a really thin whispy coat that I think will thicken up as he gets older. His underbelly is quite bald, as are a few spots on the back of his legs.

    He is up at 11 pm tonight – after a couple of puppy naps. He will have a special rules night tonight in terms of settling in… but puppy pre-school starts tomorrow, and we will start to get him used to his new routine and rules.

    He has been described as a malti-poo… but looking at images, I don’t think this can be entirely correct. He seems to have some terrier in him. Not a lot of maltipoos are entirely black either.