Sumi Kim HachmannApr 74 min read


The Most Important Product You’ll Ever Ship
Last week at a baby shower for some of my team members, I joked that “a baby is most important product you will ever ship.” Afterwards, the more I thought it about, the more this cheesy joke made a lot of sense. Here are 13 reasons why it’s true:
- Short-term vs. long-term tradeoffs: parenting is constant tradeoff between short-term and long-term gains. Your baby is crying: you can fix the situation quickly by letting them play with your phone, but too much screen time is bad for long-term development. Or they won’t go to sleep: you can rock them and hold them to sleep, but then they learn this habit and it’s harder to teach them to go to sleep by themselves later. The list goes on. To be clear, many of the shorter term strategies make sense, but you eventually have to address them later. You can come up with hacks, but chances are you’re building up code debt which you’ll have to fix later.
- Code quality: the time you invest to write quality code will pay off later. If you instill good habits and lessons at an early age, your child will be better off and you’ll be a happier parent. Messy code will come back to bite you later.
- Fixing bugs: with a child, things break constantly, and you have to fix these bugs. Like any bug, being able to reproduce (repro) is key: you don’t want to invest time fixing spurious bugs that aren’t truly systemic. Your child is crying: is it random, or because she’s hungry? Has a wet diaper? The latter two are reproducible bugs. As our baby got older, he started waking up at night because of a leaky diaper. That happened three times before we went out and bought heavy duty night-time diapers. You also need to prioritize the bugs — you can’t fix them all at the same time.
- Pager duty: you’re on pager duty all the time. Those wake up calls in the middle of the night are all kinds of fun…
- Planning: it’s a good idea to have a roadmap for your child’s development, and like any good roadmap, it should be well-planned but leave room for flexibility so you can be agile. You want to have a plan, but don’t be too wedded to it — as Mike Tyson says, everyone has a plan until they get punched in the face.
- Estimation: good estimation is very helpful. And trust me, you are constantly underestimating how long it takes to do something…sound familiar to anyone who’s scoped a project?
- The user doesn’t always know what they want: it’s unclear in this metaphor who’s the product and who’s the user, but it doesn’t matter, it still applies.
- Prioritization: you have to prioritize aggressively, both in your own life and with what you can do with your child. You can’t do everything.
- Working in a team: for two-parent households, being part of team and nurturing this team is important. Communication is key. Hold each other accountable, but also cut each other slack when needed. Always be ready to roll up your sleeves and dive in. Do your high-pri tasks; if you don’t do them, either something bad is going to happen to your product (aka child) or your team is going to break-up.
- Data: data is incredibly important and helpful. You may think you don’t need it, but knowing granular data about your child’s eating, sleeping, and other doings can be very informative. You can identify patterns and fix problems. But it’s also important not to get too hung up on the details of the data and make sure you see the big picture and understand what’s happening qualitatively.
- Testing: if you’re trying to figure out what to do, testing can help. You can’t run true A/B tests, but you can get pretty close. Your baby has GI distress → you can cut out dairy (a likely culprit), and see if it helps the situation. If it does, great, if not, try something else.
- Goal setting: you want to set good goals. This means understanding the difference between your long-term, medium-term, and short-term goals. Be realistic, but it’s also good to have some lofty goals that may seem a little out of reach. Track your progress towards these goals. Identify key metrics so you’ll know if you’re succeeding, i.e., being able to get the baby to sleep 6 hours straight before sleeping the whole night through.
- Good design is hard work: to some extent, you have to work with the intrinsic properties of the product you have. But good design isn’t a fluke or something that just happens magically. You have to work really hard at it. Try a lot of things. Apply some rigor in what you do. Improve continuously. But remember, it’s a little bit of art and a little bit of science.
I could go on…but the metaphor is much more relevant than you may think on first glance. The one line of thinking that doesn’t apply: it’s probably not a good idea to “move fast and break things.”
Happy building and shipping!