En fait. quand on conçoit un projet de développement, "programmer", c'est un peu la partie rapide qu'on fait à la fin, une fois que tout est en place, qu'on sait tout ce qui doit etre là.
Par exemple : programmation d'un jeu.
D'abord il faut concevoir le jeu : comment le joueur utilisera le jeu, comment sera l'interface. (sans compter les niveaux, le scénario, les dialogues, l'ambiance, les graphismes, etc...) Toutes les règles doivent etre bien établies avant. (Ex : s'il y a un combat comment ça se passe ? ) Est-ce que le jeu doit être rapide et réagir vite ? ou est-ce plutot un jeu d'énigmes qui doit etre beau et complet ?
Il faut prévoir tout cela à l'avance, car une fios la programmation réalisée, si on veut changer un petit truc après, ça peut être énormément de boulot (rafistolage, bricolage, voire même tout recommencer!).
Par contre pour concevoir correctement, il faut que tu saches toi-même, à mon avis, un minimum de choses sur la programmation (différents langages, bibliothèques / moteurs utilisés par d'autres programmes).
Pour plus d'infos à ce sujet je conseille l'excellent http://www.developpez.com qui possède une partie "débutant" dans ses forums, avec des liens vers des explications plus claires et plus complètes que les miennes.