A friend just made me realize that having a baby is exactly like releasing a software product.  It starts by someone else picking an arbitrary release date, then you kind of drift along with unclear requirements for a while (is it a boy or a girl?).  Periodically, the release date gets changed for no apparent reason.  Is it April 20th or isn’t it?  Management is just throwing a dart at a calendar, I think.  There are lots of stakeholders that you aren’t really sure *why* they are stakeholders (in-laws).  The requirements constantly shift, too.  First, it’s just about cleaning out a spare room, then someone decides that the room needs to be pink.  But not that color of pink!  No, this other color of pink.  Hmm, that doesn’t look good, so the requirements are augmented, and you now have to add polka dots.  Oh, and by the way, the system has to be a dancer, not a jiu-jitsu champion, even though dancing is a useless feature.  It culminates with a sprint to finish, lots of pain and screaming, and finally the actual deployment.  Unfortunately, there was no time to implement the preference for the cry feature, and someone decided that feature should be enabled by default for some reason, and now you get to spend many days and nights cleaning up all the crap that the deployment causes while repeatedly patching the system (changing diapers).  😀