Glossary of Tech Terms

By Ludo Fourrage

Last Updated: May 14th 2023

Nucamp’s glossary of technical terms contains definitions to help you better understand the technology landscape. Our list ranges from the most basic tech terms to the more advanced topics trending in the tech industry. Click around our glossary to learn how technologies and tools are used and how they relate to each other.

a b c d e f g h i j k l m n o p r s t u v w x

What are Algorithms?

Algorithms are a set of instructions that are followed to solve a problem or complete a task. They are typically used in computer programming but can be applicable to any area where a sequence of steps needs to be followed to achieve a goal. For example, a sorting algorithm will take a list of items and put them in order from smallest to largest, while a search algorithm will look for a specific item within a larger dataset. There are thousands of different algorithms that have been developed, and new ones are being created all the time.

Back to top

Fill this form to download every syllabus from Nucamp.

And learn about Nucamp's Coding Bootcamps and why aspiring developers choose us.

What are APIs?

API – An Application Programming Interface facilitates apps, websites, and other types of software to exchange data over a network without needing to share code or have any infrastructure in common. This software layer makes it easier for developers to enhance their apps or websites without having to recreate the code and data of the feature themselves. Think of your ability to use Paypal when you check out for an online purchase. Paypal exposes an API that makes it easy to incorporate Paypal into the checkout process. The eCommerce site doesn't need to create the Paypal features. It calls the Paypal API which supplies all the info needed to add Paypal as a checkout option, including the image of the Paypal button. The Paypal API enables easy data exchange between itself and the eCommerce site.

Back to top

What is Artificial Intelligence?

Artificial Intelligence (AI) is a branch of computer science that deals with the creation of intelligent machines that work and react like humans. AI machines are built to think like humans and make their own decisions. The aim of AI is to create smart devices that can understand their environment and take actions that achieve specific goals. AI technology is used in a variety of sectors, including healthcare, finance, manufacturing, transportation, and retail. For example, in Healthcare, AI is used for early detection of diseases, treatment recommendations, and patient monitoring.

Back to top

Fill this form to download every syllabus from Nucamp.

And learn about Nucamp's Coding Bootcamps and why aspiring developers choose us.

What is ASCII?

American Standard Code for Information Interchange is the most common character encoding system. It's commonly used in computer programming and data processing. The ASCII code consists of a set of 128 characters, which include the standard English alphabet, numbers, punctuation marks, and control characters. ASCII is an important standard of computer programming because it allows computers to store and manipulate text data that humans can also understand.

Back to top

What is Back-end development?

Back-end development refers to the server-side of an application and the associated coding that allows for data storage, retrieval, and modification. In a client-server relationship, the front-end handles what the user sees and interacts with, while the back-end manages all of the behind-the-scenes functionality. Because back-end development generally happens out of sight, it is often overlooked compared to its more visible counterpart. However, without back-end development, front-end development would be severely limited in what functionality it could deliver. Common applications for back-end development include web applications, mobile apps, and desktop applications. In each case, the back-end manages the data that is being used by the application and ensures that it is accessible when needed. It also handles any data processing that needs to happen, such as when a user submits a form or completes a transaction. Back-end development is essential for keeping applications running smoothly and ensuring that users have a good experience.

Back to top

Fill this form to download every syllabus from Nucamp.

And learn about Nucamp's Coding Bootcamps and why aspiring developers choose us.

What is CI/CD?

In software development, CI/CD (Continuous Integration/Continuous Delivery of code) refers to the practice of continuously integrating code changes into a shared repository, and then automatically deploying those changes to QA and production environments. This approach of delivering smaller changes more frequently can help reduce the risk of errors and allow for faster delivery of new features. CI/CD pipelines are typically used in conjunction with DevOps practices such as automated testing. By automating the build, test, and deployment process for software development, teams can focus on delivering value to customers rather than on manually executing repetitive tasks. In addition, CI/CD can help to ensure that changes are deployed in a consistent and repeatable manner. As a result, CI/CD has become an essential part of modern software development and deployment, especially for projects using agile methodology.

Back to top

