You are on page 1of 8

Intro to Computer Science Terminology

Computer Science
A complex definition: Computer Science is the study of information technology, processes, and their interactions with
the world.

A simple definition: Computer Science is the study of using computers to solve problems.

Computer Basics
A computer is a machine that performs computations based on instructions.

A computer is made up of two components:

 hardware

 software

Hardware consists of the physical components of your computer. If you can kick it, punch it, or pick it up to throw it, it’s
hardware.

Software, on the other hand, is not a physical component. Software consists of a set of instructions for the hardware.
These instructions are typically saved in files on your computer. The instructions aren’t in English or any other spoken
language; they are in a special type of language, called a programming language.

To sum it up, hardware is anything you can physically touch. Softwareprovides the instructions that tell the hardware
what to do.

A program is a synonym for a piece of software, or an application. In essence, it’s a file saved on your computer, written in
a programming language, that contains instructions to tell the computer what to do when the program is launched.

Code is a synonym for the “instructions” within a file. It’s also synonymous with software. “Code” is just a bunch of words
and punctuation symbols within a computer program, written in a programming language.

Computer Hardware
To learn programming, you must first learn the basics of computerhardware.

The different components of computer hardware each serve various purposes.

There are 6 main components that make up a computer’s hardware:

 The Central Processing Unit (CPU)

 Main Memory
 Secondary Storage

 Input/Output Devices (I/O Devices)

 Network

 Bus

The CPU is often called the “brain” of the computer. It is responsible for executing instructions, such as the code in a
program.

The Main Memory, also referred to as “Random Access Memory” (RAM), is used to store: 1) the code from your
programs and 2) the data that the code operates on while the program is actively running. When you open an application
such as Microsoft Word on your computer, the code to run Microsoft Word gets loaded into main memory.

Secondary Storage stores your programs and data when they are not actively being used.

I/O Devices allow people to interact with the computer. I/O Devices allow people to input data into the computer
(keyboard, mouse, microphone) or output data to the user (monitor, printer, speakers).

The Bus is a group of wires that connect the different hardware components. These wires allow data to be passed between
the different hardware components. For instance, when you run a program on your computer, the bus sends the data
(including the actual code of the program) stored in Secondary Storage to the Main Memory.

A Network allows your computer to connect to other computers around the world. Networks allow you to send and receive
data from other computers, such as an email to or from a friend.

Programming Terminology — Synonyms
In general terms, you can think of each of the following three groupings of words as synonyms. While each can denote
something that varies slightly, for your introductory understanding, you can think of the following as being equivalent:

1. “code” = “computer instructions” = “software” = “program” = “app” = “application”

2. “coding” = “programming” = “software development” = “software engineering”

3. “programmer” = “coder” = “software developer” = “web developer” = “software engineer”

Machine Language vs. Programming Language


Computers and humans represent and understand information in different formats.

Anytime you save data (such as a Word document) to you computer, the computer stores all the characters you type in a
special format, called binary, also known as machine language.

Binary is a language made up of combinations of 0s and 1s. Each character on your keyboard has a unique binary
representation that distinguishes the character from the rest.
A character can be a letter, numerical digit, punctuation sign, symbol, space, next line return, tab, etc. Each character has a
unique numerical code that distinguishes it from others. You can find out the numerical code (ASCII code) for each
character by looking it up in an ASCII table, such as here: https://www.cs.cmu.edu/~pattis/15-
1XX/common/handouts/ascii.html

Notice that the character ‘A’ is separately distinguished from ‘a’.

‘A’ has the numerical code: 65

‘a’ has the numerical code: 97

This means, anytime the character ‘a’ appears in your document, your computer saves the data for it in the binary
equivalent to the value 97.

Note that 97 is a human-readable format, which is called “Decimal” format. “Decimal” is the name of the format for
numerical values represented in base-10, meaning that the digits 0–9 are used to form the values.

“Binary” format implies that the numerical values are represented in base-2, meaning that the digits 0 and 1 are used to form
the values. That may sound pretty abstract, but you can surprisingly convert a decimal number to binary (and binary to
decimal) using mathematical formulas. There’s no need to do this — this is just for your information. If you actually wanted
to get the binary representation of a decimal number, you can use a calculator, such as: https://codebeautify.org/decimal-
binary-converter

When you save your Word document and close your Word application, your computer actually saves your document in 0s
and 1s. People designed computers to be efficiently used by humans. Since binary language isn’t an efficient means of
communication for humans, it would not make sense for humans to see their Word documents in binary format. For that
reason, when you later reopen your document, it will be translated from binary format and back into English (or whichever
language you used).

