Blogging on Medium

I wrote a few blog posts for work using Medium and they were pretty good.

Use an Updated-At Column in Your MySQL Table (and make it update automatically)

Multidimensional Engineering Management

The latter even included my first published D3 block!

Medium is an interesting blogging tool. Sometimes I love the UI and sometimes I find it frustrating. The sparse UI reduces cognitive load and allows you to focus on writing, which feels great, but there were times when I just wanted to be able to type some html and it fought me on it. I settled for pasting it in from another site.

I don’t think I’ll continue doing it for any personal blogging. I want to own my own long form content and I think it’s important to keep your work in a place that won’t get shut down on a whim when the VC money runs out or if the parent company closes the door.

Real Work

I want to talk about real work and fake work.

Does this sound like your work culture?
Does this sound like your work culture?

We have 1:1’s, standup meetings, team meetings, check-ins, all-hands, and serendipitous meetings at the coffee machine. How long did you spend writing google docs, emails, slack chats, gchats, hipchats, and wikis? What percentage of your day comprised of tuning your vimrc/emacs/bashrc and organizing your trello lists? Are you patting yourself on the back for reaching Inbox Zero?

How many times today did a customer notice something you did?

Sam Altman writes about fake work for startup founders:

In general, startups get distracted by fake work. Fake work is both easier and more fun than real work for many founders. Two particularly bad cases are raising money and getting personal press; we’ve seen many promising founders fall in love with one or (usually) both of these, which nearly always ends badly. But the list of fake work is long.

I tell founders to consider how directly a task relates to growing. Obviously, building and selling are the best. Things like hiring are also very high on the list—you will need to hire to sustain your growth rate at some point. Interviewing lots of lawyers has got to be near the bottom.

So now we have rules for founders/CEO’s:
Real work: Building/Coding and sales, probably hiring.
Fake work: Interviewing lots of lawyers.

Does Sam think lawyers are unnecessary? No, but he realizes picking the 1st or 2nd best lawyer is indistinguishable from choosing the 12th best when it comes to your business. Finding the best employees is a better use of a CEO’s time.

But what about everyone else? How do we distinguish between real work and fake work?

Toyota’s legendary production system strives to eliminate waste everywhere. When talking about waste, Toyota’s Shigeo Shingo observed that only the last turn of a bolt tightens it.

"Only the last turn of a bolt tightens it" - Shigeo Singo
“Only the last turn of a bolt tightens it” – Shigeo Singo

That final turn in software engineering is shipping code. There are other activities so closely tied to deploying code that they are undoubtedly Real Work, such as programming and reviewing another engineer’s code. What about everything else?

I define Real Work as
A. Work that creates an immediate and positive change in your product/service
B. Work that is a direct constraint to the completion of A
C. Work you have been uniquely hired to do.

Type C has to be included because many jobs don’t touch A and B, but someone has to do them. Google famously hired a masseuse, Bonnie Brown, when they had only 40 employees. Was she improving our search results in 1999? Maybe not, but Larry and Sergei thought it was critical to their success. For Bonnie, she should be confident that shipping each great massage (type C) was Real Work as it had been identified by the business as type B work.

So why make the distinction between A, B, and C at all? Why not just say Real Work is what you were hired to do and leave the question of whether it’s valuable or not to the person who hired you. It’s because most of our jobs have a degree of autonomy in the the tasks we take on. We should prioritize type A tasks and have a high standard for B tasks. We should eliminate any B tasks that don’t enhance our ability to complete A tasks. Fake work is anything that doesn’t live up to that standard.

Things you can do tomorrow to minimize Fake Work
1. Skip a meeting you don’t need to attend
2. Turn your weekly meeting into a bi-weekly meeting, or even monthly
3. Be concise in communications. Be polite, but formality in email is dead.
4. Don’t jump into conversations just because you can. Comments can be useful, but they also add cognitive load to an issue.
5. Eliminate, automate, or delegate menial tasks.
6. “Table it!” Brian Sloane introduced this to me. If two people are having a drawn out discussion in a meeting, put your hand on the table (or in the air) and say “Table it” to indicate that this discussion should continue in another channel at a later time.