What is client/server architecture?

A client/server system is a type of computing architecture in which each computer or process on the network is either a client or a server. Clients are computers that request information and services from servers. Servers are computers that provide information responses and services to clients. In most cases, each client/server relationship is unique, with each server providing different services to different clients. However, some server applications allow multiple clients to connect to them simultaneously in order to share resources and processing power. Client/server architecture is used in nearly all networked applications, from email and web browsing to online gaming and file sharing.

Back to top

What is Cloud Computing?

Cloud Computing enables convenient, on-demand network access to a shared pool of configurable computing resources and platforms (e.g., servers, storage, applications, and services) that are managed remotely. This technology allows businesses to scale up or down as needed, without making major investment in new on-premises infrastructure. Cloud computing is used in a variety of industries, including but not limited to retail, healthcare, education, and manufacturing. The benefits of cloud computing include increased agility and flexibility, reduced costs, and improved scalability.

Back to top

What is Compiler in software?

A compiler is a specialized program that converts source code written in a programming language into machine code that can be understood by a computer. To run a program, the code must first be compiled into machine code, which is a binary representation of the code that can be executed by the computer. The compiler will also check for syntax errors in the code and generate a report if any are found. Once the source code is complied, it is no longer used by the machine. Examples of compiled programming languages are C++ and C#. Conversely, an interpreter checks and directly executes the source code line by line. Because of this, the source code continues to be used every time the code is run. Examples of interpreted languages are JavaScript and Python.

Back to top

What is CSS?

CSS (Cascading Style Sheets) is a simple language that sets the styling rules of specific elements on a web page. So, developers only have to describe the element's appearance once, and the look and feel is consistent. Use CSS to make your web page standout with colors, formatting, and many more visually appealing options. Working along with HTML, CSS helps create a unique and enjoyable online experience.

Back to top

What is Data Structure?

Data Structures are a way of organizing and storing data so that it can be accessed and used efficiently. There are many different types of data structures, each with its own advantages and disadvantages. Some common examples include arrays, linked lists, hash tables, and trees. Data structures are used in a variety of applications, such as database management, image processing, and statistical analysis. When choosing a data structure for a particular application, it is important to consider the size and type of data that will be stored, the expected frequency of access, and the desired level of efficiency and performance.

Back to top

What is DevOps?

Development Operations (DevOps) is a set of practices that combines software development and IT operations to shorten the development life cycle and provide continuous delivery and integration of code. The aim of DevOps is to automate, iterate and improve the software development process with the help of technology. DevOps has become very popular in recent years as more organizations strive to accelerate their software delivery cycles and address the challenges of complex applications. One of the most important benefits of DevOps is that it helps to improve communication and collaboration between developers and operations teams. It also encourages more frequent releases, which can help to reduce the risk of errors and improve quality control. Overall, DevOps can help organizations to be more agile, efficient, and responsive to change.

Back to top

What is DNS?

DNS stands for Domain Name System. It is a system that allows humans to use easily remembered names, such as www.google.com, instead of difficult-to-remember IP addresses, such as 192.0.2.1. DNS servers store a database of all the public domain names and their associated IP addresses. When you type in a domain name into your web browser, your computer contacts a DNS server to look up the IP address for that domain name so it can connect to the website's server and load the website. DNS servers are essential for the proper functioning of the Internet. Without them, we would have to remember a long list of numbers instead of easy-to-remember domain names.

Back to top

What is Docker software?

Docker is a tool that enables developers to easily create, deploy, and run applications in a container. A container is an isolated environment that encapsulates all the dependencies and libraries needed to run an application. This makes it easy to move applications around between different machines without having to worry about compatibility issues. Docker is often used in development and test environments, where developers can use containers to easily spin up new services and dependencies. It's also used in production environments, where containers can be used to isolate applications from each other and provide easy portability between different servers. Ultimately, Docker provides a simple and efficient way to package and deploy applications at scale.

Back to top

What is the DOM of a web page?

