#Day01 - Exploring the World of Web Development and Introduction to Back-End Development

#Day01 - Exploring the World of Web Development and Introduction to Back-End Development

Welcome to "Code, Blog, Repeat: A 50-Day Quest for Back-End Mastery"! I'm excited to share my journey as a student of backend development with you all. Over the next 50 days, I'll be sharing everything I've learned and am currently learning about this fascinating field in my series of blogs.

Whether you're just starting out in backend development or you're already well-versed in the field, I hope you'll join me on this journey as we explore the world of backend development together. Let's learn and grow together as we delve into the exciting (and sometimes challenging) world of backend development. And if we can have a little fun along the way, even better!

Onward and upward! Firstly,

What Makes Being a Developer So Special!

The beauty of being a developer is

  • It brings great power. One can literally make anything, from a simple blogging website to a complex search engine

  • Allows you to make your product/ideas reach all nooks and corners of the world.

  • And the most interesting, All it takes, is a computer, the internet and the interest

And this quote, inspire me the most as a learner, as a developer

“Everyone Should Know How To Program A Computer, Because It Teaches You How To Think !” - Steve Jobs

Let's Go Onn! Before diving into backend development, it is important to first develop an understanding of what web development is and how it works. This will provide a foundation for further exploration of backend development and its role in the web development process.

Web-Development

Web development: it's like building your own house on the internet!

  • The 'web' part refers to the fact that we're creating something that exists on the World Wide Web - you know, that vast network of interconnected pages and apps that we all know and love.

  • And the 'development' part? That's where we get to roll up our sleeves and put all the pieces together, turning our ideas into a fully-fledged web presence. So if you're ready to create something amazing on the internet, web development might just be the perfect career for you!

Web Development can be classified into two ways:

  • Frontend Development: refers to the client-side (how a web page looks)

  • Backend Development: refers to the server-side (how a web page works)

Frontend development: Frontend development is all about creating the part of a website or web application that users see and interact with. This includes the layout, design, and interactive elements of the application. Frontend developers use programming languages like HTML, CSS, and JavaScript to build and maintain the front end of an application.

Backend development: Backend development is all about creating the part of a website or web application that powers the underlying functionality of the application. This includes the server-side logic and the management of data and other resources. Backend developers often use programming languages like JavaScript (specifically Node.js), MongoDB, Express, and React (collectively known as the MERN stack) to build and maintain the backend of an application. These technologies are well-suited for building modern, scalable, and maintainable web applications.

How frontend and backend work together

Imagine you're at a restaurant, and you want to order a pizza. You sit down at the table and pick up the menu, which is like the frontend of the restaurant. You browse through the menu, looking at all the different types of pizza they offer. When you see something you like, you make your order by telling the waiter, who is like the system's frontend.

The waiter then goes to the kitchen, which is like the back end of the restaurant. In the kitchen, there are cooks and other staff who are responsible for preparing the food. When the waiter tells them your order, they start making the pizza according to your specifications. They might need to retrieve ingredients from the pantry or check the temperature of the oven to make sure it's hot enough.

Once the pizza is ready, the waiter brings it back to your table, just like the frontend shows you the information or action that you requested.

This is just a simple example, but it illustrates how frontend and backend work together. The frontend is responsible for handling user requests and displaying information, while the backend handles all the behind-the-scenes tasks, like retrieving data and performing actions.

Let's dive in!

Back-End Development

So, what exactly is backend development? Simply put, it's the part of web development that handles all the "behind-the-scenes" functionality.

  • The backend contains a server, an application, and a database.

  • In order to communicate the database, server and application, backend technology is used

  • When the users submit their information it gets processed on the server side (back end).

This can include tasks such as:

  • Storing and organizing data

  • Running server-side scripts

  • Communicating with databases

  • Handling user authentication

  • And much more

Skills and tools needed for Back-End development:

In order to create a website. You need to have the following skills :

• Programming skills: Writing clean code which executes the logic of the program using any scripting language eg: Javascript

• Database management: All of the website's data is stored and managed by backend developers.

  • Expertise in the database is one of the prominent skills that employers seek within a backend developer.

  • Databases like MongoDB are simple to use to understand database management systems

• Knowledge of web services :

  • All modern web apps are integrated with payments, social media networks etc

  • To connect to these external APIs: we need to write the login in the backend

There are many programming languages and technologies you can use for backend development, but here I want to specially talk about the MERN stack

MERN stack

The MERN stack is a popular stack for building full-stack web applications using JavaScript. It consists of the following technologies:

  1. MongoDB: MongoDB is a popular NoSQL database used to store and retrieve data.

  2. Express: Express is a web application framework for Node.js that is used to build web applications and APIs.

  3. React: React is a JavaScript library for building user interfaces.

  4. Node.js: Node.js is a runtime environment for JavaScript that is used to execute JavaScript code on the server side.

To build a backend application using the MERN stack, you would typically use MongoDB to store and retrieve data, Express to build the API, React to build the frontend user interface, and Node.js to run the application.

For example, you could build a simple to-do list application that allows users to create, read, update, and delete to-do items. The data for the to-do items would be stored in a MongoDB database, and the API would be built using Express. The frontend user interface would be built using React, and the application would be run using Node.js.

Roles and Responsibilities of a Back-End Developer

• Backend developers are curating the structure of server-side information. • Writing business logic, server scripts, and application programming interfaces (APIs) that will eventually be utilized by front-end engineers and UX designers. • Their primary focus is to define and maintain the central database, making sure that it has high performance and responsiveness to requests from the front end.

Conclusion

In conclusion, web development involves creating and maintaining websites and web applications. It is divided into frontend development, which focuses on the visual and interactive elements of a web application, and backend development, which involves creating the underlying functionality and managing data and resources. Both frontend and backend development is important for creating a complete and functional web application. In the "Code, Blog, Repeat: A 50-Day Quest for Back-End Mastery" series of blogs, you will be sharing your journey as a student of backend development, exploring the world of backend development and learning and growing together with your readers.

Thank you for taking the time to read my blog. :)