If you feel like the work you're doing is at a level that should earn you more money, you should discuss it with your manager.
It's possible that someone might think of firing you, but I think it's more likely that the worst that happens is your manager says no, and explains why.
Find out what people in your field / position with your level of experience should be making.
Ask for that amount, and explain that you feel like you've demonstrated that you can / are working at that level with [Insert examples of worthy performance, experience, etc here].
Do NOT imply to your manager in any way that you'll leave if you don't get the raise. This will make your manager defensive and it makes the experience negative for all parties.
If you think you might leave if you don't get the raise, shop around at any given point in time, even before asking for it.
Expect that when you tell your manager to leave, he may likely quiz you to find out if there's a number you would be happy with to stay on, and offer you a counter offer. You can take this or leave it, but from the many times I've seen it, I believe it's common knowledge that a majority of people who take counter offers end up working somewhere else within 24 months anyways.
If you don't get the raise, and you intend to continue working there, then ask your manager what you can do to bring yourself to the level that would be deserving of that salary. This will show him that not only do you believe that you're doing your job well and deserve the bump, but also that you're committed to continue doing so.
I'll share a similar experience of my own as well:
I was getting paid roughly the same - $17.6?/hr, or 36,000 per year as an applications administrator / developer; I'd been promoted to the position from the helpdesk, where I was getting paid 30k/yr, after demonstrating I was proficient enough to perform the work.
After what I was told was a fantastic year, in which I received a spectacular performance review, I was told that I would be receiving the highest annual raise; It turned out to be just under 3% (Everyone got stiffed that year).
I'd felt / known I was being paid significantly less than I could have been, and was essentially 'working for the experience'. I was contacted by a recruiter a few months later (If you're looking for work and you don't have experience just look for a recruiter. You'll get your foot in the door and you should be able to get a somewhat reasonable start salary) to work as a software development consultant.
They offered me 50k per year. When I decided to take this offer, my manager fought tooth and nail to get me to stay, even offering to match the salary and finally hire a second person to take on the additional work load (I'd been working 70 hours per week regularly and had frequently asked for a second person to be brought in to handle the increasing load). I ended up declining the counter and moving across country for the new position.
It was a near-50% raise. 6 months later I asked for a raise to what was closer to what people in that field made, and received another 50% bump to 75k, and that's where I am today.
If you're making less than average, don't be afraid to ask. But be reasonable, and expect that it might not happen. And know that you could likely find the same or slightly better circumstances elsewhere.
What you've noted as your salary is somewhat low for software development; you could very well find yourself getting a large boost in salary on a career move if you found the right place. Don't disclose how much you're making currently when applying for other positions.