The Document Object Model of a web page is a tree-like structure that represents the hierarchy of elements on a web page. By accessing it, developers can change the structure, content, and style of a web page. Often, it is used extensively in JavaScript, and it is also possible to access the DOM from other languages such as PHP and Java. In recent years, there has been an increasing focus on using the DOM to create dynamic and interactive web pages. For example, many modern web applications use the DOM to dynamically update parts of the page in response to user input. React.js creates a virtual DOM to compare with the DOM and it only updates what has changed. This lets developers create web and mobile experiences that are dynamic without having to reload content. Thus, creating a smoother user experience.

Back to top

What is decryption?

Decryption is the reverse process of encryption. It involves transforming encrypted data back into readable data using a key. Decryption is used in conjunction with encryption to ensure that only authorized individuals can access confidential information.

Back to top

What is Encryption?

Encryption is a process of transforming readable data into an unreadable format. This is done using a key, which is a string of bits, that acts as a code. The key is used to encrypt the data, and then the encrypted data is sent to the recipient. The recipient then uses the same key to decrypt and transform it back into readable data. For this process to work, both the sender and receiver must have the same key. Otherwise, the recipient will not be able to decrypt the data. Encryption is used in many different applications to secure communications. It protects sensitive information from being intercepted by unauthorized individuals.

Back to top

What are Executables in software?

In computing, an executable is a type of computer file with the .EXE file extension that runs a series of instructions when it is opened. It's commonly used to install new software on a device. The file can be run on a computer without needing to be compiled first. They are often used to automate tasks or create simple programs. Executable files can be stored in any location on a computer's hard drive, but they are usually kept in a special folder called the "bin" directory. When an executable file is run, the operating system creates a new process to execute the program. This process is given its own memory space and access to the resources of the computer, such as the CPU and memory. The process will typically run until it is finished or terminated by another process. Once it has finished, the operating system will reclaim any resources that were being used by the process and clean up any remaining state.

Back to top

What Express.js?

Express is a web application framework for Node.js, released as open-source software. It is designed for building web applications and APIs. It's the standard server framework for Node.js. Express is the back-end component of the MERN stack, together with the MongoDB database and ReactJS front-end component. It is minimalistic and does not presume anything about your directory structure or templating setup. However, once you have everything set up, Express provides an elegant way to route requests, access request data, and send responses. It also includes several features that make development easier, such as error handling and session middleware.

Back to top

What is Front-end devleopment?

Front-end Development is the process of creating the visual and interactive elements of a website or web application. This includes everything from the layout and design to the user experience and interactivity. Front-end developers use a variety of programming languages and frameworks to build websites and applications that look great and are easy to use. Some of the most popular front-end development technologies include HTML, CSS, and JavaScript. In recent years, there has been a shift towards using JavaScript frameworks such as React and Angular to build front-end applications. This is because these frameworks make it easier to create complex user interfaces and handle stateful data.

Back to top

What is Full-stack development?

Full-stack Development is a software development approach that includes both front-end and back-end development. Full-stack developers are responsible for creating the entire web application, from the user interface to the database. Full-stack development is often used in small to medium organizations, where there is a need for flexibility and efficiency. In these cases, it can be more efficient and less costly to have one developer who understands the entire application, rather than several developers working on separate parts of the code. However, it can also be useful in large enterprise applications. In these cases, full-stack developers oversee front-end developers and back-end developers, to create a cohesive product.

Back to top

What are Functions in software?

A function is a reusable module of code that can optionally take input values, perform a specific task, and return a result. Functions are used to perform various tasks that are likely to be performed more than once. These tasks can be as simple as displaying a message on the screen or performing more complex calculations. Programmers must specify the name of the function, the input parameters, and the code that will be executed when the function is called. Once a function has been declared, it can be called from anywhere in the program. This allows programmers to modularize their code and reuse commonly used functionality.

Back to top

What is GitHub?

GitHub is a repository hosting service for code. It is a subsidiary of Microsoft and is commonly used by developers to share code repositories with other developers. The company offers both free and paid plans for private and public repositories, with the latter being required for unlimited collaborators and private repositories. In addition to hosting code, GitHub also provides tools for project management, issue tracking, and wiki pages. GitHub is used by several high-profile organizations, such as Google, Facebook, and Microsoft.

