I played a system once where you had the regular experience system that could be used to buy anything and also where each individual skill accumulated its own XP through use, leveling up when you had XP in the skill equal to the current rank of the skill. It actually worked out okay in terms of not being too complicated and combining the ability to make a choice in progress with learning from things you're doing.