More results...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
post
page
Python IDE Dashboard

OCR J277/01 – 1.5 – Systems software

1.5 – Systems software - Overview / Checklist
1.5.1 Operating systems
The purpose and functionality of operating systems:

    User interface
    Memory management and multitasking
    Peripheral management and drivers
    User management
    File management
1.5.2 Utility software
The purpose and functionality of utility software
Utility system software

    Encryption software
    Defragmentation
    Data compression

Recommended Resources

OCR J277/01 – 1.4 Network security

1.4 Network security - Overview / Checklist
1.4.1 Threats to computer systems and networks
Forms of attack:

    Malware
    Social engineering, e.g. phishing, people as the ‘weak point’
    Brute-force attacks
    Denial of service attacks
    Data interception and theft
    The concept of SQL injection
1.4.2 Identifying and preventing vulnerabilities
Common prevention methods:

    Penetration testing
    Anti-malware software
    Firewalls
    User access levels
    Passwords
    Encryption
    Physical security

Recommended Resources

Further Reading…

OCR J277/01 – 1.3 Computer networks

1.1 System Architecture - Overview / Checklist
1.3.1 Networks and topologies
Types of network:

    LAN (Local Area Network)
    WAN (Wide Area Network)

Factors that affect the performance of networks
The different roles of computers in a client-server and a peer-topeer network
The hardware needed to connect stand-alone computers into a Local Area Network:

    Wireless access points
    Routers
    Switches
    NIC (Network Interface Controller/Card)
    Transmission media

The Internet as a worldwide collection of computer networks:

    DNS (Domain Name Server)
    Hosting
    The Cloud
    Web servers and clients

Star and Mesh network topologies

1.3.2 Wired and wireless networks, protocols and layers
Modes of connection:

    Wired

      Ethernet

    Wireless

      Wi-Fi
      Bluetooth

Encryption
IP addressing and MAC addressing
Standards
Common protocols including:

    TCP/IP (Transmission Control Protocol/Internet Protocol)
    HTTP (Hyper Text Transfer Protocol)
    HTTPS (Hyper Text Transfer Protocol Secure)
    FTP (File Transfer Protocol)
    POP (Post Office Protocol)
    IMAP (Internet Message Access Protocol)
    SMTP (Simple Mail Transfer Protocol)

The concept of layers

Recommended Resources

1.3.2 Wired and wireless networks, protocols and layers

Wired & Wireless Connection Methods

Can you recognise the different types of cables used in IT? Do you know what are the main wireless technologies used to connect IT equipment? Take the quiz to check your knowledge of wired … Continue reading


Daily Protocolometer

In this post, we are investigating our daily use of the main protocols used when accessing the Internet while using our smartphone, laptop or desktop computer, tablet, smartTV or game console. Protocols are an essential concept to enable network communications … Continue reading


TCP/IP Protocols and Packet Switching

The TCP/IP protocols are a suite of protocols used to support different types of communication between devices over an IP network such as the Internet. These protocols resulted from research and development conducted by the US Defense Advanced Research Projects … Continue reading


TCP/IP Stack: Network Layers and Protocols

The TCP/IP Stack is a model that governs how data is transmitted from one computer to another via an IP network such as the Internet. Internet communication includes using a web browser to access a webpage from a websever, sending … Continue reading


IP Addresses (IPv4, IPv6), MAC Addresses & URLs

In this blog post, we are going to learn about the format of different addresses used on computer networks to uniquely identify hardware devices. We will investigate the use and format of: IPv4 Addresses, IPv6 Addresses, MAC Addresses. IPv4 Addresses … Continue reading


Further Reading…

OCR J277/01 – 1.2 Memory and Storage

1.2 Memory and Storage - Overview / Checklist
1.2.1 Primary storage (Memory)
The need for primary storage
The difference between RAM and ROM
The purpose of ROM in a computer system
The purpose of RAM in a computer system
Virtual memory
1.2.2 Secondary storage
The need for secondary storage
Common types of storage:

    Optical
    Magnetic
    Solid state