Things you can do tomorrow to maximize Real Work
1. Figure out what real work means for you in your job.
2. Schedule time specific tasks. Treat them like appointments.
3. Don’t check your email until you’ve been at work for an hour. This is an old Tim Ferris trick. If you’re feeling brave, forego Slack, too.
4. Observe the habits of people who get things done. Shamelessly steal them.

Minimizing fake work doesn’t mean you should eat lunch at your desk everyday. The advantage of focusing on Real Work is so you can perform at a high level and still live your life.

Best Things This Year (2015)

Speaking at Data Point Live in San Francisco
Speaking at Data Point Live in San Francisco

If 2013 was the year I shook up my life, and 2014 was the year I learned how to succeed in it, 2015 was about challenging myself not to accept the easiest trajectory. 2015 was a busy year and it threw interesting things my way. Sometimes that was difficult, even hopeless, but I will never forget you 2015.

1. Public speaking – I did so much public speaking in 2014 that I felt like I needed a break from it this year, but that certainly didn’t happen. I spoke at 6 events this year
Data Point Live, New York
Data Jawn, Philadelphia
Data Point Live, San Francisco
Games using the HTML5 canvas, Philly Javascript Devs
Thinking in Data, Data Science Philly
Directives as Components, Angular-Philly

It would be shocking to me if I did more than one or two events in 2016, but that’s what I said last year, too.

2. bengarvey’s brain – I created a twitter bot using twitter_ebooks to guess what I’m really thinking about. He tweets about every 9 hours and if you favorite his tweets, he might start bugging you. Some choice tweets:

3. Rocket Booster – I worked on a fun Jetpack Joyride clone with the kids called Rocketbooster. It’s not 100% complete, but it’s fun. It takes forever to load all the game assets, so be patient.

Rocket booster
You can play as Sasha or Owen. Collect stars to power your jetpack and get further.

I probably spent more time making the music for Rocketbooster than programming it. All the songs are available here on soundcloud.

4. Work
I’m coming up on 3 years at RJMetrics and just got promoted to Engineering Manager. I wrote cool stuff including our new Data Warehouse Manager, a huge improvement to dashboard sharing, and some crazy tricks to get data out of Amazon Redshift. I also spent an extended tour of duty leading our support team to crush the support queue.

The blue line is our net support queue
The blue line is our net support queue

5. Work Part 2
I won the RJMetrics chili cook off thanks to the now “award winning” Ben’s Awesome Chipotle Chili.

6. Odyssey of the Mind
I’m coaching Sasha’s Odyssey of the Mind team this year! We just started practicing and it’s been wild.

om

7. Trello
I’ve been using Trello for years, but now I’m using it for everything including a shared grocery list.

8. The Bentindo Entertainment System
I gave Jake a raspberry pi powered game system for Christmas this year I white-labeled as the Bentindo. This was the image on the back of the box.

Back of the Bentindo box
Back of the Bentindo box

9. Books I Read
REAMDE by Neal Stephensen
Principles of Product Development Flow by Donald Reinertsen
The Call of Cthulu by HP Lovecraft
Ender’s Game by Orsen Scott Card
The Life Changing Magic of Tidying Up by Marie Kondo
What If? by Randall Munroe
The Innovators by Walter Iassacson
Welcome to the Monkey House by Kurt Vonnegut
The Martian by Andy Weir
The Golden Compass by Philip Pullman
Axe Cop Vol.1 by Malachi Nicole
The Subtle Knife by Philip Pullman

10. Moves / TV
Interstellar
Master of None
Cosmos
Black Mirror

11. Wine
The Formula Shiraz by Small Gully Wines

The Formula
Incredible

12. Music
Still listening to The Blow’s Paper Television weekly. Ok daily.
My favorite album released this year is Ratatat’s Magnifique