Binary (“machine language”) is referred to as a “low-level language.” It’s considered to be “low-level” because it is a
language that machines understand.

Programmers type their programs in a programming language.

A programming language is referred to as a “high-level language” since it is a language that humans can read and
understand.

Just like English, a programming language also has its own set of rules, or syntax. It also contains a set of defined words
called keywords (or “reserved words”) that have a specific meaning when used in a program.

Programming Paradigms
Just as there are many different spoken languages that humans communicate in, there are also many different
programming languages programmers use to create programs.

A programmer who knows several different programming languages will select the most appropriate programming
language to use in each particular circumstance. For instance, there are programming languages that are more suitable
for web development (making websites) and there are others that are more suitable for mobile development (making
smartphone apps).
In addition to specifics such as the type of development, at a more granular level, programming languages are classified into
different programming paradigms.

Here’s a simple definition for the word “paradigm.”

A paradigm is a way of thinking or a way of doing something. A paradigm is a mindset.

A programming paradigm is a way of classifying a programming language based on the style or methodology of
programming.

Here are a few common types of programming paradigms:

 The functional programming paradigm

 The procedural programming paradigm

 The imperative programming paradigm

 The object-oriented programming paradigm

As an example, Java and C are examples of programming languages. The Java programming language is an example of
an object-oriented programming language. The C programming language is an example of a proceduralprogramming
language.

For now, you don’t need to know what it means for a programming language to be classified as object-
oriented or procedural. However, it just helps to understand that there are different classifications for the various
programming languages.

Writing and Saving Your Code


The first step in the software process involves programming, which simply means to write code. A programmer writes
code to create a program. A program is simply an application that does something, or achieves some goal, when the
user of the application launches it. As the programmer, your goal is determine what you want your code to do, and to write
the code.

When you want to write an essay, you use a computer application such as Word or any text editor. You simply open the text
editor application, create a file, type in some text, and save your document in the desired file format, such as .docx or .pdf.

The process of writing code is similar.

You can write your code using a text editor or an Integrated Development Environment (IDE). An IDE is a computer
application that contains all the tools you need to program, such as a text editor, a compiler, a runtime environment, and
a debugger.

A debugger is a tool that programmers use to find mistakes in their code, called bugs. For instance, A bug may either
prevent a program from compiling, prevent a program executing (running), or may cause a program to produce incorrect
values. Learning how to debug a program is a skill that you will develop over the course of your professional life.

After you create your program, you must save your code within a file, called a source file. A source file is simply a file that
contains source code, which is your program’s code. Saving your code within a source file requires naming the file with
a root name and an extension. The root name is the unique name you choose to give your file, which is comprised of the
characters appearing to the left of the dot (.) of your file name, and the extension is what appears to the right of the dot.
You give the source file the extension expected according to the programming language of your source code. For instance,
the extension .java is used for source files written in Java, whereas the extension .c is used for source files written in C.

Compiling and Running Your Code


Suppose you have written a program in the C programming language and saved your program as myprogram.c. Next, you
will want to run your code to see if your program does what you had intended it to do.

Before you can run (“execute”) your code, your source file needs to be translated from C (the higher-level language) to a
binary (the lower-level language) executable file. An executable file (or, “executable”) is a file that contains the binary
translation of your code and, when launched, it will run(“execute”) your program. This translation process is
called Compilation.

Compiling is the process of translating source code within a source file from higher-level language into lower-level
language, and then creating and saving that translated code in an executable file.

A compiler is a computer program used for compiling your code. It is a common tool included in an IDE. When using an
IDE, the IDE may handle running the compiler program for you when you run your code. When you are not using an IDE,
you will need to launch the compiler and specify the source file you would like it to compile for you.

If your program contains no bugs within the code, it will produce the executable, and the compilation process successfully
completes. However, if your program contains one or more bugs, it may cause an error, preventing the compiler from
producing the executable. If the compiler produces an error, you will need to go back through your code to debug it and
correct the mistake(s).

Once you have successfully compiled your program, you can run (“launch” or “execute”) the executable, and your computer
will execute the instructions of your program.

