Throughout this journey we will be using a lot of technical jargon which can be confusing at first. Let's start getting comfortable with talking the talk...
Algorithm and Programs
An algorithm is a sequence of instructions. Algorithms can be expressed in different ways. For instance I can give you a simple algorithm in English on how to boil an egg. We also express algorithms by writing programs in some programming language like Java. Therefore a program is also a sequence of instructions intended to be interpreted by a computer.
We write programs so that our computers can use an algorithm to process our data so that it can give us interesting information. Is there a difference between data and information? Well, it turns out there is!
Data and Information
Data is the raw values that we enter as input normally does not have meaning whilst information is the outcome after the data has been processed which normally has a lot of meaning.
Let us just imagine that we want to use a program to get information about a cylinder. First we enter raw data about the cylinder's dimensions like: 10 for the height and 3 for the radius of the base. By putting in data we can get the computer to process it and get new information such as the volume. The main reason we use computers is to convert our data into useful information so that we can use it to help us when doing daily tasks! Raw data is very close to the input component, whilst information is very close to the output component. In this example, the feedback we get back will help us pick out the perfect cookie jar 🍪❤️😋. In most computer systems where there is a clear human user it is normally up to the user to interpret the output as useful information within a real-world context.
Scenario | Data | Information |
A teacher compiling exam reports using a software application | Marks all students gained in a computing exam | Average, highest mark, lowest mark |
A data scientist using artificial intelligence models to predict the weather | Weather data of the past five years | Weather forecasts |
An accountant using book keeping software for a shop | Sales and purchases transactions | Whether a profit or loss has been made |
A gardener using a low-powered dedicated computer system to take care of plants in the nursery | Readings from a digital soil moisture meter | Whether or not the plant needs watering |
At times the terms ‘data’ and ‘information’ are often used interchangeably.
Analogue vs Digital Data
Analogue means continuous and is represented in a physical way for e.g., sound which is represented as a physical sound wave. Analogue is extremely precise; in fact the arms of the analogue clock on the right show the exact time, and when the sound from a piano or reaches your ear, your ear is receiving the most exact sound. But we have some bad news, our computers cannot work with continuous data. They can only process digital data!
Digital means discrete or in steps e.g. the digital clock on the left never shows seconds, it moves in steps of minutes. This might be hard to believe, but the digital sound we receive from our headphones also moves in very very small steps, so small that when the raw analogue sound reaches our ears we do not notice anything weird like distortion.
So only digital data can be processed by a computer but at the same time we need our computers to be able to capture/produce analog signals, for example, we need our headphones to emit sound waves so that we can hear.
We Need Some Form of Conversion:
To convert an analogue sound to a digital sound, we use an Analogue to Digital Converter (ADC). The image below illustrates converting analogue sound received on a microphone into a digital signal.
If we are converting a digital sound to an analogue one, we use a Digital to Analogue Converter (DAC). The image below illustrates converting digital audio into a signal that can be played by a speaker.
All Digital Data Is Bits, Lots and Lots of Bits!
Bit is short for a binary digit, meaning each bit is really just a single number: either a one or a zero. Computers work with bits.
We use physical elements to represent a one or zero:
A sequence of 8 bits is called a byte. A kilobyte is equivalent to 210 bytes or 1024 bits. See the following table:
nice work 🖥️
😎