I am a software engineer and a mom. At work, I build tools that help people make great decisions about SEO. At home, I am learning to guide the development of my 1-year-old daughter, Maple. When Maple first came home from the hospital, I hoped that some of my coding instincts would be helpful in my interactions with her. I knew that she was a complex system, but I thought that if I could just learn the best patterns and find the right frameworks, then everything would be okay. Over the last year, I have learned (or rather, confirmed for myself) that the engineer’s mindset is not a mother’s best friend.
Soon after Maple was born, I found myself, as many new parents do, experiencing debilitating sleep deprivation. Certainly, other parents had already run into this issue and figured out how to fix it. I hoped that I’d be able to find a sequence of specific steps that I could take to remedy the situation. I scoured blogs, asked friends, read books, and ended up with a (sleepy) brain full of sometimes contradictory ideas and pieces of advice. I chose a method that appealed to me philosophically, and followed its suggestions step by step. Things got better, but the nighttime wakings returned in a few days. I tried a different approach, making sure to stay true to the methodology. Some progress, and then some backsliding. If Maple’s inner workings were so customized, so different from those of other babies, how was I going to know which advice to follow?
WET vs. DRY
During the days of my maternity leave, I often found myself bored. I felt like I was typing
over and over again, letter by letter by letter, h-u-n-t-i-n-g a-n-d p-e-c-k-i-n-g. I longed for a loop or a cron job, but settled for expanding my skillset. Playing songs on ukelele was more fun, and I felt like I was learning something new, but it was still an adjustment to do the same thing over and over again. Turns out parenting is about making things WET (Wonderful Every Time) and not about staying DRY.*
As time went on, Maple learned new skills, each one making her a little bit more fun to play with. When I first noticed her responding to her name, I would constantly say, “Hi, Maple” to her, and reward her with kisses when she turned towards me. After a few weeks of this game, I noticed Maple waving, and suddenly we had a new favorite exchange. To my dismay, another month later, I realized that Maple wasn’t responding to her name as consistently as she had before. As a developer, my instinct was to put my baby through a complete test suite every day to make sure that she was only gaining new abilities, not forgetting old ones. Frankly, I would have loved to have a QA system in place to do that for me automatically so I could concentrate on the shiny new functionality. As a mom, though, I had no automated tests to back me up.
My engineering skills were getting me nowhere, but a new skillset was emerging. I had to be patient, work with what I had, wait for new features to be pushed no matter how much I wanted them yesterday. It turns out that I am not an engineer when it comes to my daughter’s growth, but a power user, waiting with bated breath for every new release.