It seems from what i've read that you get bitcoins by 'mining' which essentially means you put software on your computer and run calculations to solve very complicated numerical problems. Once the software has solved a particular problem, you receive a bitcoin (or a fraction of a bitcoin).
At first I thought that there was some practical use in solving these functions, i.e. perhaps companies needed these things solved and were eseentially paying for computing power, but it seems they don't. They're just created and solved for the purpose of bitcoins.
There are groups that link up to solve these complicated numeric problems, called 'blocks'. The bitcoin, or fraction of it then goes in your personalised wallet, and you can either buy things with it or trade it for dollars. I've read that people in charge of IT departments are running this software on dozens, perhaps hundreds of computers making extra money, so it would be hard to compete with that.