What a year. Every week another beloved celebrity passed away and our electoral system gave us a 2.9 million vote loser as president. People I love voted for a guy who bragged about sexually assaulting women, thinks climate change is a Chinese hoax, and wants to build a registry of muslim Americans.
It’s hard to talk about interesting work projects when a presidential candidate publicly called on the Russians to hack our politicians and then blamed the white house for not stopping it.
It’s seems trivial to tell you which TV shows I thought were interesting when we’re about to have a president who won’t release his tax returns and won’t properly divest his business interests. We can only assume he’ll use his position to benefit himself and his family.
But let’s do it anyway.
I read fewer books in 2016 than I have in the past few years.
The New Turing Omnibus by Alexander Dewdney
The Little Big Things by Tom Peters
Annihilation by James Vandermeer
Authority by James Vandermeer
The Good Earth by Pearl S Buck
Running: A Love Story by Jen Miller
Martian Time Slip by Philip K Dick
The Castle by Franz Kafka
Work RJMetrics was acquired last summer by Magento, so I have a new job as the engineering manager for Magento Analytics. It’s essentially the same position I had before, but our team is now improving analytics for the Magento community.
In Q1 of 2016 I worked on a project called the SQL Report Builder, which allows you to build charts directly from SQL queries. I may have built more chart builders than anyone.
Alex Kleger and I won the first ever Magento Analytics hackathon in November. We created a feature that allows customers to add new data sources without impacting their update times.
What’s going on? Are you getting fired? Your last performance review was fine!
You walk to your boss’s office. HR is sitting there with her.
Oh crap, oh crap, oh crap.
HR walks out as you walk in. You sit down, and your boss says, “Hey I just wanted to bounce an idea off of you.
Meetings shouldn’t have surprises. Spoil them.
Tell everyone what you’re going to say before you go. Give away the ending. Put all the good parts in trailer. And the bad parts. And the song that’s going to play in the montage while your team builds the A-Team-esque vehicle that is needed to do the job.
If your meeting doesn’t have spoilers, then it’s probably not worth having.
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.
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?
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.
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.
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:
Interesting points are WWI, WWII, and putting together a swingset.
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.
I probably spent more time making the music for Rocketbooster than programming it. All the songs are available here on soundcloud.
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.
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.
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.
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
Master of None
The Formula Shiraz by Small Gully Wines
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
A few weeks ago I showed this slide during a talk I gave to clients of RJMetrics.
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.
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
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 communication – Principles 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.
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.
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
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
The Lego Movie
House of Cards
Wolf of Wall Street
7. Space Bounce Game
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.
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.
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.
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.