Arduino with IR and nice interface

I am planning a project that I think should be pretty simple. The problem I am having is that I am a complete noob to arduino. I have never touched the programming end, I have always made circuits with simple components.

I have a device that is controlled by IR remote control. I am certain that the protocol is proprietary and not available. I would like to build a system that can learn this code, button by button, then replay the buttons back to control the device on a schedule I set. In other words, the device is highly controllable, but you have to be sitting there with the remote to do it. I want to be able to set schedules and walk away, then the arduino will execute the commands at the specified times giving me the control whenever I schedule it.

The other thing I would really like is if the arduino could be plugged into the computer whenever I want and I could reprogram it through a simple interface. I don't necessarily want to have to dig through the code and add to it every time I want a new schedule. I would like an interface where I could edit current "events" (for example, on at 8am off at 7pm), or create new events (flash at noon for 10 minutes) without effecting events already set. An added bonus would be having slider style effectors for the controls that are not just on and off but have a range. If that isn't possible then simulating a number of button pushes would be fine. Imagine the volume control on a tv. A slider could designate the volume ideally, representing it as analog. But just pushing the volume button repeatedly would achieve the same result. I hope that makes sense.

Anyway, any direction on this project would be greatly appreciated.

I would like to build a system that can learn this code, button by button, then replay the buttons back

Like in this tutorial?

WOW! How did I not find that after hours of google searching? That is an excellent place for me to start. I will really dig into that page and try to digest at least some of it.

Any ideas on making the interface/reprogramming of the schedule more user friendly?

Looking forward to read about your research results and the final project.