Shohoj Bangla: A Unicode based phonetic Bangla writing software (absolutely free).
Rules for writing Bangla: html format,   pdf format
Enable Bangla Writing
Disable Bangla Writing
Quick Help:     'x': converts letters/signs of similar sound/look, 'q': consonant(c) normal <--> joint, 'v': vowel(v) normal <--> sign
bo-fola: (c)w , jo-fola: (c)y , ro-fola: (c)r , ref: rr(c) , ri(kar): rri , khondokto: txx , chondrobindu: nxx or ^, hoshonto: ,x
Use 'o' after consonant to avoid joint form. You may use 'tab' as a shortcut to disable/enable Bangla Writing.

Tips: 
1. Your computer must be enabled to support Unicode Bangla. If you are having trouble with Unicode Bangla, refer to http://bn.wikipedia.org  to see how to enable Unicode Bangla support in your computer. Your browser must also allow javascripts to run on it.

2. Free Unicode Bangla fonts and installation guide are available at http://www.ekushey.org

3. You can copy&paste what you wrote in 'Shohoj Bangla' to any other application that supports Unicode Bangla. Make sure you've chosen a Unicode Bangla font in that application.
Example: 
WordPad or Microsoft Word for Windows Users. 
GEdit or OpenOffice for Linux users (Font Example: Lohit Bengali).

4. You can also copy&paste what you wrote in 'Shohoj Bangla' to webmails that support Unicode Bangla (i.e. yahoo, gmail). If you have trouble viewing Unicode Bangla in your webmail browser, choose Unicode (UTF-8) for encoding.

5. If you want to use 'Shohoj Bangla' without internet connection, just save this '.html' file (from 'File' menu of your browser) to your computer hard drive. You can then open that file even when you are offline.

Known limitations: 
1. This software is meant for quick usage, i.e. writing emails, taking small notes etc. Trying to write long document may slow down its response (This is unavoidable since the program is running on a browser!).

Disclaimer : 
'Shohoj Bangla' is provided 'as is' without warranty of any kind. The entire risk as to the results of usage of this software is assumed by the user.