Checked in at Casselman’s Bar & Venue.
BBQing — with erika
Checked in at Casselman’s Bar & Venue.
BBQing — with erika
Checked in at Curtis Park Delicatessen.

These little jerks keep bringing tasty trash into my yard to nibble on, then leave it laying around.
Posted on Instagram 2:12 pm, June 22, 2015 jQuery(document).ready(function(){ var gmap_mf026d1e02af8a4d9ec626c040782c467 = { positions : { 407 : new google.maps.LatLng( ‘39.759913333’, ‘-104.969528333’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_mf026d1e02af8a4d9ec626c040782c467’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_mf026d1e02af8a4d9ec626c040782c467.positions ) { gmap_mf026d1e02af8a4d9ec626c040782c467.bounds.extend( gmap_mf026d1e02af8a4d9ec626c040782c467.positions[m] ); } // Render markers for ( var m in gmap_mf026d1e02af8a4d9ec626c040782c467.positions ) { gmap_mf026d1e02af8a4d9ec626c040782c467.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_mf026d1e02af8a4d9ec626c040782c467.map, position : gmap_mf026d1e02af8a4d9ec626c040782c467.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_mf026d1e02af8a4d9ec626c040782c467.map.setCenter( gmap_mf026d1e02af8a4d9ec626c040782c467.positions[407] ); });

Earning more beer. Note the ladder. Getting my lumberjack on.
Posted on Instagram 3:35 pm, June 21, 2015 jQuery(document).ready(function(){ var gmap_m5ac473b108d037ebab6f32e14ab6819d = { positions : { 613 : new google.maps.LatLng( ‘39.759913333’, ‘-104.969528333’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m5ac473b108d037ebab6f32e14ab6819d’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m5ac473b108d037ebab6f32e14ab6819d.positions ) { gmap_m5ac473b108d037ebab6f32e14ab6819d.bounds.extend( gmap_m5ac473b108d037ebab6f32e14ab6819d.positions[m] ); } // Render markers for ( var m in gmap_m5ac473b108d037ebab6f32e14ab6819d.positions ) { gmap_m5ac473b108d037ebab6f32e14ab6819d.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m5ac473b108d037ebab6f32e14ab6819d.map, position : gmap_m5ac473b108d037ebab6f32e14ab6819d.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m5ac473b108d037ebab6f32e14ab6819d.map.setCenter( gmap_m5ac473b108d037ebab6f32e14ab6819d.positions[613] ); });
Checked in at Walnut Room.

Built a workbench. Earned a beer.
Posted on Instagram 5:04 pm, June 16, 2015 jQuery(document).ready(function(){ var gmap_m0cc791f633e6f0934c642afcb792f306 = { positions : { 633 : new google.maps.LatLng( ‘39.759913333’, ‘-104.969528333’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m0cc791f633e6f0934c642afcb792f306’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m0cc791f633e6f0934c642afcb792f306.positions ) { gmap_m0cc791f633e6f0934c642afcb792f306.bounds.extend( gmap_m0cc791f633e6f0934c642afcb792f306.positions[m] ); } // Render markers for ( var m in gmap_m0cc791f633e6f0934c642afcb792f306.positions ) { gmap_m0cc791f633e6f0934c642afcb792f306.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m0cc791f633e6f0934c642afcb792f306.map, position : gmap_m0cc791f633e6f0934c642afcb792f306.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m0cc791f633e6f0934c642afcb792f306.map.setCenter( gmap_m0cc791f633e6f0934c642afcb792f306.positions[633] ); });
Checked in at The Home Depot.
Making.
heimcontrol.js – Home automation in Node.js with Raspberry PI and Arduino
Awesome home automation with Raspberry PI and Arduino using Node.js, MongoDB, HTML5 and Websockets.
Tracking the Internet of Things
“A vendor and technology agnostic open source automation software for your home.”
Checked in at The Whittier Pub.
The local.

Stranahan’s Family Reunion. 2 different #Snowflake batches, Diamond Peak and regular-delicious.
Posted on Instagram 10:46 am, June 13, 2015 jQuery(document).ready(function(){ var gmap_m2da36aa431d0d34edafd766f52ea9e1e = { positions : { 797 : new google.maps.LatLng( ‘39.759888333’, ‘-104.96955’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m2da36aa431d0d34edafd766f52ea9e1e’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m2da36aa431d0d34edafd766f52ea9e1e.positions ) { gmap_m2da36aa431d0d34edafd766f52ea9e1e.bounds.extend( gmap_m2da36aa431d0d34edafd766f52ea9e1e.positions[m] ); } // Render markers for ( var m in gmap_m2da36aa431d0d34edafd766f52ea9e1e.positions ) { gmap_m2da36aa431d0d34edafd766f52ea9e1e.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m2da36aa431d0d34edafd766f52ea9e1e.map, position : gmap_m2da36aa431d0d34edafd766f52ea9e1e.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m2da36aa431d0d34edafd766f52ea9e1e.map.setCenter( gmap_m2da36aa431d0d34edafd766f52ea9e1e.positions[797] ); });
Checked in at SpringHill Suites Denver Downtown.
#wcdenver!

Morning Patrol for Long’s Peak #Snowflake
Posted on Instagram 6:26 am, June 13, 2015 jQuery(document).ready(function(){ var gmap_m944ad68371b427667c35a7d41359b517 = { positions : { 709 : new google.maps.LatLng( ‘39.712691’, ‘-104.998779’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m944ad68371b427667c35a7d41359b517’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m944ad68371b427667c35a7d41359b517.positions ) { gmap_m944ad68371b427667c35a7d41359b517.bounds.extend( gmap_m944ad68371b427667c35a7d41359b517.positions[m] ); } // Render markers for ( var m in gmap_m944ad68371b427667c35a7d41359b517.positions ) { gmap_m944ad68371b427667c35a7d41359b517.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m944ad68371b427667c35a7d41359b517.map, position : gmap_m944ad68371b427667c35a7d41359b517.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m944ad68371b427667c35a7d41359b517.map.setCenter( gmap_m944ad68371b427667c35a7d41359b517.positions[709] ); });
How to Heal Faster – Gear Patrol
Outside of the comic book world of Wolverine, Sabretooth and the Incredible Hulk, there’s no such thing as magic healing. If you get sliced, bruised or generally wounded, it takes us far longer to get back into fighting condition than our make-believe counterparts. But, thankfully, there are things you can do to improve your body’s ability to heal that don’t involve genetic manipulation. It’s more than popping a magic pill or downing a miracle elixir — it’s far more of a lifestyle that will give your body the ability to bounce back. Here’s how to get yourself back in the game by decreasing down-and-out time.
(more…)Checked in at LaGuardia Airport (LGA).
Epic weekend. My liver is so glad to be going home. I don’t remember what being sober feels like.

Full Moon
Posted on Instagram 10:00 am, June 7, 2015 jQuery(document).ready(function(){ var gmap_m79ed7ae703d848ececa07e1bf7cfe0de = { positions : { 995 : new google.maps.LatLng( ‘42.039064556’, ‘-74.440885462’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m79ed7ae703d848ececa07e1bf7cfe0de’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m79ed7ae703d848ececa07e1bf7cfe0de.positions ) { gmap_m79ed7ae703d848ececa07e1bf7cfe0de.bounds.extend( gmap_m79ed7ae703d848ececa07e1bf7cfe0de.positions[m] ); } // Render markers for ( var m in gmap_m79ed7ae703d848ececa07e1bf7cfe0de.positions ) { gmap_m79ed7ae703d848ececa07e1bf7cfe0de.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m79ed7ae703d848ececa07e1bf7cfe0de.map, position : gmap_m79ed7ae703d848ececa07e1bf7cfe0de.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m79ed7ae703d848ececa07e1bf7cfe0de.map.setCenter( gmap_m79ed7ae703d848ececa07e1bf7cfe0de.positions[995] ); });
Checked in at Full Moon Resort.
Weddings, y’all.
Checked in at Hickory BBQ Smokehouse.
Checked in at Noisette.
Checked in at Newark Liberty International Airport (EWR).
It’s only another 2 hours of public transit to my intermediate destination!
Checked in at Denver International Airport (DEN).
To NY.

Operation Sumac Devastation is in full effect #homeownerlife
Posted on Instagram 6:27 pm, May 30, 2015 jQuery(document).ready(function(){ var gmap_m257b035bc52c690f9632451a46177d98 = { positions : { 539 : new google.maps.LatLng( ‘39.760080844’, ‘-104.969575854’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m257b035bc52c690f9632451a46177d98’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m257b035bc52c690f9632451a46177d98.positions ) { gmap_m257b035bc52c690f9632451a46177d98.bounds.extend( gmap_m257b035bc52c690f9632451a46177d98.positions[m] ); } // Render markers for ( var m in gmap_m257b035bc52c690f9632451a46177d98.positions ) { gmap_m257b035bc52c690f9632451a46177d98.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m257b035bc52c690f9632451a46177d98.map, position : gmap_m257b035bc52c690f9632451a46177d98.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m257b035bc52c690f9632451a46177d98.map.setCenter( gmap_m257b035bc52c690f9632451a46177d98.positions[539] ); });
Checked in at The Home Depot.
#homeownerlife
Checked in at Larimer Lounge.
We have Sumac all over the place, and we need to eliminate it before it gets completely out of hand. This basically says we’ll spend 3 years poisoning it.
Checked in at San Francisco International Airport (SFO).
Farewell SF. Back to Denver storms for me.
Checked in at Contraband Coffeebar.
37.7910642-122.4190551

Wedding. All of the drinks.
Posted on Instagram 9:44 pm, May 24, 2015 jQuery(document).ready(function(){ var gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11 = { positions : { 824 : new google.maps.LatLng( ‘37.720214891’, ‘-122.193466532’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11.positions ) { gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11.bounds.extend( gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11.positions[m] ); } // Render markers for ( var m in gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11.positions ) { gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11.map, position : gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11.map.setCenter( gmap_m6556c3dc9f3856ac1a6cd0bc7b44ce11.positions[824] ); });
Checked in at Automattic Lounge.

Dome
Posted on Instagram 4:26 pm, May 23, 2015 jQuery(document).ready(function(){ var gmap_m694704430c6ff138b14d17341f30643f = { positions : { 624 : new google.maps.LatLng( ‘37.784287474’, ‘-122.406335453’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m694704430c6ff138b14d17341f30643f’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m694704430c6ff138b14d17341f30643f.positions ) { gmap_m694704430c6ff138b14d17341f30643f.bounds.extend( gmap_m694704430c6ff138b14d17341f30643f.positions[m] ); } // Render markers for ( var m in gmap_m694704430c6ff138b14d17341f30643f.positions ) { gmap_m694704430c6ff138b14d17341f30643f.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m694704430c6ff138b14d17341f30643f.map, position : gmap_m694704430c6ff138b14d17341f30643f.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m694704430c6ff138b14d17341f30643f.map.setCenter( gmap_m694704430c6ff138b14d17341f30643f.positions[624] ); });
Checked in at Westfield San Francisco Centre.

Building Gap
Posted on Instagram 3:35 pm, May 23, 2015 jQuery(document).ready(function(){ var gmap_mb10aa31a1d3370e4721478c9632ad919 = { positions : { 392 : new google.maps.LatLng( ‘37.765003333’, ‘-122.413345’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_mb10aa31a1d3370e4721478c9632ad919’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_mb10aa31a1d3370e4721478c9632ad919.positions ) { gmap_mb10aa31a1d3370e4721478c9632ad919.bounds.extend( gmap_mb10aa31a1d3370e4721478c9632ad919.positions[m] ); } // Render markers for ( var m in gmap_mb10aa31a1d3370e4721478c9632ad919.positions ) { gmap_mb10aa31a1d3370e4721478c9632ad919.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_mb10aa31a1d3370e4721478c9632ad919.map, position : gmap_mb10aa31a1d3370e4721478c9632ad919.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_mb10aa31a1d3370e4721478c9632ad919.map.setCenter( gmap_mb10aa31a1d3370e4721478c9632ad919.positions[392] ); });
User Experience for Product Designers — Medium
Five simple steps product designers can use to build better web apps.
On small teams where time resources are limited user experience can often be overlooked. Over the past few months I’ve tried to develop a low impact UX cycle that designers and project managers can use to improve the quality of web apps without adding a lot of bloat to a project. This article will be written from the viewpoint of an app that is currently in-use. The UX process will vary slightly for a new product but the same basic principles exist. Below is a five-step process going through a development cycle that defines a detailed look at best practices in the UI/UX discipline.
(more…)Checked in at Denver International Airport (DEN).
Here I come, SF.
Checked in at La Abeja.
#burritofriday #wooritofriday

Checked in at Purple Door Coffee.
A mostly reasonable approach to JavaScript.
Checked in at hutch & spoon.
Looks like a good place for #cafeworking. Serves sandwiches, coffee, breakfast.

During our last team meetup, we had a “guac-off”, where 2 of us made our own recipes of guacamole, and then everyone “blind taste tested” (aka devoured them, without knowing who made which one), and we voted. Mine won! In the end it was the texture (more chunky) that won it for me. Someone asked for the recipe, and this is the best I could give them:
I start out by scooping, slicing and mashing up 1 avocado, and leaving one to the side. Then I’ll chop the onion, tomato, jalpeño and cilantro, and get that all in there. This is also when the garlic goes in (if you’re using it). While adding these, I’ll mix it and mash it a little bit, just to make sure it’s all mixed through. Now scoop, slice and throw in the other avocado, then add lime juice, salt and pepper. Mix it up (mashing a little more in the process) and keep adding salt/pepper until you get the taste you’re after. You can also tweak with more jalapeño or lime juice at this point, which is where a lot of the taste comes from.
(more…)Checked in at Beatrice & Woodsley.
Celebrating moving into our new home! — with erika
Checked in at Benny Blanco’s.
Probably the last time as my local pizza joint.
Checked in at Downing Supermarket.
Checked in at Mellow Mushroom Pizza Bakers.
39.7487484-104.9968834

Celebrating our new house with @stranahans #snowflake, of course.
Posted on Instagram 6:28 pm, May 14, 2015 jQuery(document).ready(function(){ var gmap_m17acee1d93c3d503f08cc184393bd259 = { positions : { 784 : new google.maps.LatLng( ‘39.759913333’, ‘-104.969528333’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m17acee1d93c3d503f08cc184393bd259’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m17acee1d93c3d503f08cc184393bd259.positions ) { gmap_m17acee1d93c3d503f08cc184393bd259.bounds.extend( gmap_m17acee1d93c3d503f08cc184393bd259.positions[m] ); } // Render markers for ( var m in gmap_m17acee1d93c3d503f08cc184393bd259.positions ) { gmap_m17acee1d93c3d503f08cc184393bd259.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m17acee1d93c3d503f08cc184393bd259.map, position : gmap_m17acee1d93c3d503f08cc184393bd259.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m17acee1d93c3d503f08cc184393bd259.map.setCenter( gmap_m17acee1d93c3d503f08cc184393bd259.positions[784] ); });

Bought a house with @akires!
Posted on Instagram 4:45 pm, May 14, 2015 jQuery(document).ready(function(){ var gmap_m0f9de82b44a4140af7cd9a18d6183f15 = { positions : { 724 : new google.maps.LatLng( ‘39.759913333’, ‘-104.969528333’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m0f9de82b44a4140af7cd9a18d6183f15’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m0f9de82b44a4140af7cd9a18d6183f15.positions ) { gmap_m0f9de82b44a4140af7cd9a18d6183f15.bounds.extend( gmap_m0f9de82b44a4140af7cd9a18d6183f15.positions[m] ); } // Render markers for ( var m in gmap_m0f9de82b44a4140af7cd9a18d6183f15.positions ) { gmap_m0f9de82b44a4140af7cd9a18d6183f15.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m0f9de82b44a4140af7cd9a18d6183f15.map, position : gmap_m0f9de82b44a4140af7cd9a18d6183f15.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m0f9de82b44a4140af7cd9a18d6183f15.map.setCenter( gmap_m0f9de82b44a4140af7cd9a18d6183f15.positions[724] ); });
Long-lasting, well-rated iBeacons. Should be compatible with Beecon for automating things at home.
Checked in at Taste of Philly.
Beecon – The iBeacon Automation App
Manage, detect and range iBeacons around you. Create multiple regions and define actions that are triggered when you enter or leave them.
I’ve been thinking about home automation a bit recently, and I realized that what I want as a big part of a system is some sort of generic presence-system. I’m imagining something along the lines of:
I wonder if this could be hacked together from iBeacons somehow, or if it’s too much the reverse of what they’re intended for? Does this already exist? Is there a better/simpler solution already available?
Checked in at Colorado Krav Maga.
Checked in at Mr Lucky’s Sandwiches.

Here we go again.
Posted on Instagram 4:23 pm, May 10, 2015 jQuery(document).ready(function(){ var gmap_m150d1a908799c607fea2896eab661868 = { positions : { 666 : new google.maps.LatLng( ‘39.734836667’, ‘-104.978438333’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m150d1a908799c607fea2896eab661868’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m150d1a908799c607fea2896eab661868.positions ) { gmap_m150d1a908799c607fea2896eab661868.bounds.extend( gmap_m150d1a908799c607fea2896eab661868.positions[m] ); } // Render markers for ( var m in gmap_m150d1a908799c607fea2896eab661868.positions ) { gmap_m150d1a908799c607fea2896eab661868.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m150d1a908799c607fea2896eab661868.map, position : gmap_m150d1a908799c607fea2896eab661868.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m150d1a908799c607fea2896eab661868.map.setCenter( gmap_m150d1a908799c607fea2896eab661868.positions[666] ); });
Market research is easy. Visit customers
Joel Gascoigne: “A product manager must understand the customer’s situation better than the customer does” http://t.co/FS9WbE1n78 by @sjohnson717
Checked in at San Francisco International Airport (SFO).
Couldn’t have timed it better. Pre-check with 0 line. Premier boarding with immediate walk-on to plane. If only all travel was like this!

Welcome reception at #wpvip. Great conversations and great kickoff to the event.
Posted on Instagram 4:15 pm, May 5, 2015 jQuery(document).ready(function(){ var gmap_mf8b17b4ee5185322b2ff7693cf97593c = { positions : { 659 : new google.maps.LatLng( ‘38.256673012’, ‘-122.333844107’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_mf8b17b4ee5185322b2ff7693cf97593c’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_mf8b17b4ee5185322b2ff7693cf97593c.positions ) { gmap_mf8b17b4ee5185322b2ff7693cf97593c.bounds.extend( gmap_mf8b17b4ee5185322b2ff7693cf97593c.positions[m] ); } // Render markers for ( var m in gmap_mf8b17b4ee5185322b2ff7693cf97593c.positions ) { gmap_mf8b17b4ee5185322b2ff7693cf97593c.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_mf8b17b4ee5185322b2ff7693cf97593c.map, position : gmap_mf8b17b4ee5185322b2ff7693cf97593c.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_mf8b17b4ee5185322b2ff7693cf97593c.map.setCenter( gmap_mf8b17b4ee5185322b2ff7693cf97593c.positions[659] ); });
Checked in at Illegal Pete’s South Broadway.
#burritofriday — with erika

It’s @beadna!
Posted on Instagram 1:21 am, May 1, 2015 jQuery(document).ready(function(){ var gmap_m865619ff86a4248cac870c8a041b710a = { positions : { 101 : new google.maps.LatLng( ‘39.71902519’, ‘-104.901203997’ ) }, bounds : new google.maps.LatLngBounds(), // empty for now, we’ll dynamically extend it later map : new google.maps.Map( document.getElementById( ‘gmap_m865619ff86a4248cac870c8a041b710a’ ), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng( 0, 0 ), zoom: 16 // Seems to be a good zoom for a single point } ), markers : {}, }; // end of gmap // Extend the bounds of interest based on our positions for ( var m in gmap_m865619ff86a4248cac870c8a041b710a.positions ) { gmap_m865619ff86a4248cac870c8a041b710a.bounds.extend( gmap_m865619ff86a4248cac870c8a041b710a.positions[m] ); } // Render markers for ( var m in gmap_m865619ff86a4248cac870c8a041b710a.positions ) { gmap_m865619ff86a4248cac870c8a041b710a.markers[m] = new google.maps.Marker( { clickable: true, map : gmap_m865619ff86a4248cac870c8a041b710a.map, position : gmap_m865619ff86a4248cac870c8a041b710a.positions[m] } ); } // Redraw map to fit our new marker-based bounds gmap_m865619ff86a4248cac870c8a041b710a.map.setCenter( gmap_m865619ff86a4248cac870c8a041b710a.positions[101] ); });
Checked in at The Soiled Dove Underground, for Chris Trapper.
BEABEABEA! — with erika