上達のためにはちゃんと考えて作ることと数をこなすことが重要だと思います。 そういう意味では大きなプログラムを無理に作るよりもいろいろなタイプの小さいプログラムをたくさん作る方が効率が良いと思います。 あとは自分の力だけでは限界があるので他人が作ったプログラムを解析したりアルゴリズムなどが書かれた本を読んで勉強するのがベターだと思います。(あえて車輪の再発明をするのもありだけど時間的な効率は悪い)