Why stop there, then? At character creation start. What would prevent a player from hording xp and waiting to see what they needed and spending it "on the fly" to get exactly the skill they needed?
I don't think I'd want that for every game, but it's not necessarily such a bad idea. In effect, you'd just be playing character generation rather than doing it before play starts.
"What the target is too far for my pistol?" "No body is able to shoot that rifle proficiently?" "BAM, I just learned heavy" "GIve me the rifle". While you "could" do that, how does that help the spirit of the game? I couldn't see an argument against it, given the aforementioned "learn on the fly" notation.
You wouldn't necessarily need to characterize that as learn on the fly. It might just be a revelation of skill the character already possessed.
Player A: "Nobody is able to shoot that rifle proficiently?"
Player B: <Marks off 5 xp> "I am. We all hunted womp rats back on Tatooine. Give me the rifle."
The FATE quick start rules use this to decent effect. Just be able to justify it with your background. Of course, that applies more for the first rank (or first instance) rather than any additional ranks.