Suitable storage devices and storage media for a given application
The advantages and disadvantages of different storage devices and storage media relating to these characteristics:

    Capacity
    Speed
    Portability
    Durability
    Reliability
    Cost
1.2.3 Units
The units of data storage:

    Bit
    Nibble (4 bits)
    Byte (8 bits)
    Kilobyte (1,000 bytes or 1 KB)
    Megabyte (1,000 KB)
    Gigabyte (1,000 MB)
    Terabyte (1,000 GB)
    Petabyte (1,000 TB)

How data needs to be converted into a binary format to be processed by a computer
Data capacity and calculation of data capacity requirements

1.2.4 Data storage
Numbers
How to convert positive denary whole numbers to binary numbers (up to and including 8 bits) and vice versa
How to add two binary integers together (up to and including 8 bits) and explain overflow errors which may occur
How to convert positive denary whole numbers into 2-digit hexadecimal numbers and vice versa
How to convert binary integers to their hexadecimal equivalents and vice versa
Binary shifts

Characters
The use of binary codes to represent characters
The term ‘character set’
The relationship between the number of bits per character in a character set, and the number of characters which can be represented, e.g.:

    ASCII
    Unicode

Images
How an image is represented as a series of pixels, represented in binary
Metadata
The effect of colour depth and resolution on:

    The quality of the image
    The size of an image file

Sound
How sound can be sampled and stored in digital form
The effect of sample rate, duration and bit depth on:

    The playback quality
    The size of a sound file
1.2.5 Compression
The need for compression
Types of compression:

    Lossy
    Lossless

Recommended Resources

1.2.1 Primary storage (Memory)
1.2.2 Secondary storage

Further Reading…

OCR J277/01 – 1.1 System Architecture

1.1 System Architecture - Overview / Checklist
1.1.1 Architecture of the CPU
The purpose of the CPU:

    The Fetch – Decode – Execute Cycle

Common CPU components and their function:

    ALU (Arithmetic Logic Unit)
    CU (Control Unit)
    Cache
    Registers

Von Neumann architecture:

    MAR (Memory Address Register)
    MDR (Memory Data Register)
    Program Counter
    Accumulator
1.1.2 CPU performance
How common characteristics of CPUs affect their performance:

    Clock speed
    Cache size
    Number of cores
1.1.3 Embedded systems
The purpose and characteristics of embedded systems
Examples of embedded systems

Recommended Resources

Further Reading…

Embedded Systems in a Smart World

In our modern world, we are surrounded by technology and more and more every day objects now include some built-in computer system. Such objects are called embedded systems and we can define an embedded system as follows:

An embedded system is a computer system built-in a larger device in order to control it.

As opposed to generic purpose computers such as desktop computers and laptops, embedded systems tend to be more specialised and have a reduced set of functionalities specific to the device they are controlling. This also means that the computer hardware used in an embedded device is more basic and cheaper to produce than the hardware you would find within a computer desktop or laptop. It’s also often smaller and can hence be embedded within tiny devices such as wireless earpods.

The digital/smart revolution

Have you noticed how over the last few decades, a lot of our every day objects have been upgraded to become digital or smart? A digital or smart object such as a digital camera, a smart watch or a smart speaker is an embedded device: it can process digital (binary) data and is operated via a built-in computer system inside it and that has been programmed to control the device.

Check the following slide show for some examples of every day objects which have become digital / smart embedded systems:

As any computer system, embedded systems consist of both hardware and software: They have to include computer programs that are used to operate them. They manipulate binary data using the Input > Process > Output model.
So most embedded devices will include at least one input device (microphone, keypad, photo lens, sensors) a processing unit and at least one output device (speaker, screen, LEDs, actuators to control motors, etc.).

A connected world and the Internet of things

An embedded system can be a standalone system, but recently you will find that a lot more embedded systems are also connected to other devices and /or to the Internet.

For an embedded device to connect to another device it may rely on a wired or a wireless connection such as a USB cable (wired connection) or Bluetooth (wireless connection). For instance wireless earphones, smart speakers, activity trackers all use Bluetooth to connect to your smartphone or computer.

