Just Keep Shipping
The past few weeks have been a bit of a struggle. I've been working on a handful of different features for two of our apps, EZ Importer and EZ Fulfill. I had 3 features I was planning on building for EZ Importer and 2 features for EZ Fulfill. My plan was to switch back and forth between the apps. The challenges came when I started working on the EZ Importer features, there was something blocking me from completing each feature. Even though I didn't finish any of EZ Importer features, when I thought about what I got done during the day or week I still felt productive. This got me thinking about staying consistent and constantly "shipping".
No matter what I'm doing, I always try to be consistent. When I'm consistent over a long period of time I find that I'm most successful. When I'm writing, I find I'm producing my best quality when I'm writing every day. I've recently started running and it's the same thing. When I'm running 3-5 days a week, I find that I'm getting better and hitting my goals. When I start missing days or weeks, I fall off a cliff.
It's no different when I'm working on one of my products. Even though I didn't deploy 3 of the 5 features I wanted, I still completed them and I learned something about the product I was working on. Whether I determined it wasn't worth spending the time on the feature or if there was a technical hurdle preventing me from releasing it, I felt happy that I made progress and solved the problem. I didn't get frustrated and after years of working on different products, I've come to realize that this is part of the process. I look at this as a form of "shipping". In the end I felt accomplished and the product was better for it, even though the feature wasn't deployed.
The other big part of this is staying positive and not allowing myself to get frustrated. I've talked in the past about my meditation practice, taking breaks and having a workout routine. It may not seem like it on the surface, but all of these practices help keep my mind fresh. I'm not frustrated when I sit down and I'm able to think clearly. I've given myself permission to take care of myself first and that allows me to think clearly. That's what this is all about it, it's not always about deploying code or crossing something off a checklist. It's about building what's right for your customers and helping them. Keeping myself positive, feeling accomplished and being able to think clearly helps me prepare for the next time this happens.
Just Keep Shipping
In the end, I didn't let any frustration prevent me from moving to the next feature, project or product. Not shipping three of those features has actually helped prepare me for the next step and kept me motivated so I show up the next day. The most important part of the process is ensuring I'm getting better as well as my product. If I don't stay disciplined and consistent, I may feel less accomplished because I'm not consistently showing up and shipping. I'll start to feel like I'm not getting as much done and I may try and force the features in even though it's not best for my product or my customers. In the end that helps no one.
The best thing to do when you're starting a new habit or have found your sweet spot on an existing one is to stay consistent...and keep shipping.