Other albums I enjoyed (not necessarily new)
Bleached’s Ride Your Heart
Bass Drum of Death’s GB City
Lana Del Ray’s Ultraviolence (but wow is it uncomfortable)
Bully’s Feels Like

Playlist of songs I’m super into right now

Especially this one

Previous years
2014
2013
2012
2011

10 Things I’m Doing After Reading The Principles of Product Development Flow

A few weeks ago I showed this slide during a talk I gave to clients of RJMetrics.

Books on Flow and Throughput
Books on Flow and Throughput

The Goal is legendary in my family as a guide for unlocking throughput in manufacturing. Garvey Corp’s entire business model is helping companies exploit constraints and increase profits. It got me off to a great start in manufacturing, but the reality of workflow always seemed a little more complicated than Goldratt’s stories lead you to believe.

Later I devoured Jeffery Liker’s The Toyota Way, which describes the infamous Toyota Production System. It seemed to me that if you carried Goldratt’s constraint theory logically throughout your production system, you’d probably end up with TPS or something like it. As good as it is, the Toyota Way’s strategies always seemed better suited for a different type of manufacturing. One where you were producing roughly the same thing, slightly customized. My manufacturing reality had tremendous customization and variability.

The Principles of Product Development Flow by Don Reinertsen was what I was looking for. Here are ten things I’m incorporating into my workflow. (Manufacturing bits now instead of machines, of course)

1. Smaller projects – We’ve been shrinking our projects at RJMetrics for a while now, but initially I resisted it. “Some projects just take a long time, but are still worthwhile,” I thought. In 2015, however, the equations making projects worthwhile change fast. It’s better to hit a 2 week checkpoint and say “let’s keep going” than go for 6 months and say, “maybe we shouldn’t have done this.” I’ve even been making a conscious effort to make my pull requests smaller (under 50 lines) and more frequent.

2. No more backlogs – Keep TODO issues in a short list, but kill off the long collection of items that linger forever. This is super hard for a GTD’er like me, where you’re supposed to get everything out of your head and into a system. That system breaks when you get multiple people adding items to a backlog that will never get touched. The real backlog is in your brain. If it’s important enough, it will stay there bugging you to be completed and eventually you’ll add it to your short todo list. The key reason why backlogs are bad is this: Your team is smarter today than it was in in the past. Your issue backlog was created by an inferior version of your team.

3. Late assignment of issues – No one gets assigned anything until they can work on it. Have you ever been stuck in a grocery line behind someone who is super slow? You’ve already committed to that line! You’re stuck there because the physical constraints of a grocery store force assignment of a few customers to a register. When matching devs with issues, wait until the last possible second to make the assignment so that it doesn’t get stuck behind another slower than expected issue.

4. Fast feedback is critical – In 2015, everyone says we need to ship an MVP and iterate, but we still don’t always do it. There are many excuses: “The design isn’t ready”, “It’s not valuable without feature X,” etc. Not only is fast feedback worth overriding these concerns, it’s the best plan for fixing them.

5. Start teams smaller, then bring in reserves – “Make early and meaningful contact with the problem.” Planning is good, but plans get shattered once work starts. Things always turn out to be harder than we thought and the best way to find out where we are is to have someone start working on the project. A single developer will have a better picture in one week than a plan ever will. This is one reason why hackathons pay off so well for RJMetrics. Bring in other team members in week 2 and their start will be better focused. Plans should set goals, but be light on implementation details until work beginds

6. Use Little’s Formula – to provide more accurate response times for issues.

7. Make queues visible – Luckily we have a great BI tool to use for this called RJMetrics. Reinertsen recommends Post It Notes to track queues, but the book was written BT (Before Trello).

8. Queue = Todo + In Progress – Don’t just count items that are waiting. The item you’re currently working on is still in queue. The team’s issue queue should be judged on the sum of Todo and In Progress, not just one.

