The alarm/door lock fob can be purchased on ebay or even Amazon for about 10 bucks each and you can program the truck to read them by yourself. There are instructions on here and around the internet. Basically you turn on and off the ignition a bunch of times, spin around, sprinkle some magic dust, and press the fob buttons.
The ignition key needs to be programmed by a locksmith or a dealer. You will need a chipped key cut. Locksmiths are cheaper than the dealers, but still isn't nearly as cheap as a regular key blank. Some dealers may insist that locksmiths can not do it - they can. It is necessary for the locksmith to have the truck, as they program the truck ignition to accept the new key ID.