The A-Zs of Web Development

Deji Adesoga
codeburst
Published in
12 min readAug 22, 2020

--

Give a man a program, frustrate him for a day. Teach a man to program, frustrate him for a lifetime.

― Muhammad Waseem

Introduction

As we all know, web development is a vast and wide field that encompasses a range of career paths. Often this can be overwhelming for newcomers to the industry as they are tasked with trying to figure out which path is right for them. For example, careers abound in many fields including mobile app development, UI and UX design, game development, software testing, database administration, system analysis, and SEO (to name but a few). The goal of this article is not to dive into the details of each career option but rather to introduce newbies to some of the various technical terms that are common in the world of web development.

AJAX

AJAX is a tool used by web developers to build interactive web applications and enables developers to send and receive data without refreshing a web page. AJAX relies on HTML and CSS to render a markup, and JavaScript to get data asynchronously from the server.

Accessibility

Accessibility is the practice of making a website or application accessible to everyone, especially people with disabilities. The benefits of making a website accessible to everyone cannot be over-emphasized. Tim Berners-Lee, the W3C Director and inventor of the World Wide Web, highlights this point in his statement that “the power of the Web is in its universality. Access by everyone regardless of disability is an essential aspect.”

Accessibility is important for both the developers and users of an application and can be the difference between a product being seen as high or low quality in the market.

API

API is a set of instructions that allows data to be shared between different software components, through making requests.

Photo by Miguel Á. Padriñán from Pexels

Browser

This is a very familiar term. Simply put, a browser is a software application that enables users to access data on the internet. Some of the most popular browsers today include Google Chrome, Mozilla Firefox, and the newly updated Microsoft edge. Each of these browsers is being powered by an engine. For instance, Google Chrome is powered by V8, and Firefox is powered by Spider Monkey.

CSS

CSS stands for Cascading Style Sheet. It is a stylesheet language that is used to describe how the documents of a page, written in a markup language(HTML), is being presented. Initially released on December 17, 1996, CSS is among the essential languages of the open web. The specifications for CSS are maintained by the World Wide Web (W3C).

CDN

This simply means a Content Delivery Network. A CDN is a network of servers distributed across various geographical locations of the world. The goal of using a CDN is to have a good user experience in terms of speed and preventing a website from crashing in the event of a high traffic surge.

CMS

CMS stands for Content Management System. This is a software application that provides a digital solution for building, managing, and modification of a website’s content. CMS makes this all possible without any need for technical knowledge of writing code from scratch. Some of the most popular content management systems out there include WordPress, Drupal, Shopify, Joomla, and Magneto. WordPress has the largest market share and powers more than 37.7% of all websites on the internet!

Domain Name

According to Wikipedia, a domain name is an identification string that defines a realm of administrative autonomy, authority, or control within the internet. Breaking this definition down further, a domain name simply means the physical address of a website. According to Verisign, a global provider of Domain name registry services, there was an estimation of 334.6 million registered domain names across all TLDs at the end of the second quarter of 2016. Typically, A domain name can only be up to 63 characters long (including letters, numbers, or combination) in addition to the four characters used to identify the domain extension.

Photo by Tranmautritam from Pexels

Deployment

Deployment refers to all the processes involved in making software available for use. The deployment process involves different types of environments ranging from the local environment to the development environment and then the staging environment. The number of deployment environments needed to be set up in the shipping of a software depends on the structure of a project.

DevOps

Also known as Development (Dev) and Operations (Ops), this is the combination of a set of tools, people, and products aimed at delivering software at a faster pace. DevOps enhances continuous integration to provide a quality product to the end-users. Some well known DevOps tools used in this process include Docker, Github, Jenkins, and Slack.

EcmaScript

ECMAScript is a general-purpose programming language that can be used to build both client-side and server-side applications. It is standardized by ECMA International, which determines what new features can be added to the language. The language is also 100% backwards compatible, meaning that any code written today will be supported in the future.

FrameWork

