DEV Community

Jashua
Jashua

Posted on

What does the terms front-end and back-end cover? (opinions)

For example, whenever I hear the term front-end I think about sketching, design, color theory, UI/UX, coding...

For back-end: databases, coding, algorithms, devops, systems...

My definitions could be completely wrong, but that's just how I personally perceive them.

How do you perceive those two terms? :)

Top comments (4)

Collapse
 
mxldevs profile image
MxL Devs • Edited

For me it boils down to whether a task is customer-facing or not.

So for example in a client-server model, you have a server somewhere that the customer doesn't need to know about, and then you have your website or app that the customer downloads and plays around with.

The front-end might not have to worry too much about how the data is stored in the database, but they still need to figure out how to communicate with the server and how to manage it in the app. So someone that's doing the front-end may need to know that UI/UX stuff, and also their HTML/CSS/JS to actually turn their designs into code.

Of course, you could always divide the front-end tasks so that you have a designer that is specifically focused on coming up with the look&feel, while a front-end dev who might not specialize in UI/UX as much but can build fantastic websites or apps will focus on implementing the designs.

Collapse
 
jouo profile image
Jashua

Nice point of view :D

In your opinion, would DevOps and Cloud services be part of back-end? or are those their own thing?

Collapse
 
mxldevs profile image
MxL Devs

In the context of application development, you can host your database in the cloud. You can use cloud services to draw a map on your app. It's like asking whether "javascript" is a front-end or a back-end language.

Also in the context of application development, I'd say DevOps plays a different kind of role.

Collapse
 
jingxue profile image
Jing Xue

Your definitions sound pretty reasonable to me. :-) I would probably draw the line at "front-end is the stuff that runs and/or is presented on your user's computer, whereas back-end runs on your server." The point of distinction is there is stuff that you simply cannot allow to execute anywhere outside your server - validation, transaction control, etc., and then there is the rest of the stuff that you want to keep close to your user for their better experience.