Nobody Listens Anyway

Life is an optimization issue

Google IO Day 3

ATAP - future science fiction awesomeness

The last day of Google I/O. I go directly to the ATAP line and I'm lucky enough to get in.

Trust API

The project formerly known as Abacus becomes the Trust API. The purpose is to eliminate the hassles of passwords an mult-factor authentication. It will be available to developers in the Fall if I remember right. It's a subtle but complex project that if it works will change the way we deal with authentication. That's a good thing. There's a reason every login form has a "forgot your password" link. A lot also have a "forgot your username" link. We need something better.


Last year they introduced project Jacquard and project Soli. This year they showed them off again with the promise of getting the technology into the hands of customers. Jacquard will find its way into a Levi commuter jacket in spring 2017. That's cool, but I'm hopeful Google will expand its partnerships. I don't bike with a L...

Continue Reading →

Google IO Day 2

Commuted to Google IO via the Bay Area Bike share program again. Since there's only one bike share station near my hotel and only one near Google and there are 7000 developers here I was worried there wouldn't be any bikes. Nothing to worry about. I'm pretty sure I'm the only one using the bike share. Getting a bike isn't a problem. They are garabage, but they are a bike. I'm guessing no one uses it because there are Google bikes everywhere. If I was a bit braver I would have just 'borrowed' one got get around, but old guys obey the rules so Bike Share it is.

Firebase Security

Jacob Wenger (@_jwngr)


I made it to the Firebase Security talk. Not a lot of people here but so far this is one of my favorite presentation because it is code heavy and because Firebase security can be a bit complicated. Everyone using Firebase needs this. T...

Continue Reading →

Google IO Day 1

google io crowdgoogle io at nightscratch working with legos

Google IO day one is over and my feet are killing me. Here are my key take aways for the day:


Firebase has become a key component in the Google ecosystem. What was once a real time database is now a platform for your entire infrastructure and application business development needs. Today there were plenty of comparisons to Parse, Facebook's ill-fated application platform. Since I'm at Google IO I didn't hear many comparisons to Amazon's ecosystem of products, but I'm sure others will make the comparison. Amazon does offer more in technical functionality but at the cost of complexity. Though AWS offers an inexpensive and powerful compute platform they won't be winning any awards for developer experience. Google has done a great job considering not just the technical but also the business requirements for the entire application lifecycle. Developers still have the same powerful real time database as a service that they've had for a long ti...

Continue Reading →

Viva Las Vegas

Day 1. The Dam Day. - March 29

