When designing a web page, I learned that planning ahead is very important. Spending some time on finding a good structure (structure for navigation within the page as well as a structure how and where to store the files in order to ease managing the site) saves a lot of time once the site is up and running and it has to be maintained.
I think it is most important to provide a logical and easy to use navigation structure throughout the site and to have a handsome design of the site without overloading it with graphic (or even worst: with animated graphics).
I hope I had some success, which means I hope you like my site (or at least you do not dislike it).
There is a lot of articles and sites in the web describing good design of web pages and they constantly change so there is no point in listing any specific links here.
For editing the HTML code I use the Phase5 editor. It is a very useful tool with lots of handy features. It supports among others templates. Before I switched to Server Side Includes (SSI) I used this feature for the menus on this site.
Since I figured that writing html code for every single page for every single photo is quite boring, very time-consuming and causes lots of errors, I set up some perl scripts that (almost) automatically generate the html code for a photo preview page and the pages of the photos shown on that preview page (and of course all the relevant links). The Site Map page is also generated off line by a perl script.