Back to top

What is Google Firebase?

Google Firebase is a mobile and web application development platform that was acquired by Google in 2014. The platform provides a set of tools and services that help developers build high-quality mobile and web applications. Firebase provides a real-time cloud-based NoSQL database that can be used to store and synchronize data across devices. It also provides authentication, storage, and cloud messaging services. The Firebase platform includes several Software Development Kits (SDKs) that allow developers to integrate Firebase into their applications. The SDKs provide access to the Firebase API, which allows developers to interact with the Firebase database and other services.

Back to top

What is HTML?

HTML (Hypertext Markup Language) is a markup language used to design documents that will be rendered in a browser. HTML uses simple syntax to specify what elements should be on a webpage, and where they should be placed. HTML elements are comprised of visuals such a text box, push button, basic text, a table, an image etc. Think of HTML as the building blocks for a web page. The functionality of HTML code is usually enhanced with CSS and JavaScript to specify the appearance and behavior of the page.

Back to top

What is HTTP/HTTPS?

HTTP/HTTPS The Hypertext Transfer Protocol is the protocol used to transmit data over the Web. It transfers data between two resources, usually a client device and a server on a network. If permission is granted, the server sends the requested data back to the client which made the request. HTTPS encrypts HTTP requests and responses to make them more secure.

Back to top

What is an IDE in software?

An IDE (integrated development environment) is a software application that provides various tools and features to help programmers write code. This can include a text editor for writing code, a compiler for translating code into a computer-readable format, and a debugger for finding and fixing errors. Many IDEs also come with built-in libraries of code that can be used to speed up the development process. While most IDEs are designed for a specific programming language, there are also some that support multiple languages. An IDE is a valuable tool for any programmer.

Back to top

What is the Internet?

The Internet, also known as “the Net” is the global system of networks that connect computers, servers, and many other devices. These millions of networks and devices allow us to access webpages and apps, send/receive email, send/receive data, make purchases etc.

Back to top

What is an Interpreter in software?

An interpreter is a system program that translates, line by line, computer source code written in one language into code that can be understood by a machine in another language. Interpreters are used to convert code written in high-level languages, such as Java and Python, into machine code, which is the only language that can be executed by a computer.

Interpreters are different from compilers in that they do not produce a standalone executable file. Instead, they read and execute code line by line, which makes them ideal for rapid development and debugging. However, this also means that interpreted programs generally run more slowly than compiled programs.

Despite their limitations, interpreters are an essential tool for many programmers. They allow developers to quickly test code changes without the need to recompile their programs.

Back to top

What is the IoT?

IoT The Internet of Things, or IoT refers to the network of interconnected devices, platforms, sensors, and the technology they use to communicate and share data. By embedding sensors into everyday objects and connecting them to the internet, it's possible to collect and share data about the world around us in ways that were previously impossible. This has a wide range of potential applications, from monitoring traffic congestion to tracking the spread of disease. Think Alexa or Siri.

Back to top

What is an IP Address?

An IP address (IP stands for Internet Protocol) is a unique numerical identifier assigned to every device connected to the internet or other network. It allows devices to communicate with each other and facilitates the flow of data between networks. When you connect to the internet, your device is assigned an IP address by your internet service provider (ISP). This address can be used to track your online activity and location. IP addresses are essential in ensuring that data is routed correctly.

Back to top

What is Java?

The Java programming language is a versatile and powerful language that helps developers create sophisticated, high-performance applications. Though Java has a relatively simple syntax, it supports features such as object-oriented programming, databases, and web applications. In addition, Java is platform-independent, meaning that programs can run on any type of computer. As a result, Java is one of the most popular programming languages in use today. Whether you're looking to create desktop applications or build dynamic web pages, Java programming can help you achieve your goals.

Back to top

What is Javascript?

JavaScript is a scripting language used to build dynamic features on a web page, mobile app, or game. It was originally designed for client-side scripting, but has evolved to include server-side scripting. Some say JavaScript is the language of the internet. It's one of the most used, and most popular programming languages. When users see features that are interactive or refresh automatically, that's JavaScript at work.

