If you've been driving a car with no heat, you are no stranger to suffering. There's nothing worse than shivering behind the wheel while you sit in traffic. A cold drive is miserable. Not to mention the fact that without heat your defroster is pathetic so you're forced to clear your windshield manually using McDonald's napkins.
There are a number of things that can cause your heater to fail. The first thing you need to figure out is whether or not there is heat available to your car's heating system. By available I mean that the heat from your engine is able to make its way into the passenger compartment through the heater core.
Now is a good time to describe how most automotive heating systems work. Since your engine runs by turning a mixture of fuel and air into lots (and I do mean lots) of tiny little explosions, there is a lot of heat generated. In fact, your car's engine can get very, very hot. That's why it has a cooling system. The cooling system consists of a water pump to circulate a 50-50 mixure of coolant and water through the engine, a radiator to release some of the heat into the air, a thermostat to decide when your need to cool your engine and when you don't, and coolant -- that colored liquid that circulates through the entire system. That's a basic oooling system. Add a few feet of high temperature rubber hose and a heater core to the picture and you also have a heating system. The heater core is a much smaller radiator that transfers heat into the passenger cabin. There's a fan that blows air over the fins of the heater core. This heats the air and transfers it onto your feet, where it makes you happy and warm.
Back to the troubleshooting, you need to first determine whether the heater core is filling up with hot coolant that can transfer all that heat to your feet. This is easy. Simply wait until you are driving at a good speed - I'd say 40 mph or faster, and switch the controls to heat. If you feel heat coming through any of your vents, even a tiny trickle of heat, then your heater core is likely getting hot coolant. If you feel that trickle, you are probably having a problem with your heater fan. Check your controls to be sure your fan is on, and try it on different fan speeds to see if you just have a dead speed. Still nothing? Check your fuses to be sure it's not that.
If you don't feel that trickle of heat, your heater core is not being included in the circulation of hot coolant when the engine is warmed up. First, check your coolant level to be sure there is enough coolant in there to even get to your heater core. If your radiator is very low on coolant, you'll get no heat. If your levels are ok, you either have a bad water pump or a thermostat that isn't opening. If your car has not been overheating or running hot, your water pump is not the culprit. It sounds like you are dealing with a failed thermostat. The thermostate opens and closes circuits in the cooling systems as the engine heats up. If a thermostat is stuck in the closed position, it will never allow coolant to circulate fully, so no heat for you. Replace your thermostat by removing the lower radiator hose and installing a new thermostat -- consult your repair manual for details on your car's cooling system.
There's no reason for you to drive around with no heat. In fact, if you don't have the time or inclination to trace the cause of your failed heat, a shop can do it for you, and often the repairs for this kind of problem are very reasonable.