Web Development

updated on 08 Feb, 2022 11:40

Web development can include anything from creating a single static page of plain text to creating complex web applications, electronic businesses, and social network services. Every Web Developer must have a basic knowledge of HTML, CSS, and JavaScript

What is Web Development

A broad definition would be that Web Development is working on whatever "lives" on the Internet. What lives on the Internet? That covers anything from a simple html page, a REST API, to a full-fledged app like Uber or AirBnb.

How to Approach Learning about Web Development

If you want to learn how to build something, first you need to understand the fundamentals. In this case, the fundamentals of Web Development is the Internet and the multiple parts of it.

What is the Internet

In short, the Internet is a bunch of computers spread all over the world sharing the same network. We will call them servers because their purpose is to serve anyone with a web browser (we call them clients) with information. Web browsers know how to interpret the data received from the servers and display it in a human understandable format to you. Go here for more in depth learning

The request-response cycle

In web development, the request-response cycle is the process by which a client (most of the times, a web browser) requests a web page from a web server, the web server responds with the requested page, and the web browser then displays the page. On the serverside, the request-response cycle is handled by a web server application, such as Apache, Nginx, or IIS. As you can see, this exposes that there are two layers where things happens:

Frontend

Frontend development is the process of creating the user interface and interactivity of a website or application. This includes the design of the website or application, as well as the coding of the HTML, CSS, and JavaScript that makes it all work. Read more about frontend development here

Backend

Backend web development is the process of developing the functionality of a website that is not seen by the user. This includes creating and managing the databases that store the website's data, developing the code that makes the website work, and setting up the server infrastructure that hosts the website. Backend developers typically work with a variety of programming languages, including Python, PHP, Ruby on Rails, Java, NodeJS, etc. Read the detailed section about backend here

Development Operations (DevOps)

Although it is theoretically a part of backend, devops has developed into a sum of tasks and practices that is becoming increaseagly complex for a regular backend engineer to learn easily. The range of adoptions of these practices for web applications is flexible, depending on the technical and management requirements. In summary, devops take care of:

  • Continuous integration
  • Continuous delivery
  • Automated testing
  • Configuration management
  • Monitoring and logging

Read more about development operations in its own section here

Theoretical Concepts

A theoretical concept proposes a solution to a specific problem
Junior Level

A cache is a high-speed data storage layer that stores a subset of data in order to serve future requests for that data faster than accessing the data's primary storage location allows.

0
0
Absolute Beginner Level

HTTP is a protocol which allows the fetching of resources, such as HTML documents. It is the foundation of any data exchange on the Web and it is a client-server protocol, which means requests are initiated by the recipient, usually the Web browser.

0
0
Absolute Beginner Level

The HTTP request is the backbone of Web Development. It's the way users interact with the application on the web server. Read this article to understand everything about the HTTP Requests.

0
0
Absolute Beginner Level

The information provided by the server in response to the client's request is known as the HTTP Response. Read this article to learn everything about it.

0
0
Absolute Beginner Level

When an user visits a web page usually the backend application keeps track of the user by identifying the user and saving data about the interactions into a session.

0
0
Absolute Beginner Level

An API (Application Programming Interface) over the web which can be accessed using HTTP protocol. There are many types and have many uses.

0
0
Junior Level

REST is an architectural style for distributed hypermedia systems that stands for REpresentational State Transfer.

0
0
Junior Level

Simple Object Access Protocol (SOAP) – is an XML-based messaging protocol for sending and receiving data between computers. The SOAP protocol is an implementation of the XML specification.

0
0

Associated Technologies

All technologies related to this category

Expressjs

Express.js is a free and open-source web application framework for Node.js
0
1

Plotly

Plotly is a python package which is used to present data in an interactive and customizable way
0
0

PHP

The PHP Hypertext Preprocessor (PHP) is a programming language that allows web developers to create dynamic content that interacts with databases. PHP is basically used for developing web based software applications
0
1

Python

Python is an interpreted, high-level and general-purpose programming language. Python's design philosophy emphasizes code readability with its notable use of significant indentation.
0
0

Redis

Redis is a very fast memory storage that can be used as a database, cache, and message broker. It is open source (BSD licensed). Strings, hashes, lists, sets, sorted sets, and many other data structures are available in Redis
0
0

Pandas

Pandas is a free and open-source Python programming language Library providing high-performance data manipulation, processing and analysis tool using its potent data structures.
0
0

Theano

Theano is a Python package that enables you to write, optimize, and quickly evaluate mathematical equations using multi-dimensional arrays
Python Permissive License Web DevelopmentBackend
0
0

Laravel

