So, having used a Mac for a HTPC for several years, I am intimately familiar with the current state of remote controls for the Mac.
Everyone knows there are a gazillion remote controls for Windows. Not that I've ever actually used one, but I'm assuming they all work as advertised at the very least.
For the Mac, the current situation is not as funny, however.
The first problem is the Apple Remote, while it excels at what it is designed for, it's utterly useless for anything beyond that. Ok, useless may be a tad of an exaggeration, but let me talk a bit about my needs for a remote control for the Mac:
User configurableAt the very least, all the buttons on the remote should be user configurable, with a global mapping and a per-application mapping.
Home buttonIt needs to have a button that goes to "home", which is either a global menu, or anything that I would consider to be home.
0-9 buttonsFor EyeTV, of course, to go to channel 0-9 in a jiffy.
Transport buttonsPlay/pause, stop, rewind, fast forward, next and previous track.
Auxiliary buttonsUsually colored buttons, that I can assign different functions in different contexts, like subtitles and zoom in DVD player and aspect ratio and full screen in Eye TV, for instance.
Dashboard buttonA button that shows the Dashboard at any time.
Directional buttonsThe usual left/right/up/down/ok and menu - i.e. what the Apple Remote offers. Only.
Uses Infrared technologyFor the sole reason that I want to use my programmable remote, not the original remote.
Apple RemoteAs I said, the problem is with the Apple Remote, since it shipped with many Macs and became the standard for remotes on the Mac, so every third party solution revolves around that one, which is a shame. It has six buttons and twelve actions (with each button having a press and a long press to trigger different IR commands).
Sofa ControlA pretty basic mapping tool, that has a load of presets for different applications, but it's fairly limited when it comes to global mapping and per-application mapping since all is done through AppleScript and you have to write most of it yourself. It can be done, but it's a tiresome process. However, Sofa Control is likely the best alternative.
Remote BuddyThis is the premier tool for remote controls on the Mac, unfortunately, it sucks. It is based around behaviours and has a myriad of on-screen help menues and it's actually hard to get things done easily. It does have per-application mapping, but no global mapping. To turn on per-application mapping, you activate "behaviours" and that in turn always shows a big help screen that explains what you just did, before actually showing the per-application action menu.
MiraA small and simple tool that on first glance does what is expected. It supports "DuoPress" which is the second state of any Apple Remote button. Unfortunately, you can't set the "hold" press to anything you want. The single press is fully customizable to be an applescript, hotkey or anything, but the "DuoPress" can only be something from a fixed list of actions. That sucks.
Other Remote ControlsWhile Remote Buddy was built around the Apple Remote from the beginning, it now supports other remotes as well. Well, it does support some EyeTV remotes if EyeTV is running, but other than that it only support remotes such as the bluetooth playstation 3 remote and the Wiimote (the controller for the Nintendo Wii), also via Bluetooth. The Sony remote is very full-featured, but it's a bluetooth remote and as such can't be used with a universal remote.
ATI Remote WonderUnfortunately, this remote control isn't being sold anymore as far as I know, it's very hard to get by, but is by far the best Remote Control solution for the Mac there is. It does use RF and not IR so I can't emulate it with my Pronto, but its control panel is full-featured and does a very good job of giving you full control in any application. So for the time being, this is by far the best alternative for a Remote Control on your Mac