9. Have a framework for when to escalate team communicationPrinciples says to use regular meetings over irregular meetings, in person vs email, etc. I’m hesitant to escalate the communication due to the transacational costs associated with context switching, but when do you decide to stop emailing and start chatting? When do you stop chatting and start speaking? I’m going to start using the following framework for communication and adjust it:
– Email goes to chat after 3 emails
– Chat goes to in person after 10 messages

There’s no 10th item. Don’t feel like you have to fill every meeting/PR/project with content to fit the allotted time.

Best Things This Year (2014)

What I like about 2014 was that it was more about things I built, rather than found and enjoyed.

1. Lineage
How do you browse 250 years of genealogical data? My Aunt Peggy has been doing genealogical research for decades and I created a system to view this data and show family relationships. I demoed Lineage at the February Philly JS Dev Meetup and at the Digital Analytics Association Symposium in October.

Lineage screen shot
Lineage screen shot

2. Public Speaking
I did more public speaking this year, mostly talking about data visualization, AngularJS, and some of my projects, including Lineage and the Bulldog Budget.
Data Visualization and Expression at the Digital Analytics Association Symposium
Data Expression with D3 at the Philly Javascript Meetup
14 Slides on ng-repeat at Angular Philly
How the !@#$ and I Going to Upgrade to Angular 2.0? at Angular Philly

Digital Analytics Association Symposium
Digital Analytics Association Symposium

3. Kids Morning Adventure
I productized the morning routine I invented for getting my kids ready for school. Morning Adventure gamifies the process, motivating kids to be more independent and makes sure we get to school on time. I can’t imagine life without it now.

Kids Morning Adventure
Kids Morning Adventure

4. David Lynch
I got to see David Lynch give a talk at the opening of his art exhibit at PAFA.

David Lynch
David Lynch

4.1 More
I also got to see Biz Stone, a Peregrine Falcon, and this lady who skied to PATCO on a snowy day.

5. Books I read this year
The Design of Everyday Things by Don Norman
Thank You Eliot Rosewater by Kurt Vonnegut
Diamond Age by Neal Stephensen
Mother Night by Kurt Vonnegut
Thinking Fast and Slow by Daniel Kahnemann
Ingenius by Jason Fagone
All the World is Lost by Patrick Hipp
Eloquent Javascript by Marijn Haverbeke
A Feast for Crows by George RR Martin
A Dance with Dragons by George RR Martin

6. Movies / TV
This year I watched and enjoyed
True Detective
The Lego Movie
House of Cards
Regular Show
Wolf of Wall Street
Django Unchained

7. Space Bounce Game
A bunch of us at RJMetrics volunteer to spend time mentoring 8th graders from Philadelphia schools. We built Space Bounce with the kids during our fall session. It uses a great javascript library for making HTML5 games called Phaser.

Space Bounce
Space Bounce

8. The Report Builder
I spent 2014 at RJMetrics writing the best chart builder in the universe. I’m super proud of what we accomplished and how much we improved the experience of building charts.

RJMetrics Report Builder
RJMetrics Report Builder

9. Viz War @ Philly Tech Week
My colleague, Austin Lopez, and I participated in Philly Tech Week’s Data Viz War and we won Best Pro Team for our NCAA tournament visualization.

NCAA 2014 Dendrogram
NCAA 2014 Dendrogram

10. Monument Valley
I didn’t play too many new games this year, but I enjoyed Monument Valley with Sasha and Owen. You help guide Ida through a beautiful, Escheresque world. It reminded me a lot of Sword and Sworcery.

Monument Valley
Monument Valley

Read about my previous years
Best Things This Year (2013)
Best Things This Year (2012)
Best Things This Year (2011)

Presentation on Data Expression

Here’s a link to the presentation I gave on October 30th at the Digital Analytics Association Symposium on Data Visualization and Expression. It’s improved since I gave my first talk on the subject at IgnitePhilly 11.

One of my goals this year was to do more public speaking at bigger events. I’m glad I did it, but preparing for this talk drained me mentally in the weeks leading up to it. In retrospect I should have learned more about the association and the speakers. I think it would have mitigated some of my nervousness. It’s important to push the limits of your comfort zone and giving this talk definitely expanded mine.

