Knowing which type of software to use to develop your site will be dependent upon your needs, your goals and what you are comfortable with.
In terms of a professional program, one of the best you can get is Macromedia Dreamweaver (www.macromedia.com). Dreamweaver provides in-depth functionality and integrates its own file manager, code snippets, database manager and even customizes itself for different codes. The best part about Dreamweaver is the validator, letting you know if your code is bad or not and where to fix the problems. You can even customize the validator to how you want your code to be (ie - do you want your code to be simply HTML 4 compliant or do you want your code to be XHTML compliant?). Furthermore, Dreamweaver includes reference books to help you code. The CSS reference is invaluable. For many, Dreamweaver is by far the best software for web development you can find. It's no wonder the vast majority of web devlopers prefer it over any other software.
For those who know Adobe programs (ie - Photoshop) and are not too familiar with coding, you may enjoy Adobe's GoLive (http://www.adobe.com), quite simply because it shares a similar interface and GUI as the rest of the Adobe line of software. In most cases, GoLive can accomplish many of the same tasks as Dreamweaver.
Then there's the famous FrontPage . Historically, FrontPage is known to insert code you have not directed it to insert. FrontPage has no validator, so you have no idea if you're code is cross-browser compliant, and your file management is very limited. For many, FrontPage falls behind the sophistication and likes of Dreamweaver and GoLive.
There is another Macromedia program: Macromedia Contribute. This contender is nothing more than a WYSIWYG (what you see is what you get) editor and does only what you tell it to. No code, no hassle - this seems to be one of the simplest web editors to use and was designed for people who know absolutely nothing about code but still want to make a half decent attempt at administrating and maintaining their site. The only downfall is that your site must be specifically setup to support contribute, but in the long run that's not bad because your logs are saved and tracked on the server, which will help an admin diagnose the problems if there are any.
Of course any advanced coder can use pretty much any of these programs and have no problems using straight handcode. You could even use notepad to code. Although there is good code and bad code, it's best that you choose software you're comfortable with. Everyone should make a firm and long investigation of the software available for use. All of these programs offer trials. Hopefully this will give people a good idea of a direction they can begin to look when they begin looking for software.
http://www.monstersmallbusiness.com/build/build-software-comparison.asp