Category: Computer Science

Data vs. Information

Data and information are often confused or used interchangeably when in fact they have two different meanings. Information refers to stuff that is readable and understandable by a human, it is human-readable. Such as a plain text password or a username. Data refers to stuff that not human-readable, but still…

Continue Reading Data vs. Information

What is Encoding?

Encoding is the process of transforming the format of information into a different format required for consumption by a different program or service. This can be compared to translating natural languages, like English or French, so that the other person can understand. In computing, encoding is used to transform information…

Continue Reading What is Encoding?

What is Encryption?

Encryption is the process of securing information and translating it into unreadable data. Encryption is a two-way process, which means anything that is encrypted can be decrypted too. It is often used to secure users’ passwords or to secure sensitive data over transmission. Websites have to save your passwords somewhere,…

Continue Reading What is Encryption?

Concurrency vs. Parallelism

Concurrency and parallelism are two distinct words with distinct meanings that are often misused or confused. They both refer to the execution of multiple tasks and how multi-tasking is handled by the computer. Parallelism is true multi-tasking, where two or more tasks are run at the same time in parallel….

Continue Reading Concurrency vs. Parallelism

Bits, Bytes, and Binary

If you’ve ever talked to someone who works with computers or read something about how computers work then you’ve probably heard the phrase “computers are just a bunch of ones and zeros”. This is true, but there is so much more behind it. When we usually count each digit can…

Continue Reading Bits, Bytes, and Binary

What is UML?

Unified Modeling Language, or UML, is a way of visualising systems. There are different types of UML diagrams and they can used to visual how a computer program is structured, how a user interacts with a program, structure of a database, and much more. Basically UML can be simplified as…

Continue Reading What is UML?

Unit and Integration Tests Explained

Unit and integration tests are two types of software level tests. Software level tests involve writing additional code to test existing code. The difference between unit and integration tests is what you would test within each individual test; how much of the software you would test within any one test…

Continue Reading Unit and Integration Tests Explained

How Do You Test Software?

Testing software verifies that the software works as you expect and as you want it to function. Testing is vital to the full software developer life cycle. Without testing software you write you cannot confirm that is functions as you expect, reading and understanding what the code should be doing…

Continue Reading How Do You Test Software?

What are Design Patterns?

A design pattern is way to lay out or organise code in a way to solve a certain problem. Design patterns are established ways in which to organise code, so it makes the code not only easier to explain to other developers but also solves a problem. They are commonly…

Continue Reading What are Design Patterns?

What is Refactoring?

Refactoring is the process of changing code so that is functions in the same way. Refactoring is usually used to clean code up and make it more readable without effecting the functionality of the code. Testing can be used to verify the process of refactoring, and to ensure that the…

Continue Reading What is Refactoring?