1. An intermediary computer that does set-up and filtering for another (usually more powerful but less friendly) machine (a `back end').
2. What you're talking to when you have a conversation with someone who is making replies without paying attention. "Look at the dancing elephants!" "Uh-huh." "Do you know what I just said?" "Sorry, you were talking to the front end."
3. Software that provides an interface to another program `behind' it, which may not be as user-friendly. Probably from analogy with hardware front-ends (see sense 1) that interfaced with mainframes.