わたしの持論ですが、「プログラミングは料理のようなもの」ソフトのヘルプにも書いてありますが、わたしはこう思っています。
料理だって、レシピがあれば既知のものは作れますが、新作料理を作るには、既存の知識をアレンジする知識がいりますし、食材同士の相性など、食材についても知っている必要があります。それらがあれば、いろいろな料理を作成することが出来ます。
プログラミングも同じです。ソースコードがあれば人と同じものは作れます。しかしそれでは面白くないところが違います。プログラミングでは基本的にすべてが新作料理です。ですから、関数の詳細や、その使い方を知り、既存の知識をアレンジして作っていかなければいけません。
まあ、型を知って、命令の使い方を覚えた上で、いろいろ知識をアレンジしてみればいい…と言うことなんですけどね。さきほど友達にこのことを言ったので、ちょっと書いてみました。