More and more of these devices are also directly connected to the Internet (via WiFi or 3G/4G/5G). Smart watches, smart speakers, smart TVs can all connect to the Internet to retrieve and log information on a central server. We call this proliferation of smaller connected objects/embedded devices the “Internet of Things”. The Internet of things is no longer a network of generic purpose computers like it used to be in the mid 90s. Nowadays it connects a wide range of computers and embedded devices which all have their unique IP address and transfer data across the Internet using the TCP/IP protocols.

This huge increase in the number of connected devices means that the current format used to allocate a unique IP address to a device (IPv4) is no longer adapted: There are not enough unique unique IPv4 addresses for all the connected devices worldwide, hence the need to upgrade to a new format, IPv6, which contains far more unique IP addresses. In fact, with IPv6, we probably have more unique IP addresses than we will ever need.

Embedded devices in today’s world

So, as mentioned at the start of this blog post, we are nowadays surrounded by technology / embedded devices. So let’s investigate where can we find most of these devices:

Home Automation
Our homes include more and more embedded devices. Our entertainment systems are all becoming smart connected devices: Tablets, Smart Phones, Smart speakers, Smart TV’s are all examples of embedded devices.

More and more embedded devices are also used to monitor and control different aspects of our home. This is called home automation and includes the use of:

  • smart readers to control your energy use,
  • smart central heating systems,
  • smart lighting systems,
  • smart burglar alarm systems,
  • video doorbell systems,
  • etc.

Wearable Technologies
Wearable technologies regroups all the technologies and embedded systems that we wear on us:

  • smart phones,
  • smart watches,
  • activity/fitness trackers,
  • GPS trackers (often included in a smart watch, activity tracker or smart phone),
  • Medical Monitoring Devices such as Heart Rate monitoring devices,
  • MP3 Player,
  • Noise cancelling earphones,
  • etc.

Automotive Technologies
Automotive technologies regroup all the technologies and embedded devices when we use a motorised mean of transport such as a car.
Modern cars includes a wide range of embedded devices including:

  • GPS SatNav Systems
  • Automated Braking Systems (e.g. Anti-lock Braking System: ABS)
  • Cruise Control
  • Climate Control / Air-Conditioning Control System
  • Automatic Parking System
  • Airbag Control Unit
  • Tyre Pressure Monitoring System
  • etc.

Embedded Systems on the High Street
Embedded systems are also used on the high street for security purposes, to collect statistical data, to regulate traffic, etc. A few examples include:

  • CCTV Security/Monitoring Systems
  • Speed Cameras
  • Automated Traffic Lights Systems
  • Car Park Monitoring Systems
  • Air Pollution Monitoring Systems
  • Noise Pollution Monitoring Systems
  • Connected weather stations
  • Etc.

Embedded devices: Drag and Drop

Embedded Devices – Drag and DropOpen in New Window

Computer Science – Cryptic Crossword #01

The first cryptic crosswords originated from the United Kingdom and appeared in the mid 1920’s. A cryptic crossword is a type of crossword puzzle in which each clue is a word puzzle including anagrams, acronyms, synonyms, homophones and other wordplays.

Cryptic crosswords where used during World War II at Bletchley Park, UK to help with the recruitment of logical and analytical minds with lateral thinking abilities. These were the required treats needed to become a proficient code breaker and help decode encrypted secret messages.

You can find more about Bletchley Park and the role of code breakers such as Alan Turing during World War II by completing our Enigma – Mission X challenge.

Before attempting to solve this challenge, you should familiarise yourself with the different types of clues that the crossword definitions can be based on. Effectively, the definitions given in a cryptic crossword, will almost never be a literal meaning of the answer you are looking for. Instead, they will be based on a wordplay. When looking at a definition, you will first need to try to locate the two main hints which are:

  1. An exact definition or synonym, in much the same way as a conventional crossword clue. This can appear either at the start or at the end of the definition.
  2. Some sort of wordplay. There are many different types of wordplay that can be used. Sometimes an indicator term (a specific expression or word) will lead you to the type of wordplay that is being used.

