Depends on what the objective/use-case is really. Trouble is that technically inclined people tend to look for technical solutions to their problems even if they aren't the most efficient/sensible solution (witness some of the replies above
![laughing :D](http://pixinsight.com/forum/Smileys/default/laughing.gif)
).
If your site is some kind of astro-blog or other content-heavy site, why would you hand-code anything or get involved in HTML/CSS, etc. at all? What you need is a content management system skinned with an appropriate template. I'm thinking of something like Joomia, Drupal, WordPress or their ilk.
You can either:
- Find a free CMS host, but these usually have limitations on the amount of content you can host, limited templates/designs, custom domain names or similar.
- A paid for CMS host, either as a cheap upgrade to the above or as a full blown host. Fees range from cheap to lots of money, but the benefit of a hosted service is that you don't have to worry about the technology aspect at all.
- Host your own CMS - most of the big CMSs are open source and you can just find a cheap web host (or set up your own server if you have appropriate internet access at home or elsewhere) and then install your own CMS. Some hosts have one-click installations for the big CMS packages, but these are usually out of date fairly quickly and may not be configured the way you want. The benefit of running your own CMS is complete freedom to do what you want, but at the cost of having to install and configure it, and then spend the rest of your life patching constant new security vulnerabilities.
The beauty of a CMS is that once set up, you can simply focus on writing content and posting images through a simple UI (like this forum's UI) rather than having to write html, check it, deal with broken stuff, etc. You may have to get involved in a bit of HTML/CSS, etc. at the outset if you want to customise a standard template or skin, but it's a one-time job and then you forget about it.
The only caveat is that you may have limited bandwidth or storage, which can be a big deal if you have lots of big images to share (like we all do). It's usually easy enough to host these in an external/free photo-sharing service and link them in, but not quite as clean a solution.
Clearly if your site is more interactive then you may want something different, but even so don't rule out using a CMS with some hand-crafted pages. Here's what I do for my site:
- I use Blogger for the main CMS (now owned by Google). The interface is pretty ugly and it does have limitations which I have had to work around, but the upside is that it is free and has no bandwidth limitations and huge amounts of storage. It also plays well with Google's photo hosting (which is now rolled in to Google Plus, but is easy to use as a general purpose photo sharing system regardless).
- The templates and styling can be customised sufficiently for my needs - it is a bit hacky at times and probably the most painful bit of the whole process.
- You can post blog posts in the usual manner using a nice WYSIWIG editor, or switch to HTML view if you really want. You can also create static pages which is very handy, as you can also embed Javascript with no real limitations (unlike some free CMS hosts).
- I started out editing my 'clever' pages directly in the HTML view of the editor but quickly outgrew that. I now use the free Komodo Edit to do all my HTML/JavaScript editing for the non-blog pages. It's probably the best free code editor I have found (after trying out about a dozen options), and covers most major languages. I set the pages up so they can work locally for debugging, and then cut/paste the relevant bits in to the Blogger interface when I am ready to go live.
- For debugging, probably the best tool is Google Chrome - it has a full suite of developer tools under the 'Tools' menu and will let you do breakpoints in your Javascript, watch expressions and even hack around with the HTML and CSS on the fly in the browser without constantly having to reload the page (really handy for solving all those annoying float/div/padding/margin problems).
- Eventually my Javascript got very large, so I wanted to host it externally to the HTML - this is a problem in Blogger since you can't upload/use anything like that - just edit HTML files. I figured out that I could actually upload my Javascript and JSON files to Google drive, share them publically from ther and then reference them in the blogger HTML. It can be a bit of a pain, but on the whole I can do almost everything I want for free. The only thing I have paid for is a .uk domain name rather than using the default free domains under Blogger (and even there I registered it myself - you don't have to pay some inflated price for a custom domain registration).
- The only other tool I use is SourceTree (free) combined with a free (that word again) BitBucket account. I can do proper Git-based source control which is very handy for more complex web projects.
Hope that gives you some ideas.