DEV Community

Cover image for Frontend, Backend or Full-Stack
Toby
Toby

Posted on • Originally published at Medium

Frontend, Backend or Full-Stack

The choices to choose from when embarking on the journey of web development can be quite daunting for a lot of beginners. Being torn in-between choosing to be a front-end developer or a back-end developer is enough confusion for many already, and then now considering that being a full-stack developer is a thing. Full-stack; the word explains it literally. It sounds like having all knowledge.

There have been quite a lot of debates already on which is more difficult; front-end or back-end, now consider having to add full-stack in the mix; that will mean going bunkers for a newbie because it requires a lot of knowledge in many technologies, other than that from front-end or back-end. Of course, you can not achieve full-stack status without having gone past either of its subsidiaries. My discourse isn't about which is more difficult, rather it's about helping beginners to choose right from the word Go than having to make mistakes by rushing into being full-stack without having enough knowledge required in front-end or back-end. I will write about each one of them and then advise on what I will do differently if I was to learn web development all over again.

What is Front-end: Front-end development is the part of an app or website you can see and interact with. It is the beauty part of the application that makes users stay longer on the web. In web development parlance, the front-end is called the client side of an app. It is the form you fill out when signing up for an email service, the colorful image displayed on the application, the animation that excites you when you view the website etc. Front-end deals with the architecture of the application or website and the logic of how it should work.

The front-end of any website works on the browser through a JavaScript engine called the v8; that's where the data is displayed. You can't separate the front-end from the browser, else we will have nowhere to view the application we are building as a developer, and clients will have nowhere to see the presentation of our codes.

Technologies required for front-end:

  1. HTML 2.CSS 3.Javascript(React, Angular, Svelte, Vue, Ember, jQuery etc)
  2. DOM
  3. Bootstrap
  4. Django

Note: The technologies are not language specific.

What is Back-end: As the name implies, this is the behind-the-scenes side of development. This is the server side of things; those parts that can not be seen such as the architecture, back-end logic, servers, databases and application programming interface(API). This is mainly the service side of the application where requests are received, data retrieved and response is sent back to the front-end. This is where the data needed by the front-end is stored and organized.

Technologies required for back-end:

  1. Node JS
  2. Express JS
  3. Python
  4. Java
  5. Ruby
  6. Database(SQL, NoSQL, MongoDB, PostgresSQL, Oracle etc).

Note: The technologies are not language specific.

What is Full-Stack: As the name simply implies, it is the combination of knowledge both from the front-end and back-end. Being a full-stack developer takes quite a lot of experience in so many technologies because it is the end-to-end development of an application. A full-stack is an expert in the front-end design as well as everything it entails in the back-end architecture. They are the best of both worlds.

Technologies required for full-stack:
The technologies required for both the front-end and back-end side of the application.

My Advice: If you like the beauty side of things, appearances, the feel, user experiences and interactions, then the front-end is your thing, but if you like to be behind the scenes curious about how things work, and not about how they appear, go for back-end. If you would like to go full-stack, I think you should choose the one that interests you more between front-end and back-end, learn it for a long time, and possibly get a job to be experienced at it, before hopping onto the other.

Web development should interest you if you are keen to learn it, so choose the path that you think resonates with you and follow through, else you will always feel discouraged along the line. Just keep at it.

If you think this was helpful, you can Follow me and like the article. It will encourage me to write more articles like this.

Have a great weekend friends.

Top comments (0)