Recent Thoughts

The Ninja Course

We recently-ish moved to Urbandale, IA to save my wife from an unnecessary commute. At our old house, we had several large trees in the backyard that we used to set up some fun things for our kids. The new house was an upgrade in many ways, but we don’t have any trees, so we send a lot of our yard toys to live in a box with my in-laws.

If you don’t know this yet, my family is very active. We spend a lot of time outside running, hiking, riding bikes, skating, climbing, and pretty much any other verb you can think of. When COVID-19 hit and things started shutting down we, like many others, found ourselves in a bit of a pickle.

After about a week of sheer insanity, we deemed it necessary to bring the trampoline and other fun things back to life.

Solving the problem of no trees

Major kudos to my Father in-law for helping me out with this, I don’t have much of a background in “wrenching” so I tend to take a “test it out” approach to most things. That being said, building something that needs to support the weight of my kids and their friends required some advice and guidance from a guy who is very good at this kind of thing.

The Project:

Find a way to set four massive poles up in a way that allows us to configure and reconfigure various play items for different lengths, heights, and in different combinations.

For example – we may want to put the ninja line over the slack line to help the kids get used to the different grips.

Step 1: Figure out what size poles to use

This year my boys turned five and seven. They are what we’d call “sturdy” kids and what I mean by that is that the are both friggin’ tanks. Knowing that we wanted them to use this structure for as long as they want to use it, we knew we needed to think about height.

To establish above ground height, or usable height we first had to figure out how far into the ground we needed to get the poles to feel confident. Without doing a bunch of calculations, we ultimately determined that with concrete anchoring them in, and with the assumption that I could get them set mostly straight, four feet in would ensure enough stability to prevent shifting. Also counting on the ground having been frozen and compacted every year, adding stability as the kids and their friends get bigger.

We ended up with 14′ long poles with 6″x6″ for the length and width. Not easy to maneuver but my Father In-law is also a big/strong guy with a big van so we got them where they needed to be with some sweat and teamwork.

Step 2: Figure out where to dig

There’s a whole thing you need to do before you dig called, “Before You Dig”. You will be asked to answer some questions about why you’re digging and where you want to dig and they will send a team out to mark your yard to show where you’re likely to run into things like gas lines, water lines, or other lines that would be bad to cut.


Even with most utilities marked, I ran into random things like our sprinkler system, in ground rain spouts, and old telephone wires. I can’t imagine what I would have run into if I was just guessing.

Explosion Nothing To See Here GIF - Find & Share on GIPHY

Step 3: Digging

If you have access to some sort of digging machine, use it. I used post diggers that were just long enough to hit the 4′ mark and it got harder as the handles got closer to the ground.

If you are using a post digger, take the time to focus on keeping it centered and level. You might be able to get away with a slight tilt, or adjust a bit once you’ve poured the concrete in BUT the straighter it is, the easier it will be to make sure it stays that way. This also helps if you’re planning to use the cardboard tubes to help shape the concrete around the post — which brings us to our next step.

Step 4: Set the posts

In retrospect, I wish I would have used wider cardboard tubes to allow for more concrete and more play while the posts were setting. I’ve tested this thing as a 205 lb adult and I’m fairly certain it’s not going to give much/at all but I would recommend planning to use a tube that has a diameter more than 2″ longer than the posts.

It’s worth noting that if you’re digging manually with something like a post digger you should try and make sure the diameter of your hole is pretty close to that of the tube to ensure a snug fit — so all the play happens with the post and concrete within the tube itself.

Once the tube is in the hole you can lift your posts in and then pour your concrete. Knowing that we were dealing with kids who were not going to handle waiting well, we went with concrete that set faster. You’ll mix the concrete in a bucket and then pour it into the tube.

The tube we used was fairly tight to the post which kept it straight but didn’t allow for as much concrete as I would have liked. If you’re using a tube that has a bigger diameter than the post you may have to level your post and check it a few times while it’s drying OR use something like rope or straps to keep it level while it dries.

View this post on Instagram

My helpers! #dadstuff

A post shared by Mike Bal (@ekimlab) on

Step 5: Fun time

Our setup consists of:

  1. A slackline
  2. A ninja line
  3. Two hammocks
  4. A DIY tree hammock that I made much much bigger and now functions as a trampoline