Back to top

What is JSON?

JSON (JavaScript Object Notation) is a text-based data format that is often used for exchanging information between web applications. JSON documents are composed of key-value pairs and may also contain arrays and objects. JSON is a language-independent format, which means that it can be used with any programming language. One of the advantages of JSON is that it is human-readable, making it easy to debug data exchange issues. Additionally, JSON is reasonably compact, which makes it efficient to transmit over the network. JSON is primarily used for asynchronous communication between web applications. When a client requests information from a server, the server will return a JSON document in response. The client-side application can then parse the JSON document and extract the relevant data.

Back to top

What is JSX?

JSX (JavaScript XML) is a markup language that lets developers describe a user interface using a mixture of HTML and JavaScript. JSX allows developers to write HTML elements in JavaScript and place them in the DOM. JSX speeds up development time by converting HTML tags into React.js elements. JSX syntax is very close to HTML. You can put JavaScript expressions inside curly brackets in JSX, then after compilation, JSX expressions become regular JavaScript function calls and evaluate to JavaScript objects.

Back to top

What is Kubernetes?

Kubernetes, often referred to as K8s, was originally developed by Google. It's an open-source scalable platform for automating the deployment of containerized applications. It facilitates enhancing containerized applications, manages load-balancing, and monitors the health of application. Kubernetes can accommodate applications that run on-premises or in the Cloud.

Back to top

What is Load Balancing?

Load balancing is the process of distributing electronic traffic across multiple servers so that no single server becomes overloaded. This ensures that all users have a consistent experience when accessing a website or application, even during peak traffic times. There are several different methods of load balancing, but one common technique is to use a load balancer appliance. This appliance sits between the user and the server farm and evenly distributes traffic across the servers. This can help to improve performance and availability while also reducing costs by ensuring that each server is used to its full potential. Load balancing is an essential part of any high-traffic website or application, and it can be the difference between a smooth user experience and a site that frequently crashes or runs slowly.

Back to top

What is Machine Learning?

Machine learning is a method of data analysis that automates analytical model building. It is a branch of artificial intelligence based on the idea that systems can learn from data, identify patterns and make decisions with minimal human intervention. The process of machine learning is similar to that of data mining. Both processes search through data to look for patterns. However, machine learning goes a step further and automatically builds models that explain the data. Machine learning is mainly used today in areas such as facial recognition, speech recognition and anomaly detection.

Back to top

What is the MERN stack?

MERN is a software stack acronym that stands for MongoDB, Express.js, React.js, and Node.js. The MERN stack is used to create web applications that are fast, dynamic, and scalable. MongoDB is a document-oriented database system that stores data in JSON-like format. Express.js is a web application framework that provides a robust set of features for web and mobile applications. React.js is a JavaScript framework for building user interfaces. Node.js is a JavaScript runtime environment that enables you to run JavaScript on the server-side. By using the MERN stack, developers can build applications that are easy to maintain and scale.

Back to top

What is Metadata?

Metadata is data that describes other data. In a library, for example, metadata would describe a book and might include its title, author, subject, and publishing date. In this way, metadata is like a roadmap that helps you find the books you need. Metadata can also be used to describe digital files such as images, videos, and documents. When you search for a certain type of file online, the search engine uses metadata to find files that match your search criteria. By including keywords in the file's metadata, you can help ensure that your file will be easy to find.

Back to top

What is MongoDB?

MongoDB is an open-source NoSQL database management system that uses JSON-like documents to store data. Database developers use MongoDB to create highly scalable and adaptable web-based applications. It's used for storing and retrieving data, as well as performing data operations. One advantage is that it allows you to create applications without spending too much time configuring databases. It lets you store data in a way that's flexible and accessible, so websites and apps can run quickly and smoothly. Unlike SQL databases which store data in rows and columns, MongoDB stores each record in a binary representation in what is called Binary JSON (BSON).

Back to top

What is Node.js?

