The front-end is everything involved with what the user sees, including design and some languages like HTML and CSS. The front end of an application is user-focused. It is what the user sees, touches and experiences, how the user interprets the interface into an experience.
Back end technologies are server-side programming languages i.e. focused on driving a server, an application or a database, and consist of languages like PHP, Ruby, Python, Java and Perl.
In front end development, the center of gravity is placed on the user and his or her direct interaction with the website. A common problem is presenting the content of the website in an easy-to-read fashion while still accommodating to variety of screens users have on their devices.
Alison provides free online front end programming courses in HTML5, CSS3 and web page design.
Check out Alison's Web Programming Learning Path.