IMG 1355 2
View this post on Instagram

Life is good. #dadstuff

A post shared by Mike Bal (@ekimlab) on

Tracking Brightcove Analytics With GTM via The Data Layer

I recently discovered that while Brightcove has a lot of documentation available for a wide variety of topics, they don’t really dig into limitations of each topic or the specifics in terms of how to really get them working.

They do have a default connection to Google Analytics BUT it’s all done via API so you don’t have a lot of room to customize how you organize or collect your data. In this case, I wanted to capture some custom dimensions tied to taxonomies used on the site. I had our engineering team push those dimensions and values into the data layer to capture but there were no available events to use for triggers and no easy way to force those custom values from WordPress into the API sends heading to Google Analytics.

The good news is that there is a Google Tag Manager plugin for Brightcove. The bad news is that the documentation doesn’t seem to be very comprehensive in terms of

  1. Being updated/accurate in terms of the configuration process.
  2. Really explaining what the plugin itself does.

The Plugin Does Not

  • Create variables, triggers or tags in GTM.
  • Connect to existing variables, triggers or tags in GTM.

The Plugin Does

  • Allow you to choose what Brightcove Analytics events or values you want to push to the data layer.
  • Nest those values in a customDimensions container.
Screen Shot

Other things worth calling out before you start on this:

  • Brightcove documentation for the GTM plugin provides you with an “Automated” and a “Manual” way to configure it. I found that the automated way is more time consuming and I also hit a wall with getting the script to run because it required Google review and “may take up to three days”. I waited the three days and was never able to run the script so I ended up just using the manual configuration that ended up being simple edits to a JSON file that just lives in the Brightcove player.
  • The values that are served up from Brightcove live within a container and to access them you just need to use CSS targeting. h/t to Simo Ahava for answering this for me in the Facebook Google Tag Manager Community.
Screen Shot

Once you have the dimensions and events you need in the data layer it’s a pretty standard setup with GTM. Hopefully, you can use this as a shortcut to getting video analytics in place without breaking a sweat.

Google News Initiative Ad Revenue Lab

Almost a year ago, 10up was approached with an idea to run a lab to help evaluate, test, and establish a set of best practices for hyper-local publishers to optimize their revenue. (10up’s post here)

One of the coolest challenges of this project for me was to step away from the normal project/platform delivery processes and shape a new approach specifically for the purposes of this lab.

We knew going into it that we wanted to be efficient and focus on things that almost any publisher could implement on their own — not fancy technical features that require heavy custom engineering or expensive tools/platforms. Rather than implementing some personalized content recommendation engine, we looked for fundamental best practices like social sharing buttons,lazy loading of ads, sticky ads, AMP implementation, and more.

As we started working through this assessment we quickly got to the question of, “How should we prioritize these items if they don’t have the same level of opportunity for each publisher?”.

While there were some that were black and white like “social sharing buttons” there were a lot of other items that really depended on a mix of metrics to qualify whether or not they were worth ours or the publisher’s time to update or implement.

This is really when things started getting challenging, interesting, and fun.

I worked with my team to come up with some basic “human logic” tied to each publisher’s benchmarks. While it’s not something we could easily automate, the experience of the team allowed us to look at things like the News Consumer Insights reports and simple metrics from Google Analytics to quickly weigh each opportunity on a simple scale – similar to how you would think about t-shirt sizing in agile frameworks — except opportunity as the unit of measurement vs effort.

For example, A publisher may not have had AMP implemented but if they already had high speed mobile pages, strong rankings on mobile organic, and a decent set of rich results, we wouldn’t say it’s a “high” opportunity but would still queue it up as something to test once we had implemented the tactics with the most potential.

We took this approach to an initial cohort of publishers and saw some outstanding results in the first few months. Because we were able to develop an efficient process and leverage collaboration with the publishers, we were able to run through the process with another set up publishers to help provide more supporting data for all of our core tactics.

We launched our first case study towards the end of 2019 and have several more coming, along with a series of webinars to help provide a more interactive forum for publishers and their teams to learn more about specific topics and ask questions.

Stay tuned for the launch of the Ad Revenue Accelerator site with all of our findings and recommendations as well!