Tu as bien fait de concevoir "sur le papier" ton site. Beaucoup de gens se jettent sur le pc avant de se poser les bonnes questions.

Pour la taille, ce qui prend de la place ce sont les photos. Mais vu ce que proposent maintenant les hebergeurs tu ne devrais pas avoir de souci , a moins que tu prévois plusieurs milliers de photos sur ton site.
La bande passante ca dépendra du nombre de visiteurs. La encore, il faudra que ton site soit tres visité pour que ce qu'on propose généralement coince.

Pour le programme tu as plusieurs solutions. :
-soit tu fais ton site "a la main" en utilisant un logiciel (il en existe plein, j'utilise dreamweaver mais certains autres sont surement plus performants)
-soit tu utilises un logiciel adapté pour faire des sites photos, comme jalbum, coppermine, phpwebgallery, ... Dans ce cas la c'est plus simple car tu choisis uniquement l'apparence que tu souhaites et tu charges ensuite tes photos. Tu n'as pas par exemple a faire la gestion des utilisateurs si tu veux restreindre certianes parties de ton site (ce qui est bien pratique pour heberger dans le meme site ses photos de famille)