Recent Posts

Cross Functional Scrum Teams

Teams are also cross-functional; Team members must have all of the skills necessary to create an increment of work. - Scrum Guide

PyGithub Quickstart Examples

PyGithub is the most popular GitHub API SDK for Python. Their documentation is very light on examples. They seem to think this is fine. Prime candidate for t...

Management 101

Coming off some annual management training, I realize that I need to write some of these learnings down, in order to actually internalize them. This is mostl...

Using Points vs Hours for Estimates

One of the key innovations of Agile is that estimates should NOT be in hours, but in points. But it doesn’t just intuitively make sense. As a result, many te...

What makes a compelling product?

Words matter. When we use the term “product”, what do we mean? Are we talking about the same thing? In the context of tech startups, we often mean product wi...

Designing for the Mental Model

Software is typically more complicated under the hood than it looks on the surface. A good product presents a simple and consistent user interface. Ideally, ...

QA 101 - How to Write a Bug Report

The purpose of a bug report is to enable an engineer to fix the bug. In companies with no dedicated testing/QA resources, bug reports get generated by many d...