I’m not sure what’s next for me in public speaking, but I’m planning a blog post on what Data Expression means and how I think it differs from Data Visualization.

Here are some of my favorite tweets from the event.

2014 Digital Analytics Association Talk on October 30th

I’m excited to be giving a talk on Data Expression at this year’s Digital Analytics Symposium in Philadelphia.

Some information about the event:

Thursday, October 30, 2014
12:30pm – 6:30pm
University of Pennsylvania Houston Hall
3417 Spruce Street
Philadelphia, PA 19104-6306

Digital Analytics – Art, Science or Both?

Stitching together the infrastructure, systems, methods and processes to find and gather vast amounts of digital data from disparate sources can require skills not unlike those of a scientist.

Transforming that data into compelling, actionable storylines, replete with elegant data visualizations that can motivate organizations to act, can require skills not unlike those of an artist.

Introducing Kids Morning Adventure!

So excited for this! After a year of work, I’m finally releasing my gamfication system for getting kids ready for school, called Kids Morning Adventure. It ended up being very similar to my RPG for kids, Kids Dungeon Adventure, but refined for the busy morning schedule.

Kids Morning Adventure
Kids Morning Adventure

Ingenious Review

In America there is no shortage of digital inventors, tinkerers, hackers, and dreamers. Companies form around the most ridiculous ideas, test them in the marketplace, often with unpredictable and surprising results. It’s an exciting time for innovators in the information age.

Go back one hundred years and you’ll find a similar state in the automobile industry. Look at this surprisingly long list of defunct automobile manufacturers!

Seven by Illuminati Motor Works, one of the teams competing for the Automotive X Prize
Seven by Illuminati Motor Works, one of the teams competing for the Automotive X Prize

Is there a peculiar combination of cleverness, determination, and blind optimism that compelling Americans to push the boundaries of convention and create great things? Or has America lost its ability to hack on cars forever?

Edison2's Very Light Car
Edison2’s Very Light Car

Jason Fagone’s book Ingenious: A True Story of Invention, Automotive Daring, and the Race to Revive America follows several teams competing to win the Automotive X Prize, a $10 Million cash award to someone who can demonstrate a production ready vehicle capable of traveling 100 miles at 100 MPGe or better. The contestants are not skunkwork projects at GM or R&D teams from Ford. They’re people building cars from scratch in their garage. They’re small racing teams using their expertise to increase MPG instead of MPH. There’s even a team of high school kids from West Philly.

Working in manufacturing for most of my career, I was not surprised to find there are still many car hackers out there. Without spoiling anything, the most frustrating part of Ingenious is how well the teams were able to do and how little anyone seemed to care about what they were doing. Government and industry pays lip service to the prize and the ingeniousness of the teams, but fuel economy growth in vehicles is still flat. I don’t think anyone believes industry will be held to the proposed standard of 54.5 MPGe by 2025.

But industry put at least $1 Million into an app that lets you send only the message, “Yo” to your friends.

I enjoyed Ingenious. It pairs very well with My Life and Work by Henry Ford, which captures the spirit of the early 20th century automobile industry (Note: Ford’s autobiography is a manufacturing masterpiece, but skip the anti-Semitic chapters that start around #12)

VizWar @ Philly Tech Week 2014

Fellow RJMetrician Austin Lopez and I competed in a data visualization contest/hackathon called VizWars at WHYY last night. It was hosted by Acumen Analytics and Tableau.

NCAA 2014 Dendrogram
NCAA 2014 Dendrogram

The goal was to come up with the best visualization from either NCAA Basketball tournament statistics or Earthquake data they provided. This is what we came up with.

The D3 animation shows the progression of each round in a clustered dendrogram. Each team is colored to make it easier to follow their path through the tournament. We won Best Pro Team, although we would have loved another 20 minutes to get more things working. Our goal was to set the line thickness to various game metrics like point differential, # of fouls, turnovers, etc.

Out of 5 teams, we took the title of Best Pro Team (of which I think there were only two).