Laravel is a free, open-source PHP web framework, created by Taylor Otwell and intended for the development of web applications following the model–view–controller (MVC) architectural pattern and based on Symfony. Some of the features of Laravel are a modular packaging system with a dedicated dependency manager, different ways for accessing relational databases, utilities that aid in application deployment and maintenance, and its orientation toward syntactic sugar.
0
0

Django

Django is a high-level Python Web framework that promotes rapid development and simple, practical design. Django is a trademark of the Django Software Foundation and can be freely used in a variety of projects.
0
0

Flask

Flask is a WSGI web application framework that is lightweight. It's built to make getting started simple and quick, with the ability to scale up to more complex applications.
0
0

FastAPI

FastAPI is a web framework for building APIs with Python 3.6+ based on standard Python type hints that is modern and fast (high-performance).
0
0

Expressjs

Express.js is a free and open-source web application framework for Node.js
0
1

Tailwindcss

Tailwind CSS is a utility-first CSS framework for quickly creating unique user experiences.
0
1

Docker

Docker is a tool that allows developers to create, deploy, and manage applications using containers.
0
0

Linux

Linux is a group of open-source Unix-like operating systems based on Linus Torvalds' Linux kernel, which was first released on September 17, 1991. A Linux distribution is a collection of Linux packages.
0
0

Systemd

systemd is a set of fundamental components for a Linux system. It includes a system and service manager that starts the rest of the system as PID 1.
0
0

Supervisord

Supervisor is a client/server application that allows users to monitor and control a variety of processes running on UNIX-like operating systems.
0
0

Kubernetes

Kubernetes (K8) is an open-source system for automating deployment, scaling, and management of containerized applications.
0
0

Ansible

Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy. It's one of the fastest ways to automate server side work.
0
0

Javascript

Makes the internet interactive. Run by browsers but also on servers, it's a lightweight, interpreted, programming language.
0
0

HTML

HTML, or HyperText Markup Language, allows web users to use elements, tags, and attributes to create and structure sections, paragraphs, and links.
0
0

CSS

Cascading Style Sheets (CSS) is a way for setting up display properties such as color, font, position, spacing, etc to Web documents.
0
0

Vue Typescript

It is a vue js version which uses typescript
0
0

Emberjs

Ember.js is a successful, tried-and-true JavaScript framework for creating cutting-edge online apps.
0
0

ReactJS

React is an open-source, front end, JavaScript library for building user interfaces or UI components. It is maintained by Facebook and a community of individual developers and companies.
0
0

VueJs

Vue.js is a progressive JavaScript framework, which is used to build UIs (User Interfaces) and SPAs (Single-page Applications).
0
0

Angular

AngularJS is an open-source JavaScript structural framework for dynamic web apps.
0
0

Vue Typescript

It is a vue js version which uses typescript
0
0

Emberjs

Ember.js is a successful, tried-and-true JavaScript framework for creating cutting-edge online apps.
0
0

Plotly

Plotly is a python package which is used to present data in an interactive and customizable way
0
0

Scrapy

A powerful and flexible python web crawler solution that can be used for web scraping. The most popular python crawler.
0
0

Pandas

Pandas is a free and open-source Python programming language Library providing high-performance data manipulation, processing and analysis tool using its potent data structures.
0
0

Nginx

Nginx, stylized as NGINX, nginx or NginX, is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache. The software was created by Igor Sysoev and publicly released in 2004. Nginx is free and open-source software, released under the terms of the 2-clause BSD license
Public Domain Web DevelopmentServers
0
0

Pelican

Pelican is a static site generator written in Python that requires no database or server-side logic.
0
0

Resources

Articles, tutorials, courses or books

How does a web session work

Oct. 28, 2013 by machinesaredigging Article

1 Reviews
A schematic article describing in detail the usage and role of sessions. It goes from sessions in general, used in all kinds of applications, and narrows it down to the particular case of web applications.

An overview of web development as a whole - what to learn about

Nov. 25, 2019 by Coder Coder Video

1 Reviews
A good simple overview of what web development as a category for software means. It is a short intro on what you, as an aspiring web developer, should start learning.

What is the world wide web?

Jan. 2, 2014 by Ted-Ed Video

No reviews yet. Contribute
A 4 minute video overview of what the Web is through the example of a city.

How The Web Works - The Big Picture

Jan. 2, 2019 by Academind Video

No reviews yet. Contribute
From request to response - how does the web work? Let's have a look at a high-level overview. 12 minute video

How the Internet Works for Developers - Overview & Frontend

Jan. 2, 2014 by LearnCode Video

No reviews yet. Contribute
A 15 minute video about how a browser gets and displays a web page. It's an overview for understanding the process.

HTTP response status codes

Jan. 4, 2022 by mozilla.org Article

No reviews yet. Contribute
When a server receives an http request from a client, it responds with a status code. The http status code is a standardized way of specifying what happened to the request on the server.