Note: a lot of these topics are covered in the following introductory textbook to C programming: The Art and Science of C,
by Eric Roberts
25 Computer science terms you need to know
Every industry has its own set of jargon, and computer science is no exception. Familiarize yourself with these
25 computer science terms to wow your classmates and teachers from day one.
1. Analog
Analog technology is any piece of technology that does its job without processing numbers electronically like a
computer does. You might think of analog as “old-school” technology, like film cameras or tape recorders.
2. Bandwidth
This term refers to the amount of information that can be transmitted or processed, either wirelessly or across
a hardwired connection. Internet services will advertise fast speeds measured in bandwidth, so it is a well-
known component of the IT world.
3. Big data
Big data is a quick way to refer to the massive amounts of data that companies collect on a day-to-day basis.
Corporations face a number of challenges of managing big data, especially when it comes to analysis and
security.
4. Bit
Bit is an abbreviation for “binary digit,” the smallest piece of information used by a computer. Each bit is
either a 1 or a 0, which are the binary digits that make up computer language. Bits are literally the foundation
upon which computer science is built. Since they’re so miniscule, computer whizzes also need to know some
basic tech math to think of bits on a larger scale:
Byte = 8 bits
Kilobyte = 1024 bytes
Megabyte = 1024 kilobytes
Gigabyte = 1024 megabytes
5. Bug
A bug is a programming error that causes unexpected glitches or problems for a program’s end user.
6. Cloud storage
Cloud storage is an alternative to storing data on a computer’s physical storage. Information that’s stored “on
the cloud” is kept on remote servers that can be accessed anywhere via the Internet.
7. Code
Code refers to different programming languages used to create, edit or manage computer programs or
applications. Most computer science students will specialize in a small handful of coding languages depending
on the career they’d like to pursue.
8. Control panel
Just like it sounds, the control panel is a tool that allows you to change a program’s settings or alter the way it
looks or behaves.
9. CPU
CPU stands for the Central Processing Unit, which is the processing chip and "brains" of a computer.
10. Data security
This is the process of protecting data from unauthorized users or hackers.
11. Debug
Debugging refers to the process of finding and removing errors from a program's source code. The goal is for
programmers to discover and fix bugs before their end user experiences problems.
12. Digital
Digital technology is the opposite of analog. It’s anything that uses a computer’s binary language to do its job.
To digitize something is to convert analog data into digital data that can be used by a computer.
13. Disk storage
Disk storage refers to a computer’s hard drive or long-term memory. This is where a computer stores
information that isn’t being used at the time. If disk storage becomes too full, a computer may become
sluggish as it takes the time to wade through all that data.
14. Ethernet
Ethernet is similar to the Internet. It’s a system connecting a number of computers or devices to the same
network, allowing for fast, monitored transmission of data. Ethernets have restricted network access that’s
managed by a handful of system administrators, making it a secure network solution for many companies.
15. Hacker
This term can refer to an expert programmer. But it’s most common usage is referring to someone who can
gain unauthorized access, or “hack,” other computers or networks. IT specialists can earn qualifications to
become a certified ethical hacker.
16. HTML
HTML stands for Hypertext Markup Language. HTML is a coding language used to write Internet-based
documents, like websites. It’s one of the basic coding languages you’ll most likely learn early in your computer
science career.
17. Hub
This device is a central connection for all computers in a network, which is usually Ethernet-based. Information
sent to the hub can flow to any other computer on the network.
18. Index
An index is a list of data, such as a group of files or database entries. It is typically saved in a plain text format
so a computer can quickly scan it to retrieve the information it needs.
19. IP address
Also known as an "IP number" or simply an "IP," this is a numerical code that identifies a specific computer on
the Internet. Think of it as a computer’s unique Social Security Number.
20. LAN
LAN stands for "Local Area Network." This is a small computer network, often located within just a single
room. (Think your high school or college computer lab.)
21. Plain text
Unformatted text that doesn’t support italics, underlining, bold characters, fonts or font sizes.
22. Processor
Also referred to as the microprocessor, this little chip is the heart of a computer. The processor does all of the
computations for the computer—meaning it’s in charge of every piece of input and output that comes a
computer’s way! Speed is important when it comes to processors and many can handle trillions of calculations
per second.
23. RAM
This is an acronym for Random-Access Memory, the place where a computer stores data while it is being used
or changed. Think of it as a computer’s short-term memory. It doesn’t have unlimited storage, but it makes for
quick access to information you’re currently using.
24. ROM
ROM stands for Read Only Memory. This is memory that can only be read from and not written to. Computers
use ROM to store important tasks like start-up processes and software instructions.
25. Vaporware
Vaporware is software that is advertised and sometimes sold but doesn’t actually exist yet. Sometimes
companies are still fine-tuning their vaporware products before they release. Other times companies know
that a product doesn’t exist (or won’t for many years to come) but are simply using a marketing ploy to gauge
interest.

You might also like