Our first day we leave Las Vegas (doesn't everyone?) and head out to Hoover Dam to take the Dam tour. It's a really big dam. We pay our dam money, ask a few dam questions and wait in a dam line to watch a dam movie. We know this will be a dam fun time. We watch an old dam movie about building the dam, carving giant tunnels, and cooling dam concrete. We finish the dam movie and wait in another dam line while we wait to take the dam elevator. We descend in the heart of the dam and visit one of the massive dam tunnels carrying a lot of dam water. We behold a marvel of engineering and the fruits of the labor of a generation a hundred years old. Next we visit the dam building and view the dam turbines that provide power to the southwest United States. The floors are marble with intricate designs by master craftsman. We don't build industrial facilities like this anymore. We exit the dam and walk the road that caps millions of tons of concrete. The ...

Continue Reading →

Oasis of the Seas

Both I and my wife reached a certain life milestone this last year that involved the number 4 and determined that it was time we started acting our age. Of the options available we chose a cruise and so it would seem we are at "that" age.

I have been known at times to require Dramamine and a vomit bag when riding in the rear seat of a car. To mimimize the threat of spending a week unable to stand up and wanting to die I pushed for us to sail on the largest ship in the world - The Oasis of the Seas. As it turns out even the largest of man-made objects are subject to the whims of enourmous bodies of water, but the worst side effect we experienced was the inability to walk a straight line a few times. Most people on board exhibited the same symptom most of the vacation whether the sea was upset or smooth. 21 bars in a contained location has that effect.

##Day 1 at sea. On any normal voyage a day at sea might involve reading a book or, staring at the water, or picking your nose. ...

Continue Reading →

Alexa, Amazon Lambda, NASA and avoiding death

A long time ago when they first came out I was going to buy an (Echo)[]. Then I didn't. Then they got really cheap so now I have an (Echo)[].

It's the weekend and I've been writing a crazy amount of code for one of our projects. I needed a break. My son needed to learn a bit of Javascript. At (Atomic Jolt)[] we use (Amazon Lambda)[] for various client projects. Turns out you can add 'skills' to your Echo using (Amazon Lambda)[].

(NASA has an Open API)[] that lists near earth objects. Since it's important to know if you are going to die by astroid at any given moment we put it all together and now we have SpaceBall. Just have Alexa 'ask SpaceBall if we're all going to die and you'll get a list of objects near the earth on any given day.

If you're interested here's the code on (Github)[https://gi...

Continue Reading →

The Balls Bouncying Around DisneyLand

Trip Log Day 1

We hop off the plane at L.A.X. with a dream and tickets to Disneyland. Welcome to the land of fame, excess, whoa! are we gonna fit in? Waited at the curb for Relay Ride to pick us up, here we are for the fifth time. Look off through the smog, and I see the Hollywood sign.

The traffic is all so crazy, everybody seems so famous. My tummy's turnin' and I'm feelin' kinda sick. Too much pressure and I'm nervous. That's when we turn on the radio and they're playing something vaguely familiar.

We sit, we drive, we sit, we drive in LA traffic. 15 miles is a short distance on the map. It's a short distance if you are in Utah. It's an hour and a half "drive" in Los Angeles. We arrive at our destination - the Walt Disney Concert hall. The architecture is jaw dropping. The parking lightens your wallet balancing out the effect. A quick scan of Google maps show the Griffith observatory is a only short distance. We are technical sort of peo...

Continue Reading →

Nasty React React-Router initialization bug

Over the past few days I've been tracking down a nasty bug in a React application. It's the kind of bug that manifests rarely in development but shows up enough on production that users hate you for it. At first we couldn't reproduce it which means we couldn't fix it. Then by luck and frustration I was typing as quickly as I could to run the 400th test and found that typing a new url really fast caused the browser to reload new content before it was finished loading previous content and boom everything broke. Specifically in this application the login is not handled by React. I would log in and before the browser had a chance to render the resulting page I typed in the url of the React application. This combination was enough to result in a console filled with these errors:

This error shows up once:

Warning: render(): Target node has markup rendered by React, but there are unrelated nodes as well. This is most commonly caused by white-space inserted around server-rend...

Continue Reading →

Course Setup Using Google Docs and the Canvas API

From my presentation at InstructureCon 2015:

About us

We're Atomic Jolt. We build cool stuff. We built some of the very first Canvas integrations using LTI and the Canvas API. We've been doing this as long as Canvas has been around. Anything you want Canvas to do that it doesn't already do we'll make it do it.

Demo Arigato simplifies the repetitive task of setting up the same courses, users, discussions etc. We created it for the sales team at Instructure, but you can use it in your Canvas instance as well.

Helpful resources:

Continue Reading →

Mountain Bike Gear Ratios 1x vs 2x setup

I spent some quality time on my Salsa Beargrease and on my Santa Cruz Blur last week. The Beargrease is an awesome bike. It's a lot of fun to ride and leaves you giggling as you bounce along the trail. It is however, fat. That doesn't mean it's slow but it is more bike to push up the mountain than your typical mountain bike. My Blur is a lighter but older bike. I bought it back in 2007. At that time it was high end, super awesome state of the art stuff. However, in it's old age I'm finding that it just doesn't hold up on the more technical parts of my favorite trail. On my last ride I clipped out 3 times to prevent donating skin and blood to the mountain. I don't clip out at all on the Fat bike in spite of it's lack of supension.

That's when I decided it's time to examine my options which leads me to the Ibis Ripley - quite possibly the sweetest bit of 29er technology to ever touch the dirt. It's a lustworthy steed. It will empty your bank a...

Continue Reading →