Web developmentcommonly refers to the functions correlated with developing websites for hosting via intranet or Internet. The Web development process in corporates factors like Web design, Web content development, client-side/server-sidescripting and network security configuration, among other functions. Web development is also known as website development.
Web development is the coding or programming that accredits website functionality, as per the owner’s demands.It mainly associates with the non-design facet of building websites, whichconsists of coding and writing mark-up.
Web development ranges from generatingplain text pages to complex Web-based applications, social network applicationsand electronic business applications.
The Webdevelopment hierarchy is as follows:
- Client-side coding
- Server-side coding
- Database technology
Web Development – An Overview
Web developmentmainly consists of building, creating, and maintaining websites. It consists of aspects such as web design, web publishing, web programming, and data base management.
While the terms “web developer”and “web designer” are often used frequently, they do not mean the same thing. Technically, a web designer only designs website interfaces using HTML and CSS. A web developer may be muddled in designing a website, but mayalso write web scripts in languages such as PHP. Additionally, a web developer may help maintain and update a database used by a dynamic website.
Web development consist of many types of web content creation. Some examples include hand coding web pages in a text editor, designing a website in a program like Dream weaver, and updating a blog via a blogging website. In last few years, content management systems likeWordPress, Drupal, and Joomla have also become crowd-pleasing in means of webdevelopment. These tools make it easy for anyone to create and edit their ownwebsite using a web-based interface.
While there are considerable methods ofdeveloping websites, there’s usually a trade-off between simplicity andcustomization. Therefore, most large businesses do not prefer content management systems, but instead have a dedicated Web development team that designs and manage the company’s website(s). Small organizations and individuals are more likely to choose a solution like WordPress that serve abasic website template and simplified editing tools.
1. Definition of Web Development?
Web development is the process of building websites and applications for the internet, or for a private network known as anintranet. Web development is not concerned with the design of a website;rather, it’s all about the coding and programming that powers the website’s functionality.
From the most simple, static web pages to social media platforms and apps, from ecommerce websites to content management systems(CMS); all the tools we use via the internet on a daily basis have been builtby web developers.
Web development can be broken down into three layers: client-side coding (frontend), server-side coding (backend) and database technology.
Let’s take a look at each of these layers in more detail.
Client-side scripting, or frontend development, refers to everything that the end user experiences directly. Client-side code executesin a web browser and directly relates to what people see when they visit a website. Things like layout, fonts, colours, menus and contact forms are all driven by the front end.
Server-side scripting, or backend development, is all about what goes on behind the scenes. The backend is essentially the part of a website that the user doesn’t actually see. It is responsible for storing and organizing data, and ensuring that everything on the client-side runs smoothly. It does this by communicating with the frontend. Whenever something happens on the client-side — say, a user fills out a form — the browser sends a request to the server-side. The server-side “responds” with relevant information in the form of frontend code that the browser can then interpret and display.
Websites also rely on database technology. The database contains all the files and content that are necessary for a website to function, storing it in such a way that makes it easy to retrieve, organize, edit and save. The database runs on a server, and most websites typically use some form of relational database management system (RDBMS).
To summarize: the frontend, backend and database technology all work together to build and run a fully functional website or application, and these three layers form the foundation of web development.
The Difference Between Web Development and Web Design
You might hear the terms web development and web design used interchangeably, but these are two very different things.
Imagine a web designer and web developer working together to build a car: the developer would take care of all the functional components, like the engine, the wheels and the gears, while the designer would be responsible for both the visual aspects — how the car looks, the layout of the dashboard, the design of the seats — and for the user experience providedby the car, so whether or not it’s a smooth drive.
Web designers design how the website looks and feels.They model the layout of the website, making sure it’s logical, user-friendlyand pleasant to use. They consider all the different visual elements: whatcolour schemes and fonts will be used? What buttons, drop-down menus and scrollbars should be included, and where? What interactive touch points does the user interact with to get from point A to B? Web design also considers the information architecture of the website, establishing what content will be included and where it should be placed.
Web design is an extremely broad field, and will oftenbe broken down into more specific roles such as User Experience Design, User Interface Design and Information Architecture.
In short, a web designer is the architect, while the web developer is the builder or engineer.
2. A Brief History of the World Wide Web
The web as we know it today has been decades in the making. To help understand how web development works, let’s go back to where it all started and consider how the internet has evolved over the years.
1965: The first WAN (Wide Area Network)
The internet is essentially a network of networks, connecting all different WANs. WAN stands for Wide Area Network, a telecommunications network that spansa large geographical distance. The first WAN was established in 1965 at theMassachusetts Institute of Technology. Later on, this WAN would be known as ARPANET. It was initially funded by the Advanced Research Projects Agency ofthe US Department of Defence.
1969: The first ever internet message
In October 1969, UCLA student Charley Kline sent the first ever internet message. He tried to send the word “login” to a computer at the Stanford Research Institute via the ARPANET network, but the system crashed after the first two letters. However, about an hour later, the system recovered and the full textwas successfully delivered.
1970s: The rise of the LAN (Local Area Network)
The early 70s saw the development of several experimental LAN technologies. LAN stands for Local Area Network, a computer network that connects nearby devices in the same buildings — such as in schools, universities, and libraries. Some notable milestones include the development of Ethernet at Xerox Parc from1973-1974, and the development of ARCNET in 1976.
1982 – 1989:Transmission Control Protocol (TCP), Internet Protocol (IP), the Domain Name System and Dial-Up Access
In 1982, Transmission Control Protocol (TCP) and Internet Protocol (IP) emergedas the ARPANET protocol, and TCP/IP remains the standard internet protocoltoday. In 1983, the Domain Name System was established, providing a moreuser-friendly way of labelling and designating websites (i.e. careerfoundry.cominstead of a series of numbers). In 1987, Cisco shipped its first router, andin 1989, World.std.com became the first commercial provider of dial-up internetaccess.
1990: Tim Berners-Lee and HTML
In 1990, Tim Berners-Lee, a scientist at CERN (the European Organization forNuclear Research) developed HTML — Hypertext Mark-up Language. HTML became, andstill is, a fundamental building block of the internet.
1991: The WorldWide Web Goes Mainstream
With the rise of the visual internet browser, the World Wide Web made its way into the main stream. As of 2018, there are more than 4 billion internet users around the globe.
3. What Does a Web Developer Do?
The role of the web developer is to build and maintain websites. Web developers can work in-house or freelance, and the specific tasks and responsibilities involved will vary depending on whether they’re working as a frontend, backendor full stack developer. Full stack developers specialize in both the frontendand backend; we’ll go into more detail about what a full stack developerdoes later on.
Web developers are responsible for building a productthat meets both the client’s needs and those of the customer or end user. Web developers collaborate with stakeholders, clients and designers in order to understand the vision: how should the final website look and function?
A large part of web development also revolves around identifying and fixing bugs in order to constantly optimize and improve a website or system. Web developers are therefore keen problem solvers, regularly coming up with solutions and work arounds to keep things running smoothly.
Of course, all web developers are proficient incertain programming languages. However, different developers will work with different languages depending on their specific job title and area of expertise. Let’s take a look at the different layers of web development and the associated tasks in more detail.
Learn more: What is a typical day in the life of a web developer?
What does a frontend developer do?
The frontend developer implements the website’slayout, interactive and navigational elements such as buttons and scrollbars,images, content and internal links (links that navigate from one page toanother within the same website). Frontend developers are also responsible forensuring optimal display across different browsers and devices. They will code the website in such a way that makes it responsive or adaptive to various screen sizes, so that the user gets the same experience whether they’revisiting the website on mobile, desktop or tablet.
Frontend developers will also carry out usabilitytests and fix any bugs that arise. At the same time, they will consider SEO best practices, maintain software work flow management, and develop tools that enhance how the user interacts with a website in any browser.
What does a backend developer do?
The backend is essentially the brains behind the face(the frontend). A backend developer is therefore responsible for building and maintaining the technology needed to power the frontend, consisting of three parts: a server, an application and a database.
The code that backend developers create ensures that everything the frontend developer builds is fully functional, and it is the backend developer’s job to make sure that the server, application and databaseall communicate with each other. So how do they do this? First, they useserver-side languages such as PHP, Ruby, Python and Java to build the application. Then they use tools like My SQL, Oracle and SQL Server to find, save or edit data and deliver it back to the user in frontend code.
Just like frontend developers, backend developers will liaise with the client or business owner in order to understand their needs and requirements. They will then deliver these in a number of ways depending on the specifics of the project. Typical backend development tasks include creating,integrating and managing the database, building server-side software using backend frameworks, developing and deploying content management systems (for ablog, for example), as well as working with web server technologies, APIintegration and operating systems.
Backend developers are also responsible for testing and debugging any backend elements of a system or application.
What does a full-stack developer do?
A full stack developer is someone who understands, and can work across, the “full stack” of technology: i.e. both the frontend and the backend. Full stack developers are experts in every stage of the web development process, meaning they are well-equipped to get hands on, but can also guide on strategy and best practices.
Most full stack developers have gathered many years ofexperience in a variety of different roles, giving them a solid groundingacross the entire web development spectrum. Full stack developers areproficient in both frontend and backend languages and frameworks, as well as inserver, network and hosting environments. They are also well-versed in both business logic and user experience.
Web developers may also specialize in mobile app development, either for iOS or Android.
iOS developers build apps that run with the iOS operating system — the one used by Apple devices. iOS developers are fluentin Swift, the programming language that Apple created specifically for their apps.
Android developers build apps that are compatible with all Android devices, such as Samsung smartphones. Java is the official programming language for Android.
4. Programming Languages, Libraries and Frameworks
In order to build websites and apps, web developers work with languages,libraries and frameworks. Let’s take a look at each of these in detail, as well as some other tools that web developers use in their day-to-day work.
What are languages?
In the world of web development, languages are the building blocks that programmers use to create websites, apps and software.There are all different types of languages, including programming languages, markup languages, style sheet languages and database languages.
A programming language is essentially a set of instructions and commands which tell the computer to produce a certain output.Programmers use so-called “high-level” programming languages to write sourcecode. High-level languages use logical words and symbols, making them easy for humans to read and understand. High-level languages can be classified as either compiled or interpreted languages.
C++ and Java, for instance, are compiled high-level languages; they are first saved in a text-based format that is comprehensible for human programmers but not for computers. In order for the computer to run the source code, it needs to be converted to a low-level language; i.e. machine code. Compiled languages tend to be used to create software applications.
Interpreted languages like Perl and PHP do not need to be compiled. Instead, source code written in these languages can be run through an interpreter — a program that reads and executes code. Interpreted languages are generally used for running scripts, such as those used to generate content for dynamic websites.
Low-level languages are those that can be directly recognized by and executed on the computer hardware; they don’t need to beinterpreted or translated. Machine language and assembly language are somecommon examples of low-level languages.
Markup languages are used to specify the formatting of a text file. In other words, a markup language tells the software that displays the text how the text should be formatted. Markup languages are completely legible to the human eye — they contain standard words — but the markup tags are not visible in the final output.
The two most popular markup languages are HTML and XML. HTML standsfor Hyper Text Markup Language and is used for the creation of websites. When added to a plain text document, HTML tags describe how this document should bed is played by a web browser. To understand how HTML works, let’s take the example of bold tags. The HTML version would be written as follows:
<b>Make this sentence bold!</b>
When the browser reads this, it knows to display that sentence in bold. This is what the user sees:
Make thissentence bold!
Learnmore: What is HTML? A beginner’s guide
XML stands for eXtensible Markup Language. It is a markup language very similarto HTML; however, while HTML was designed to display data with a focus on howit looks, XML was designed purely to store and transport data. Unlike HTML, XMLtags are not predefined; rather, they are created by the author of thedocument. The point of XML is to simplify data sharing and transport, platformchanges and data availability, as it provides a software andhardware-independent means of storing, transporting and sharing data. You can learnmore about XML and how it works here.
Style sheet languages
A style sheet is basically a set of stylistic rules. Style sheet languages are used, quite literally, to style documents that are written in markup languages.
Consider a document written in HTML and styled using CSS (Cascading Style Sheets), a style sheet language. The HTML is responsiblefor the content and structure of the web page, while CSS determines how this content should be presented visually. CSS can be used to add colours, changefonts, insert backgrounds and borders, as well as to style forms. CSS is also used to optimize web pages for responsive design, ensuring they adapt their layout to whatever device the user is on.
Learn more: What is CSS?
Languages are not only used for building websites, software and apps; they are also used to create and manage databases.
Databases are used to store huge volumes of data. The Spotify music app, for example, uses databases to store music files, as well as data about the user’s listening preferences. Likewise, social media apps like Instagram use databases to store user profile information; every time a user updates their profile in some way, the app’s database will also update.
Databases are not designed to understand the same languages that apps are programmed in, so it’s essential to have a language that they do understand — like SQL, the standard language for accessing and manipulating relational databases. SQL stands for Structured Query Language. It has its own markup, and basically enables programmers to work with the data held in a database system.
What are libraries and frameworks?
Web developers also work with libraries and frameworks. Despite much confusion,they are not the same thing — although they are both there to make the developer’s job easier.
Libraries and frameworks are essentially sets of prewritten code, but libraries are smaller and tend to be used for more specific use-cases. A library contains a collection of useful code, grouped together to be reused later. The purpose of a library is to enable developers to reach the same end goal while writing less code to get there.
A framework contains ready-made components and tools that enable the developerto write code faster, and many frameworks also contain libraries. It gives the developer a structure to work from, and the framework you choose to work with will largely dictate the way you build your website or app, so choosing a framework is a big decision. Some popular frameworks include Bootstrap, Rails andAngular.
The easiest way to understand libraries and frameworksis to imagine you are building a house. The framework provides the foundation and the structure, as well as instructions or guidelines for completing certain tasks. Say you want to install an oven in your new home: you could buy the separate components and build the oven from scratch, or you could pick aready-made oven from the store. Just like building a website, you can write the code from scratch or you can take pre-written code from a library and simply insert it.
Other web development tools
Web developers will also use a text editor, such as Atom, Sublime or Visual Studio Code, to write their code; a web browser, such as Chrome or Firefox; and an extremely crucial tool: Git!
Git is a versioncontrol system where developers can store and manage their code. As a web developer, it’s inevitable that you’ll make constant changes to your code, so a tool like Git that enables you to track these changes and reverse them if necessary is extremely valuable. Git also makes it easier to work with other teams and to manage multiple projects at once. Git has become such a staple in the world of web development that it’s now considered really bad practice not to use it.
Another extremely popular tool is GitHub, a cloud interface for Git. GitHub offers all the version control functionality of Git,but also comes with its own features such as bug tracking, task management and project wikis. GitHub not only hosts repositories; it also provides developerswith a comprehensive toolset, making it easier to follow best practices for coding. It is considered the place to be for open-source projects, and also provides a platform for web developers to showcase their skills.