Node.js is an open-source JavaScript server-side runtime environment outside of the browser. Node.js lets web developers do server-side scripting for applications. This can include everything from performing database operations, user authentication, and application logic. Node.js uses an event-driven, non-blocking I/O model so a process can serve multiple simultaneous requests. It enables developers to create scalable applications by making use of an asynchronous programming paradigm.  This means the program doesn't wait for a function call to return before executing the next line of code. When the function eventually is completed, Node.js is notified, and then any code that was reliant on that prior function call will execute. Meanwhile, the code after that function call wasn't held up waiting for the function to finish executing and return.

Back to top

What is NoSQL?

NoSQL databases do not use relational table schemas. Because they don't require a fixed schema, NoSQL database models typically offer more flexibility than relational databases. This is better suited for rapid application development. The queries are faster, since the data model will be based on how the data is used by the application. This also makes it easier for developers to make changes. Popular NoSQL database models are JSON documents (MongoDB), key-value pairs (DynamoDB).

Back to top

What is NPM in software?

NPM (Node Package Manager) is a package manager for JavaScript where developers can version and share code through the npm registry. It helps to install, update, and manage dependencies in a project. It also provides a command-line interface (CLI) that can be used to run various tasks such as testing and identifying issues in the code. NPM is primarily used for React projects, but it can also be used with other JavaScript frameworks such as Angular and Vue. To use NPM, you first need to install Node.js on your computer. Once Node.js is installed, you can use the `npm` command to install dependencies listed in your project's `package.json` file. You can also use the `npm` command to update dependencies and run tests. In addition, you can use NPM to publish your own packages or create private repositories.

Back to top

What is an Object in software?

In object-oriented programming, an object is a self-contained unit of functionality that can be easily leveraged in other parts of your code. Objects usually have two components: data and behavior. Data represents the state of the object, while behavior defines how the object interacts with other parts of the program. In most cases, objects are created by instantiating a class, which is a template for an object that defines its data and behavior. However, some programming languages also support creating objects from scratch, without using a class. Regardless of how they are created, objects are typically used to encapsulate data and logic related to a specific entity in your program, making your code more organized and reusable.

Back to top

What is Object-Oriented Programming (OOP)?

Object-oriented programming (OOP) is a type of programming that is based on the concept of objects, which are data structures that contain both data and code. In OOP, each object is a self-contained unit that includes both the data and the code needed to manipulate that data. This modular approach to programming makes it easier to develop large-scale applications. When working with objects, programmers can reuse existing code instead of having to write new code from scratch. In addition, OOP makes it easier to maintain and modify code over time because changes can be made to individual objects without affecting the rest of the codebase. OOP is used in many common programming languages, including C++, Java, and Python.

Back to top

What is Open Source?

Open source refers to software that is free and available for anyone to use or modify. The source code is publicly available, which allows anyone with the requisite skills to study how the software works, make changes, and release their own version. Open-source software can be updated and improved by anyone who is willing to contribute. So, the software can evolve rapidly in response to new needs and challenges. Because anyone can contribute to open-source projects, they tend to be well-supported and have a large community of users. Open-source software is typically released under a license that allows anyone to use, copy, modify, and distribute the software. Some popular examples of open-source software include the Linux operating system, the Apache web server, and the MySQL database.

Back to top

What is an Operating System?

An operating system, or "OS," is a type of computer software that manages the hardware and software resources of a computer. It provides a platform for applications to run on, and it handles the input/output from devices such as the keyboard, mouse, monitor, and printer. Operating systems also include a set of built-in commands that allow users to perform basic operations, such as copying files and launching programs. There are many different types of operating systems, including Windows, macOS, Linux, and Android.

Back to top

What is PostgreSQL?

PostgreSQL (also called Postgres) is an open source relational database management system (RDBMS), known for its reliability, scalability, and performance. It's compliant with SQL standards, and compatible with programming languages such as Python, Java, C etc. PostgreSQL can run on all major operating systems, including Linux, Windows, and macOS.

Back to top

What is Python?

