"I would do one week of code, then spend the following week tweeting / blog posting about what I shipped — then repeat"
This right here is a very important organizing principle for indie devs. It's more effective than say doing both coding and promotion in parallel by dividing the the day into two.
In contrast, splitting the day helps to pivot more easily. I've had situations where I thought I wanted to work on a certain feature but when I talked about it, people didn't want that feature. So if I spent a week implementing it, it would have been a waste of my time.
I have tried that in my work at my startup and failed. Alternating days did not work either. Jon's recommendation about alternating weeks is what I am going to try next.
Interesting, what went wrong when you tried that? I'm expecting to be in your shoes soon, and I currently have to balance a part time job with writing the software for my startup. I'd love to learn from your experience.
This right here is a very important organizing principle for indie devs. It's more effective than say doing both coding and promotion in parallel by dividing the the day into two.