I Don’t Speak Your Language: Frontend vs. Backend

frontend-backend

“I Don’t Speak Your Language” is a series of articles designed to give you a quick overview of all of the tech terms in our industry. Knowing these terms will help you in your communications and allow you to build better products more efficiently.

There has been a lot of discussion in the blog comments lately about what constitutes design and development when it comes to the web. I’m trying as best as I can to help you, our dear readers, in your journey to becoming the best web professional you possibly can.

Our goal is to listen to you and create content that is relevant to the discussion and the challenges that you face, so I thought I would take this opportunity to highlight the differences between design and development. My goal here is to lay the foundation for further discussion and see if we can define the lines together.

Free trial on Treehouse: Do you want to learn more about backend and frontend web development? Signup for a free 14-day trial on Treehouse.

The differences between design and development actually lead to more of a discussion around frontend and backend web work. Let’s start with the frontend…

Front End

When we discuss the “frontend” of the web, what we’re really talking about is the part of the web that you can see and interact with. The frontend usually consists of two parts: the web design and front end web development.

In the past when someone discussed development it usually referred to the backend, but in recent years there has been a real need to differentiate between designers that worked strictly in Photoshop and those that could code HTML and CSS. It went even further when designers crossed the lines to working with JavaScript and jQuery.

So now when we discuss the term “web design”, we’re really talking about those that work with Photoshop and Fireworks, and those that code using HTML, CSS, JavaScript or jQuery (it might be important here to state that jQuery is a compiled library of Javascript).

Everything that you see when using the web is a combination of HTML, CSS, and JavaScript all being controlled by your computer’s browser. These include things like fonts, drop-down menus, buttons, transitions, sliders, contact forms, etc.

Now to make all of this become a reality and to store the information that you put in the frontend elements, we need technology to make it happen. Enter the backend…

Backend

The backend usually consists of three parts: a server, an application, and a database. If you book a flight or buy concert tickets, you usually open a website and interact with the frontend. Once you’ve entered that information, the application stores it in a database that was created on a server. For sake of ease, just think about a database as a giant Excel spreadsheet on your computer, but your computer (server) is stored somewhere in Arizona.

All of that information stays on the server so when you log back into the application to print your tickets, all of the information is still there in your account.

We call a person that builds all of this technology to work together a backend developer. Backend technologies usually consist of languages like PHP, Ruby, Python, etc. To make them even easier to use they’re usually enhanced by frameworks like Ruby on Rails, Cake PHP, and Code Igniter that all make development faster and easier to collaborate on.

Many web professionals that are just getting into the field may have heard a lot of people talking about WordPress.