Good practice on beginning coding
<p>The following is my figured-out steps:</p>

<ol>
<li>Do a requirement analysis first. Separate them into features.</li>
<li>From the features, extract a minimal system with a minimal set of major features to develop.</li>
<li>For each feature, try to figure out a simple yet flexible framework to do it.</li>
<li>Pay attention to code readability and unit testing when coding the features.</li>
</ol>

<p>The I can add new features one by one based on the minimal system following similar steps as above. How is it? Any good suggestion on it? My question does not focus on post-coding, such as debugging, refactoring, and so on. Thanks.</p>