Python is a simple, open source and object-oriented programming language used for web development, data science, machine learning and more. Python development is incredibly fast due to its simplicity. Python's clear, simple syntax is considered "human-readable" since it's similar to how we use language in our everyday life. This makes it a great choice for rapid development. Python has many libraries with ready-made features for developers to use. This makes it flexible, so developers can focus more on creating new functionality.

Back to top

What is React.js?

React.js is a JavaScript library that helps developers build functional user interfaces. It uses JSX to create HTML-like elements. Reusable React components can be combined to make a more complex user interface. React uses a virtual DOM (Document Object Model) to compare the current virtual DOM to the new virtual DOM and it only updates what has changed. This lets developers create web and mobile experiences that are dynamic without having to reload content. Also, there are many React.js libraries available to facilitate development. In essence, React helps developers create front-ends that have a pleasant user experience. And user-friendly interface attracts more customers.

Back to top

What is React Native?

React Native is an open-source framework that uses JavaScript to develop cross-platform hybrid mobile apps. React Native uses components, imports, exports, and JSX similar to how React.js does. Like React.js, there are many React Native Elements components and React.js Navigation libraries. One difference is that React Native uses platform-agnostic components such as and instead of

and

, but it still looks like React.js. The biggest difference is that developers are no longer dealing with HTML elements because they're no longer in the browser world. React Native maps generic container components into corresponding native components for both Android and iOS. For each React Native component, there is a corresponding native component in Android and iOS. React Native has a Stylesheet API. There is no CSS because there is no browser. It's just JavaScript. Just like JSX isn't really HTML. One of the biggest benefits of React Native is that developers only have to maintain one code base, the app will run on Android and iOS.

Back to top

What is Redux?

Redux is an open-source library for managing states in large JavaScript applications. It is used to make it easy to keep track of the current state of an application and to make it easy to update that state in response to user actions. Redux is used in different applications, including React, Angular applications, and Node.js framework Express. Redux is easy to use and provides a simple API for updating and subscribing to state changes.

Back to top

What are RESTful Services/RESTful APIs?

RESTful services are a type of web service that uses the REpresentational State Transfer (REST) architecture. REST is a stateless, client-server architecture that enables applications to be built on a uniform interface. This makes it well suited for web-based applications that need to be accessible from a variety of devices. It doesn't define a standard like SOAP, so it's more flexible. But it does enforce a set of constraints for creating web services. It can also use more than just XML to exchange information. RESTful services are typically used to access data from a database or another web-based application. The REST architecture and RESTful services provide a consistent, scalable way to exchange data over the internet.

6 constraints: client-server separation, statelessness, uniform interface, cacheable, layered system, code on demand.

Back to top

What is an SDK?

SDK – Software Development Kit is a virtual toolbox supplied in an installable package for a specific platform or operating system. It contains highly specialized libraries that speed up the development process when working with that specific framework. The SDK supplies developers with pre-written code and tools such as code libraries, editors, compilers, and debuggers. There are many types of SDKs to facilitate various functions and features: Login SDKs, Notification SDKs, image manipulation SDKs etc.

Back to top

What is SDLC?

SDLC The software development life cycle is a framework that helps organizations produce high-quality software products. It provides a structure for developers, QA testers, and DevOps engineers to follow, ensuring that all essential steps are taken during the software development process. SDLC is used in both waterfall and agile methodology. In waterfall methodology, each phase of the SDLC must be completed before moving on to the next phase. Waterfall usually waits for the entire project to be complete before distributing it to production. Agile methodology is more flexibility and distributes smaller more frequent code releases. Regardless of which methodology is used, having a clear SDLC process plays an important role in ensuring that high quality software is developed effectively and efficiently.

Back to top

What are SOAP Services?

SOAP Services is a type of web service that uses the Simple Object Access Protocol (SOAP) to exchange information in the form of XML. SOAP is a standards-based protocol that enables applications to communicate with each other over the Internet. SOAP uses WSDLs (Web Services Description Language) which specify how two endpoints will communicate and exchange information.

SOAP Services enable software applications to interoperate regardless of platform or programming language.

Back to top

What is SQL?

SQL (Structured Query Language) is a standard database programming language used for querying and updating data in relational databases. It is a declarative language, meaning that it defines relationships between data in the form of well-structured queries. SQL commands can be used to Create, Read, Update and Delete data from a database. It is typically used by software developers and database administrators to work with large datasets. However, SQL can also be used by non-technical users to query a database for specific information. For example, a user could use SQL to retrieve a list of all the customers in a database.

Back to top

What is a URL?

URL: (Uniform Resource Locator) – A URL is the address of a website, or other resource. In its simplest form, a URL consists of the protocol the browser should use to request access to a resource (HTTP, HTTPS), a domain name (www.nucamp.co), and the location of the file or resources which in many cases is a website's html file. (/blogs). https://www.nucamp.co/blogs. URLs are not only used to connect to the web, but can be used for networks in general.

Back to top

What is UX design?

UX design is the process of designing products or services with the user's needs and preferences in mind. The goal is to create a positive user experience by making the product easy to use and enjoyable to interact with. UX design is used in a variety of fields, from website and app development to industrial design. In recent years, there has been a growing recognition of the importance of UX design, and it is now considered an essential part of the development process. As user expectations continue to evolve, UX design will become even more important in ensuring that products are able to meet the needs of their customers.

Back to top

What is a Web Browser?

A Web browser is a software application that enables users to access, view, and interact with Web pages. By connecting to the Internet and fetching Web pages from Web servers, browsers allow users to interact with a variety of online content, including text, images, videos, and applications. Although there are different types of Web browsers available, they all serve essentially the same purpose: to provide users with an easy way to access and view Web content.

Back to top

What is Web Hosting?

A web hosting service is a type of Internet hosting service that allows individuals and organizations to make their website accessible via the World Wide Web. Websites are hosted, or stored, on special computers called servers. When Internet users want to view your website, all they need to do is type your website address or domain into their browser. Their computer will then connect to your server and your webpages will be delivered to them through the browser. Most web hosting services offer a variety of different types of hosting plans, such as shared, VPS, dedicated, and managed WordPress hosting. You can usually choose from a variety of different domain name extensions, such as .com, .net, .org, or .info. Once you have found a web host that offers the right mix of features and price for your needs, you will need to choose a domain name for your website and set up your account with the web host. After your account is created, you can upload your website files to your server and start building your website.

Back to top

What are Web Services?

Web services are a type of internet software that uses standard web protocols to exchange data between systems. Unlike traditional web applications, which are designed for human users, web services are designed for computer-to-computer communication. This allows different systems to share data and resources, making it possible to build complex applications that span multiple platforms. Web services can be used to expose existing data and functionality as web-accessible APIs, or to build new applications from scratch. Either way, they provide a powerful way to connect disparate systems and make them work together.

Back to top

What is the World Wide Web?

World Wide Web (WWW or W3) – Is not the internet, but it uses the internet. The World Wide Web is the connected collection of webpages available on the internet. The web pages are formatted using HTML and accessed using the HTTP or HTTPS protocol. Documents and data can be retrieved from web servers and then accessed by resources like web browsers.

Back to top

What is XML?

XML is a markup language that is used to store and transport data. It is like HTML, but XML is not limited to displaying data. Instead, XML can be used to define data elements and structure. This makes it an ideal format for exchanging information between different systems. For example, a database could be exported as an XML file, which could then be imported into another system.

Back to top

N

Ludo Fourrage

Founder and CEO

Ludovic (Ludo) Fourrage is an education industry veteran, named in 2017 as a Learning Technology Leader by Training Magazine. Before founding Nucamp, Ludo spent 18 years at Microsoft where he led innovation in the learning space. As the Senior Director of Digital Learning at this same company, Ludo led the development of the first of its kind 'YouTube for the Enterprise'. More recently, he delivered one of the most successful Corporate MOOC programs in partnership with top business schools and consulting organizations, i.e. INSEAD, Wharton, London Business School, and Accenture, to name a few. ​With the belief that the right education for everyone is an achievable goal, Ludo leads the nucamp team in the quest to make quality education accessible