A framework is a platform used for developing software applications that comes with a pre-defined way of building web applications. The advantage of this is that the development process of an application is streamlined meaning that software developers do not need to re-invent the wheel every time they set to work. Some popular frameworks out there include Angular, Laravel, Django, and ASP.net.

Git

Initially released on the 7th April 2005, Git is an integral part of the Web Development process. It is a free and open-source version control system that is designed to manage both small and large scale projects. Git helps developers to track the changes made when writing a piece of code. In summary, Git provides flexibility, security, and high performance to developers.

HTTP

HyperText Transfer Protocol is an application-layer protocol used to transmit data between the client-side and the server-side servers. This involves the browser sending a request to the server, the request getting processed by the server, and finally the server returning an HTTP response to the Browser. The first documented version of HTTP was documented in 1991.

Photo by Startup Stock Photos from Pexels

IDE

Standing for Integrated Development Environment, IDEs enhance the productivity of programmers by making available the various utilities required to put together an application without the need to set an application up manually. Some popular IDEs include IntelliJ, Eclipse and Visual Studio.

JSON

JSON stands for JavaScript Object Notation, a lightweight data-interchange format. Derived from JavaScript, JSON has been adopted by many programming languages and is supported by most modern Browsers, JSON helps to easily transfer data between a server and a client. JSON is an alternative to XML.

Keyword Optimization

This is mostly about driving traffic to a particular website and involves the process of utilizing keywords and phrases on a web page, thereby making it easier for people to find content. It should be noted that a lot of research is needed to know the right keywords to use but luckily there are premium tools available that make this process easier by providing valuable data and statistics.

LAMP

Linux, Apache, MySQL, PHP/ Perl/ Python is a popular open-source web stack used for web application development and deployment. Open-source applications like WordPress and Drupal make use of the LAMP stack. This stack provides the flexibility needed to scale a product to meet its required needs.

Library

Similar to a framework, a library can be described as a collection of configured data and scripts that has the end goal of automating the process of writing code. In the case of a framework (where most of the processes are predefined), a library gives you a high degree of control over how the flow or architecture of the software could be designed. Examples of libraries in the world of front-end web development include jQuery, Twitter Bootstrap, Angular JS, and React JS.

MVC

MVC stands for Model, View, and Controller. It is a software pattern found in almost all programming languages. The Model determines how the data is structured, the View represents the user interface, and the Controller handles the request made by the client which (typically through an HTTP request). A popular framework that makes use of MVC’s separation of concern principle out of the box is Angular (which does this by generating four separate files for a single component).

MVP

MVP stands for Minimum Viable Product and is the first step to take when it comes to product development. Taking this approach has a lot of advantages, especially for startups as it helps to cut costs and minimize risk in the event where the product fails. Companies like Facebook, Dropbox, Twitter, Aardvark all started as MVPs.

Node.js

Created by Ryan Dahl and released on May 27, 2009, Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside of a web browser. Node.js enables developers to write JavaScript on the server, as well as the creation of dynamic web pages. It is used by big corporations like Microsoft, Netflix, Uber, Medium.

OOP

OOP stands for Object-Oriented Programming. In adopting the use of objects, OOP offers advantages such as creating software that is readable, reusable, accessible, and scalable. Programming languages that make use of OOP include JavaScript, Java, C++, C#, Python, PHP & Ruby.

Plugin

A Plugin is a piece of software component that is added to a program in order to give it additional functionalities. Some of the places where a plugin could be added include a website or a browser. Plugins are vital in the sense that they help to enhance the functionalities, features, and performance of a program.

Query

A Query simply means a request made to a database to get a set of data. This can be done through a Structured Query Language (SQL).

Regular Expression

A Regular Expression (also called Regex or Regexp) can be said to be a set of strings used to match a specific pattern. Regex makes it much easier to perform search operations, especially with a very large dataset. It is worthwhile noting that Regexp is not specific to a particular programming language.

REST

REST is an architectural pattern used for designing web services. A web service built on the principles of REST can be called a RestFul web service. REST supports different types of data formats including Plain text, HTML, XML, and JSON. A RestFul web service is built over an HTTP and can make use of terms such as GET, POST, PUT, PATCH, and DELETE to perform its function.