Let’s investigate some of the most common types of cryptic crossword definitions:

Double DefinitionAnagramsAcrosticHidden WordsReversalHomophonesCharadesDeletionCrypticComplex

Double Definition:

When the clue consists of two different meanings of the same answer.
Double Definition

Anagrams:

With these clues you will have to jumble up the letters from the clue to find the answer.
Anagrams

Acrostic:

These sorts of clues means that you will have to take some of the letters (e.g. the first letter of each word, or the last letter, or every odd letter, etc.)
Acrostic Definition

Hidden Words:

When the answer is actually included within the clue itself! you just need to spot it!
Hidden Words

Reversal:

When you need to read a word or expression backwards, from right to left.
Reversal

Homophones:

The answer you have will sound similar to the actual answer you are looking for! You may have to say it out loud to find it!
Homophones

Charades:

Charades will involve joining several parts of words together to get to the final answer.
Charades

Deletion:

On occasion you will need to remove one or several letters from the clue to get to the answer.
Deletion

Cryptic Definition:

These can be quite challenging, using a confusing definition sometimes purposefully given in a somewhat misleading way.
Cryptic Definition

Complex Definition:

When you start combining several techniques within the same definition!
Complex Definition

The following Cryptic Puzzle is based on Computer Science Terminology (from the A Level Computer Science Specification).
Computer Science Cryptic CrosswordOpen Cryptic Crossword Puzzle in a New Window
Computer Scence Cryptic CrosswordOpen Cryptic Crossword Puzzle in a New Window

unlock-access

Solution...

The solution for this challenge is available to full members!
Find out how to become a member:
➤ Members' Area

Big O Notation – Quiz

Before completing this quiz, we invite you to revisit the main Big O Notations used to describe the time complexity and space complexity of an algorithm..

The main Big O Notations this quiz will focus on are:

Take the Quiz! (open full screen)


Reserved Keywords of the Python Language

If you have reached this page, you have probably already started to learn to code using a high-level programming language such as Python, JavaScript, C, php or Ruby. But what does “learning a new programming language” involve?

Learning a programming language is, to some extent, like learning a foreign language. It will require you to learn the words this language is made of. The good news is, unlike modern languages such as English, Arabic, French or Mandarin, programming languages have a very limited number of words for you to learn: these are the reserved keywords and built-in functions of the language.

Let’s compare different programming and non-programming languages!


English?
🗩
According to the Oxford English Dictionary, the English language contains more than 170,000 words!


Python?
💻
Python v3.6 contains exactly 33 reserved keywords and 71 built-in functions.


Hindi?
🗩
It is estimated that the Hindi language contains between 150,000 and 185,000 words.


HTML?
💻
The HTML (version 5.2) language contains 142 different tags.


CSS?
💻
The CSS (version 3.0) language contains around 520 distinct properties.


French?
🗩
According to the Larousse dictionary, the French language has approximately 135,000 words.


Java?
💻
Java contains exactly 53 reserved keywords with an additional 4,000 built-in functions in the JDK.

It is believed that to be able to be able to take part in every day conversations in a foreign language, you need to know around 2,000 to 3,000 words. To be fluent in a language, you would need to know between 5,000 to 10,000 words!

Luckily, to become a proficient programmer using a programming language, you do not need to remember that many words!

As you have started to learn Python, you can test yourself to see how many of the reserved keywords and built-in functions you can remember by completing the quiz below!
Python QuizOpen in New Window

101 Binary Watch


A binary watch uses 18 LEDs to give the HH:MM:SS time using three binary numbers each consisting of 6 bits.

The following diagram can help you understand how to work out the time displayed on a binary watch:

Using the above diagram we can work out the actual time being displayed:

Your Task:


Can you tell what is the time displayed by each of the following binary watches:

HH:MM:SS: (view solution)
HH:MM:SS: (view solution)
HH:MM:SS: (view solution)