Anyone that has ever tried to use a programmable remote knows what is so great about discrete IR commands, but just by the name the concept seems foreign. It's pretty simple really, most remotes have one button for things like power and inputs, even though these buttons perform multiple tasks. So in the example of the power button, its function toggles between turning the thing on and off. The remote always sends the same code, but the device responds differently depending on its state. Put simple, when it is off, the IR code turns it on, and when it is on, the IR code turns it off. This is great most of the time because it cuts down on the number of buttons on the remote, while at the same time eliminates buttons that wouldn't do anything -- there's not much use for an on button when the unit is already on after all. Discrete IR codes are their mirror opposites. The best example of why you'd want a discrete IR code is when you are trying to eliminate the complexity of your system by going to single remote. If you have a system that consists of multiple devices, like say an HDTV, a A/V Receiver, and a Blu-ray player, you know the routine; pick up each of the remotes, turn the respective device on, select the correct input and eventually enjoy. This is easy enough for you now, but what about everyone else in your household, nevertheless house guests.
So in comes an activity based remote like the Harmony to the rescue. Now you have one remote that will at the press of one button send all the correct IR codes needed to watch a movie. The problem comes when the remote and the device get out of sync. Lets say the TV was already on and the remote sent an IR power toggle command? Yep, now it's off, which is obviously not what you want when you're ready to watch a movie. This is where discrete IR commands come in. The remote knows the TV should be on, so it can send a command that it knows will always turn the TV on, even when the TV is already on, so the command will just be ignored. This way the remote and the devices can never be out of sync.
This is even more important when you start talking inputs because there is practically no way for the remote to know what input the TV is currently on. So hitting the input button X number of times to get from HDMI1 to component 3 is almost never going to work correctly. So what you really need is discrete -- or separate -- IR codes for each individual input, rather than one code that toggles through 'em all.
So where do you get these little guys? Luckily many programmable remotes included them, but depending on your project, you may need to contact the manufacturer. Probably the single greatest resource for finding this type of stuff is Remote Central. The discrete IR code database and forums over there are really second to none when it comes tracking down a discrete code. Unfortunately some devices only have toggle commands, and this can either make is a real pain to use with a programmable remote, or down right impossible. Anyone who's had to deal with this no doubt is now in the habit of searching for 'em before making a new purchase.