top of page

An Introduction to Computer Science

Author: Jasmine

Published on: February 14, 2025

Written on: February 4, 2025


An Introduction to Computer Science

Computer science is a vast field full of different disciplines and subjects. It covers a wide range of topics, from game development to data structures. With so many fascinating subjects, there’s something for everyone. However, this massive field can also feel too big, confusing, and even a bit intimidating.

When you first start looking into computer science (CS), you’ll see a lot of unfamiliar and new terms. You might be asking yourself: What’s an algorithm, or an IDE? A compiler? Syntax? Binary? 

And don’t get me started on all the different programming “languages” out there! 


Image by Pixabay
Image by Pixabay

But don’t worry! The goal of this blog is to help you understand all that. And possibly keep you from setting your computer ablaze after spending countless hours trying to read the tiny green text (But I can’t make any promises on that front). In this blog, I’ll break down the basics of computer science. Starting with simple terminology, then programming languages, and finally I’ll share my favorite resources to help you in your journey!

Let’s get started!

Basic Terminology

Computer Science: The study of computers and their systems, including everything from data structures, software development, and other computational methods.

Programming: The process of writing computer programs. It's basically telling the computer what to do. Imagine that you (the computer) are cooking. You grab the recipe (the programming) and follow the instructions.

Binary/Bit: A number system the computer processes using 0 and 1 to represent data. It can be a bit complicated to understand binary. So for now, just remember that binary is what your computer reads, and the numbers are called "bits".

Compiler: A program that translates high-level code (code that you can read easier) into machine code (typically the binary system). It does this so that programmers can code easier, and the compiler worries about making it readable to the computer.

Syntax: The set of rules that define the structure of statements in a programming language. Things like how commands, keywords, operators, and symbols should be arranged follow the rules of syntax.

Languages: Programming languages (high-level code) used to communicate instructions to a computer, such as Python, Java, C++, and JavaScript.

Algorithm: A step-by-step procedure or formula for solving a problem or performing a computation. It helps guide a program’s behavior.

IDE (Integrated Development Environment): A software tool that provides developers with features like code editing, testing, debugging, and compiling to facilitate programming tasks.

CPU (Central Processing Unit): The brain of a computer that performs basic arithmetic, logic, control, and input/output operations as it processes instructions.

RAM (Random Access Memory): A type of volatile memory that temporarily stores data and instructions needed by the CPU for quick access while the system is running.

Bug: An error or flaw in a program that causes it to behave unexpectedly or incorrectly, often due to incorrect logic or coding mistakes.

API (Application Programming Interface): A set of protocols and tools that allow different software applications to communicate with each other, defining how requests and responses should occur.

Cybersecurity: The practice of protecting systems, networks, and data from cyber threats, including hacking, viruses, and data breaches, using methods like encryption and firewalls.

Code: A set of instructions written in a programming language that a computer can execute. It refers to the actual source code of programs and applications.


Image by Pixabay
Image by Pixabay

Programming Languages

Programming languages are simply different ways to tell a computer what to do. Think of them as the bridge between human instructions and computer operations. These languages are known as “high-level languages”, meaning they’re designed to be easier for humans to read and understand.

But here’s the catch: computers can’t actually read these high-level languages. Instead, they rely on machine language or low-level language (a.k.a. binary). Remember when we talked about terminology? That’s right—computers only understand binary, a series of 1s and 0s.

Here’s an example:

Binary (Machine/Low-Level Language):

01110000 01110010 01101001 01101110 01110100 00101000 01001000 01100101 01101100 01101100 01101111 00101001


Python (A High-Level Language):

print("Hello")


I think we can all agree: Python is much easier to read than binary!

Because it’s easier to read high level languages, they are the ones programmers use on a daily basis. But each language comes with its own strengths, weaknesses, and use cases. Now, I bet you’re saying, “If computers only understand binary, how do we use these human-friendly languages?” Well, that’s where compilers come in! A compiler translates high-level code into machine language, making it understandable for the computer.



Fun Fact!

The first-ever high-level programming language was Fortran, created in 1954 by John Backus.



There are hundreds of programming languages out there, but below are some of the most common and well-known ones that you’ll likely come across! Along with the definitions, you’ll also see a print statement in each unique syntax.


JavaScript: Primarily used for web development and adding interactive elements like buttons, animations, and more. It’s relatively simple to use and is often considered to be the best language for aspiring programmers to learn along with Python. 

Print Statement: console.log("Hello");


Python: An extremely versatile language with very readable syntax. Web development, data analysis, and automation are what it’s typically used for. It’s very popular so there’s no shortage of tutorials and lessons, making it a great first language to learn. 

Print Statement: print("Hello")


C++: A very powerful language capable of making game engines and applications requiring high performance from scratch. Many powerful game engines use it, making it a perfect language to learn if you’re into game development. Unfortunately, it’s considered to be one of the hardest languages to learn. But don’t let that stop you! There are still plenty of tutorials for it, it just might take longer to fully grasp. 

Print Statement:

#include <iostream>

using namespace std;

int main() {

    cout << "Hello" << endl;

    return 0;

}


Java: A general purpose language that is used in apps and large scale applications. It’s also unique because code written in Java can run on any platform with a Java Virtual Machine. It is also a more complicated language to learn because it requires an understanding of object-oriented programming, but it’s definitely worth it.

Print Statement: 

public class Main {

    public static void main(String[] args) {

        System.out.println("Hello");

    }

}


Swift: Designed specifically by Apple for iOS app creation. Used to make apps for iPhones, iPads, and other Apple devices. Easy to learn, and perfect for app creation. A modern and beginner friendly language with more readable syntax. However, it’s limited on what it can be used for.

Print Statement: print("Hello")


SQL: Used for interacting with and managing databases. Often used in conjunction with other languages like Python or R for data manipulation. While it’s not your typical language, it’s essential for backend development. Simple and easy to understand, it's a good idea to learn if you plan on doing anything with databases. 

Print Statement: In SQL, we don't typically print directly, but we can select a string as a result:

SELECT 'Hello';


Image by Pixabay
Image by Pixabay

Resources:

As you continue to grow and develop your programming skills, having the right resources can make all the difference. Therefore, I want to share with you some of my go-to tools that have been helpful for me. Whether you're debugging a tricky line of code or learning a brand-new language, these resources are designed to guide you, answer your questions, and keep you motivated.





As you can see, computer science may seem overwhelming at first, but by breaking it down into manageable chunks, it's easier to understand and dive into. From grasping fundamental concepts like binary and algorithms to learning different programming languages like Python, Java, and C++, the world of computer science becomes a lot less intimidating once you start exploring it step by step.

The key is persistence and curiosity. With so many resources available to you, there’s no shortage of tools, communities, and tutorials to guide your learning journey. Whether you’re creating your first program, delving into game development, or building databases, there’s always something new to discover and master. So keep exploring, ask questions, and don’t be afraid to make mistakes—because each one will bring you closer to your goal of becoming a skilled programmer. Keep exploring and change tomorrow!








 
 
 

Comments


bottom of page