At this time I write code in the 'Solidity realtime ethereum compiler and runtime' chrome extension. And I test my codes on the main net. Are there better programs or how can I get test ether?
Definitely use the Mix IDE if you are capable of downloading it for the time being. It's the best debugger available for your solidity programs in case you want to make sure of what your program is going to do. Solidity in Visual Studios is only really an option if you run MS (and you'll run into problems down the road with it...support isn't on the high end for MS). Plus the done goofed with some of the syntax highlighting.
If you intend on having it interact with other languages/building a full out dapp, I recommend checking out these lovely bits.
Eris PM - Jobs manager for Solidity.
Embark - Dapp framework, needs a bit of updating, but it works very well
Dapple - Package manager for Solidity, complete with testing framework. Flows well into Nexus's DappSys framework.
Populus - A framework for Dapps written completely in Python.
Truffle - Similar to Embark...a little more up to date and a little more complex than Embark IMO.
If you are comfortable using the command line interface, I would use the main Ethereum node client
geth. This is the raw stuff, but you get to see how the Ethereum works. See Go - Home.
There is a step-by-step guide to deploying the simple Greeter contract on your own private dev network at Deploying the Greeter contract via the geth CLI is not registering in my private blockchain .
And there are some links to Solidity code examples at Where can I find some Solidity / Smart Contract source code examples? .
Here are some other tools you may want to consider: