A.M. Turing Award
Abstract Data Type (ADT)
Access Control List (ACL)
ACID (Atomicity, Consistency, Isolation, Durability)
ACM (Association for Computing Machinery)
A graph that does not have graph cycles.
Address Resolution Protocol (ARP)
Adjacency Matrix (or Connectivity Matrix)
A matrix used to represent a graph.
Advanced Encryption Standard (AES)
An approach to software development that is iterative, adaptive, and responsive to particular needs of clients.
An area that studies mathematical properties of data and operations on data.
A smartphone operating system based on the Linux kernel.
ANSI (American National Standards Institute)
Application Programming Interface (API)
A set of methods or protocols that define communication between two modules/components.
A set of data that users wish to retain, but without requiring immediate access.
Arithmetic Logic Unit (ALU)
The part of a computer system that actually performs calculations and logical comparisons.
A basic data structure that stores a collection of data in same type in consecutive order.
Artificial Intelligence (AI)
A sub-area of computer science that studies the intelligence demonstrated by machines.
American Standard Code for Information Interchange
Aspect Oriented Programming (AOP)
A human-readable notation for the convenient representation of machine codes.
A data structure that associates pairs of data within an array.
A method that allows web pages to interact with backend.
A sequence of primitive operations that must complete without interruption.
A process by which two parties in a communication can assure each other of their identities.
A type of height-balanced trees.
A way that an individual can gain access to a system without passing the normal login process.
Processing at backend opposed to Frontend at users' clients.
Processing without interaction with users.
Backus-Naur Form (BNF)
A form that precisely describes the grammar of a computer language.
The range of frequencies that a communication medium can effectively transmit.
A printed machine-readable code that consists of parallel bars of varied width and spacing.
BBS (Bulletin Board System)
A tool used to evaluate or compare the performance of systems or applications.
A mathematical notation that describes the behavior of algorithms.
An addressing organization, in which the smallest numerical byte address is located at the most significant position.
Binary Search Algorithm
A tree in which each node has at most two subtrees.
BIOS (Basic Input-Output System)
The basic input-output system on a computer system.
A graph whose vertices can be split into two disjoint sets.
A bitmap is a series of bits in which the bits represent a speicific data.
Bitwise operations consist of logical operators and shift operators that work on bits.
A testing method that only considers the inputs and the outputs of a tested module.
A deployment strategy that minimizes the down time of services.
A wireless data communications designed for relatively short-range data transmission.
Border Gateway Protocol (BGP)
The routing protocol used to connect autonomous systems on the Internet.
Branching statements give programs the ability to choose one execution from many logic paths depending on a logical test.
A technique of searching through a tree whereby all nodes at level n are searched before searching any nodes at level n+1.
An approach to solving a problem by trying every possible solution.
A type of vulnerability where data written to a buffer excceds the size of the buffer.
A pathway for data to flow between CPU, Main memory, and various devices.
A general-purpose programming language.
C# (pronounced "C sharp")
A general-purpose programming language designed by Microsoft.
C++ (pronounced "C Plus Plus")
A general-purpose programming language designed by Bjarne Stroustrup.
CA (Certificate Authority)
An agency that issues digital certificates.
An area of relatively fast access memory for data anticipated to be reused in near futre.
A technique used to prevent bots from login to web service intended for human users.
CAPTCHA (Completely Automatic Public Turing Test to Tell Computers and Humans Apart)
A tool that presents a quiz that is easy for human, but difficult for automatic BOT.
A repository of metadata in database.
CGI (Common Gateway Interface)
An interface that allows Web browsers to interact with programs at a web site.
Circular Linked List
A data type that encapsulates data and operations at one place.
A computing model that consists of client and server programs.
An approach of computing in which end users connect to remote computers for running programs or storing data in cloud.
A group of similar devices connected together in order to provide enhanced performance, security, or resilience to failure.
CMM (Capability Maturity Model)
A set of criteria for judging and improving the performance of a software development organization.
Cognitive science is a study of mental processes, such as reasoning, memory, and the processing of perception.
Cold boot, Cold start
COM (Component Object Model)
A programming interface provided by Microsoft systems.
An action that reliably submits all pending changes in a tranction and makes them visible to end users.
A program that converts source codes of a programming language into an equivalent program written in another language.
A study of the time and amount of memory needed to perform a computation or an algorithm.
A study of resposible use of computers and computer networks.
A process of discovering, documenting, analyzing, and preserving criminal evidence by using computers.
A study of protecting computers from being tampered, physically damaged, and unwanted data disclosure.
A program that may destroy the regular processing of a computer system.
The progressing of two or more activities in parallel.
Rules and procedures that prevent unauthorized persons from gaining access to information.
The ability of being aware of specific information from external systems.
The formal languages generated by a context-free grammar or equivalent forms.
A copyright that gives permissions for redistribution under certain conditions.
A legal restriction to the reproduction of books, magazines, computer programs or other materials in order to protect the ownership of the original author.
Cost Estimation Model
A mathematical model used for estimating the overall cost of building a project or software.
A measurement of the strength of interconnections between modules in a system.
A sudden failure of a program caused by a hardware or software error.
CRLF(Carriage Return, Line Feed)
A compiler that runs on one machine, but produces an object program to run on a different machine.
Cyclic Redundancy Check (CRC)
Data Compression/Data Compaction
A process that removes redundant information from data and saves space.
Data Encryption Standard (DES)
A cipher developed by IBM and standardized by the US National Bureau of Standards in 1977.
A condition in which all data values are correct.
A process to find useful information by analyzing data.
A way of organizing data in a computer system.
A system that maintains data by using a collection of facilities.
Database Management System (DBMS)
A database management system consists of a database and facilities for managing data.
DDoS(Distributed Denial of Service)
A DoS (Denial of Service) attach is conducted by attackers from a widely distributed locations.
A situation where resources are held by two or more processes; each is waiting for resources held by others. So that all of them are in an infinite wait loop.
Denial of Service (DoS)
The prevention of an authorized user from processing information.
A way of search that first visits connected nodes rather than sibling nodes.
A way to abstract and generalize data and logic so that it can be applied to similar problems in future.
DHCP (Dynamic Host Configuration Protocol)
A protocol that allows devices in a network to configure their operational parameters automatically.
An attempt to obtain a password by looking up words in a dictionary.
An authentication code appended to a file that indicates the author of the file.
A way of running programming or storing data across a number of different computers.
Divide and Conquer Algorithm
DLL (Dynamic Link Library)
DMA (Direct Memory Access)
A method whereby I/O processes can obtain access to memory without interrupting CPU.
DML (Database Manipulation Language)
Document Object Model (DOM)
A way to represent a Web document as an object that can be manipulated by a scripting language.
Domain Name System (DNS)
The domain name system provides alphabetical equivalents to the numeric IP addresses.
A linked list where each node contains links to both its predecessor and its successor.
DRAM (Dynamic Random-Access Memory)
A program that handles peripheral devices in operating systems.
Dynamic IP Address
An IP address assigned to a computer when it actually connects to a network.
A distributed computing paradigm that brings data closer to the location where it is needed.
The systems used as component in devices whose primary functions are not that of systems.
The exact execution on a given computer of a program written for a different computer.
Encapsulated PostScript (EPS)
A method that promotes the program reliability by keeping the detailed implementation private.
A process of rendering data in a specific way in which only authrized users understand.
End-Of-File (EOF) Mark
A symbol that indicates the end of a file.
EPROM (Erasable Programmable Read-Only Memory)
A type of memory that can be programmed electrically and erased by exposure to ultraviolet light.
A character that changes the meaning of another character immediately following.
A computer program that uses knowledge and rules of reasoning to solve problems.
A procedure that allows a restart of a failed system in order to eliminate or minimize the amount of incorrect results.
FAT32 (File Allocation Table, 32 bit)
A type of file system introduced by Windows 98.
Fault telerance is a design concept, in which a system will continue to work even if one or more components fail.
File Transfer Protocol (FTP)
A device that identifies users by detecting their fingerprint patterns.
A firewall is a program that sits between a computer and the Internet, and protects the computer from attacks.
FPS (Frames Per Second)
The rate at which a moving image is generated.
Communication in two directions at the same time.
Full Stack Developer
Engineers who have a full set of skills needed in web development.
An action of searching through every word in a set of documents.
A device that interconnects two networks.
GPU (Graphical Processing Unit)
A program that finds sentences that violate grammar rules.
Graphical User Interface (GUI)
An interface between users and a computer that makes use of input devices other than the keyboard and presentation techniques other than alphanumeric characters.
GUID (Globally Unique Identifier)
Communication in two directions, but not at the same time.
The exchange of signals between two computers over networks
A function that enables rapid searching or table lookup.
An area of memory for dynamic allocation.
A method that uses domain knowledge as hints in problem solving
IA-32 (Intel Architecture-32)
The architecture of the Intel 80386, 80486, and Pentium microprocessors.
IA-64 (Intel Architecture-64)
The architecture of the 64-bit Intel microprocessors.
IEEE (Institute of Electrical and Electronics Engineers)
An area that studies the manipulation of digitized images.
An area of studing the fundamental characteristics of information and its transmission and reception.
Infrastructure as a Service (IaaS)
A way of sharing data and functions in object-oriented programming language.
Integrated Circuit (IC)
Integrated Development Environment (IDE)
Intellectual property is a right the creator of an original work has to control its use or distribution.
Internet is the worldwide network that connects all computers in the world.
Internet of Things (IoT)
Internet Service Provider
Organizations that provide access to the Internet.
Interpreter is a program that analyzes programming instructions, creates equavalent executable programs and executes them.
IPC (Inter-Process Communication)
ISO (International Organization for Standardization)
The process of performing a sequence of steps repeatedly.
Java is a general-purpose programming language.
Java Virtual Machine (JVM)
An open standard format of data represetation.
JDK (Java Development Kit)
JIT Compiler (Just-In-Time Compiler)
A software that translates a segment of codes into machine codes for performance improvement.
A variation in the arrival time of a synchronous signal.
Journaling File System
Kernel is the core program of an operating system. A Kernel program provides process control, interprocess communication, memory management, file system, and more.
A formalism for representing functions and ways of combining functions.
A program that generates lexical analysers.
A collection of programs that can be reused in similar programs.
A data structure that represents a set of data which are not necessarily stored in a continuous space.
LISP (LISt Processor)
A functional programming language.
Local Area Network (LAN)
A network that is only reachable from local computers.
A type of compression methods that do not loss information.
A scripting programming language.
A concept of packaging a group of instructions, which can be reused or invoked by a single instruction.
A method of parallelize computation by passing messages among processes.
A microprocessor is an integrated circuit chip that contains all essential components for computing.
A method for running several programs at the same time.
NAT (Network Address Translation)
Natural Language Processing
An area that studies the ability of processing natural language on computers.
Network Attached Storage (NAS)
A dedicated data storage that is available to all users of a network.
NoSQL数据库。NoSQL表示Not Only SQL。
NoSQL Database. NoSQL stands for Not Only SQL.
A concept of sharing source codes to the public.
An operating system is a program that manages hardware resource and provides a variety of services to support applications.
Optical Character Recognition (OCR)
A process of identifying and recognizing characters from images.
A virtual memory management method.
An area that studies all perspectives of computing in parallel.
A process of detecting the presence of a specific pattern.
Perl (Practical Extraction and Report Language)
A scripting programming language.
A scripting programming language primarily used for creating dynamnic Web pages.
Platform as a Service (PaaS)
A way of characterizing the time complexity of an algorithm.
Pseudo Random Number Generation
An algorithm that produces random numbers by using arithmetic properties of a computer.
Python is a general-purpose programming language.
RAID (Redundant Array of Independent Disks)
Recursion is a concept of repeatedly executing a collection of program statements as long as some conditions are met.
Reduced Instruction Set Computer (RISC)
The provision of additional resources or data in a system, which is over the minimum set of resources or data needed.
RFID (Radio Frequency Identification)
A model that presents colors by using combinations of Red, Green, and Blue.
SAX (Simple API for XML)
A specification/method for an event-driven XML parser.
A number comprising a single value opposed to a complex number or a vector.
The method to determine which process to be executed next.
SCSI (Small Computer System Interface)
A standard high-speed parallel interface for connecting peripheral devices.
Search Engine Optimization (SEO)
The process that helps to increase the qualify and quantity of website traffic.
THe time taken for a particular track on a storage disk or drum to be located.
A linked list in which each node contains a single link to its successor.
SOAP (Simple Object Access Protocol)
Software as a Service (SaaS)
A delivery model for software in which software is held by vendors, who undertake the delivery functions.
Solid-State Disk (SSD)
SQL (Structured Query Language)
A rule that defines legal sequences of symbolic elements in a language.
TCP/IP (Transmission Control Protocol/Internet Protocol)
TDD (Test-Driven Development)
UML (Unified Modeling Language)
A collection of resources that emulates the behavior of an actual machine.
VoIP (Voice over Internet Protocol)
WYSIWYG (What You See Is What You Get)