Front end vs. back end; one of the most fundamental concepts in software design. If you develop stuff at home or you're a one-man company, you need to understand both bits and how to separate them and test them. If you work for other people's companies, you may well find yourself specialising in one or the other, leading to you being unflatteringly referred to as a "back end developer", for instance. Front end developers often think the back end developers are a little obsessive, while back end developers may feel that front end developers are "light weight". But that's another story.