Are you creating a website that runs on a Windows server or Unix/Linux based server?
What language are you planning on using? Is it proprietary?
What kind of database are you connecting to? Is it proprietary?
You can choose to use things like
MySQL and
PHP to develop a website. These are free and don't cost anything.
Or you could choose to work with something like ASP.NET. You can download a free version of Visual Studio (
Visual Studio Express) that'll let you develop web applications, or if you want you can spend money on a Professional or Team suite of Visual Studio (which costs quite a bit). ASP.NET applications can connect to a variety of databases (MySql, MS Sql, Oracle.....)
It doesn't have to cost a lot to start developing a web site.
If you don't already have a machine to develop with, you may have to purchase it. In this case you'll have to consider which operating system to put on the machine (Windows, Linux, Unix...) and the cost will vary based on what you pick.
You could choose to host your own website, in which case you'll have to purchase a server computer (likewise an operating system for the server). These don't have to be very powerful machines unless your server's expecting a huge amount of activity. If you're planning on hosting your own website you may have to consider purchasing a static IP from your service provider. These are not cheep (when I looked into getting one it was going to cost $800/Month Canadian from Rogers) and are meant for business use. You don't have to purchase a static IP though. You could use a tool like
NoIP which will map your domain name to your server even though you have a dynamic IP. This is significantly less money (if you're using it for personal use it's free)...you could probably use this until your website starts seeing a lot of activity and the move up to a static IP.
Or you could choose to have your website hosted by someone else....in which case you'll be paying a monthly fee for hosting costs. I personally don't like using third party hosting providers simply because I like to be in control of the web server so that I can install what I need to, and configure things that some providers won't allow in order for my applications to work.
-Frinny