SOAP

SOAP stands for Simple Object Access Protocol and was designed in 1998 by Dave Winer. It is an XML-based protocol for accessing web services. SOAP does not support different data formats such as Plain text, HTML, or JSON. SOAP was created to ensure the easy exchange of data between programs built on different platforms in a secure manner

SSL

First developed by Netscape in 1995, SLL stands for Secure Sockets Layer and was designed to ensure privacy and protect sensitive data transferred between different systems. One of the ways to know if a website is secured with SSL is when the URL says “https://” and not “http://”.

Photo by Startup Stock Photos from Pexels

TLS

The Transport Layer Security is the successor to SSL. It performs the same function as SSL with a very slight difference in execution.

TDD

TDD stands for Test-Driven Development and is a software development approach that emphasizes the need to write tests before shipping code to production. The purpose of TDD is to write clean and bug-free code.

TDD typically involves the following five cycles:

  • Develop and design a test
  • Run a test and confirm the Test Fails
  • Write the code to pass the test
  • Run test to confirm if the test passes
  • Refactor code and repeat the process

Text Editor

A text editor is a software that web developers use to create and develop web applications. Some text editors have simple features while others have complex functionalities. Selecting which type of text editor to use depends on the application that the developer is trying to build. Most text editor comes with basic features such as copy and paste, search and replace, undo and redo, and so on. Some popular text editors include Notepad++, Visual Studio Code, Atom, and Sublime Text.

UI & UX Design

User Interface (UI) and User Experience(UX) in web development are two separate concepts that work hand-in-hand and are crucial to the design process of a particular product.

UI focuses on the visual aspect of the design of a product. It is the aspect that a user will interact with on a product (such as a video, document, text, images, and so on). UX, on the other hand, focuses on the overall experience of a user on a website or application. That is, it tries to focus on the emotion of a user towards a product.

The combination of both UI and UX ensures that an application's user the user receives the best possible experience in terms of functionality, satisfaction, and usability; which is the desire of a successful product.

Version Control

Also known as source control, version control is a system that allows users to keep track of changes made in a file, document, or any form of information collection source. Version control is mainly used for tracking changes made to a piece of code. As the code used to build an application becomes more and more complex, the need for version control becomes important due to its ability to introduce a degree of organization and sanity to the process.

Version Control can be divided into two major categories: Centralized and Decentralized systems. An example of a popular version control system is GIT which is free and open source.

Photo by Christina Morillo from Pexels

Web Standards

W3C standards define an Open Web Platform for application development that has the unprecedented potential to enable developers to build rich interactive experiences, powered by vast data stores, that are available on any device.

www.w3.org/standards

The web has come a long way to get where it is today; growing in leaps and bounds and becoming an integral part of society along the way. Due to this massive growth, it is only fitting to have independent bodies that govern the way the web works so as to prevent developers from incorrectly doing things.

XSS

XSS, also known as Cross-Site Scripting, is a web security vulnerability that allows hackers or attackers to infiltrate and inject malicious scripts into a web page. This is usually done through the browser by bypassing access controls such as the same-origin policy.

Preventive measures that can be taken against XSS attacks include:

  • Keeping software updated
  • Sanitizing input fields
  • Using a web firewall application
  • Adopting both Client-side and Server Side validation
  • Selectively disabling scripts on the browser

YAML

YAML is the abbreviated form of “ YAML Ain’t Markup Language”. Established on 11th May 2001, it is a human-friendly data serialization language that works well with other programming languages.

ZIP

ZIP is an archive file format that takes up less storage and can be easily transferred to other devices. The ZIP file format permits several compression algorithms and was initially released on February 14, 1989.

Conclusion

So there you have it, an alphabetized list of common web development terms that contains about 40 phrases. My intention when putting this article together was to help familiarize newbies with the terms they will most likely come across as they begin to steep themselves in the world of web development. Best of luck on your journey, I hope that this article was a helpful read along the way! Feel free to add more to the list in the comment section for the benefit of learning.

Originally published at https://thecodeangle.com on August 22, 2020.

--

--