top of page

Search CSNewbs

304 results found with an empty search

  • Cambridge Advanced National in Computing | CSNewbs

    An explanation and introduction to the OCR Level 3 Cambridge Advanced National in Computing specification. This certificate (H029) or extended certificate (H129) is an Alternative Academic Qualification (AAQ). Level 3 Alternative Academic Qualification (AAQ) / Cambridge Advanced National In Computing Computing: Application Development Everything you need to know about this course: The Cambridge Advanced National in Computing: Application Development is a new course that began in September 2025 . It contains both exam and NEA (coursework ) units and focuses on developing software prototypes for applications such as websites , video games and even virtual reality . The video to the left explains all the key details of this new course, but remember, things can change so the OCR website will have the latest updates . Exam Units: Unit F160: Fundamentals of Application Development F160 YouTube Playlist Unit F161: Developing Application Software F161 YouTube Playlist These pages are based on content from the OCR Cambridge Advanced National in Computing (AAQ) specification .

  • 5.1 - Data Structures - Eduqas GCSE (2020 Spec) | CSNewbs

    Learn about different data structures such as arrays, lists and records. Also, the difference between static and dynamic data structures and how to design files. Based on the 2020 Eduqas (WJEC) GCSE specification. 5.1: Data Structures & File Design Exam Board: Eduqas / WJEC Specification: 2020 + What is a Data Structure? A data structure is a way of efficiently organising data . There are two general forms of data structures: Static Data Structures The size of a static data structure cannot change e.g. if a data structure has 20 elements, no additional elements can be added or removed. The values of the data elements can be changed, but memory size is fixed when allocated at compile time. Because a static data structure holds a certain number of data elements they are easier to program because the size of the structure and the number of elements never change. An array is an example of a static data structure. Examples: A static data structure could be an array of teams in the Premier League. The data elements will change each year when teams are relegated and promoted but there will always be 20 teams. Dynamic Data Structures The size of a dynamic data structure can change as the program is being run , it is possible to add or remove data elements. Dynamic data structures make the most efficient use of memory but are more difficult to program , as you have to check the size of the data structure and the location of the data items each time you use the data. A list is an example of a dynamic data structure. A dynamic data structure could be a list of all teams in the Premier League that won their last match. Data elements (teams) will be added or removed across the season. Types of Data Structures List A list is a dynamic data structure that has the data elements stored in the order they were originally added to memory . Every data structure starts at 0, not 1 . Lists store data elements in the order they were added, so the first doctor is 0 and the most recent doctor is 12. An example list of the main Doctor Who actors Array An array is a static data structure that can hold a fixed number of data elements . Each data element must be of the same data type i.e. real, integer, string. The elements in an array are identified by a number that indicates their position in the array. This number is known as the index. The first element in an array always has an index of 0 . You should know how to write pseudo code that manipulates arrays to traverse, add, remove and search data. The following steps uses Python as an example. Traversing an Array To traverse (' move through ') an array a for loop can be used to display each data element in order. 'Inserting' a value In an array the size is fixed so you cannot insert new values, but you can change the value of elements that already exist. Overwriting the fourth element (Daphne) with a new value (Laura) will change it from Daphne to Laura. Example code for traversing: Example code for inserting: Output: Output: 'Deleting' a value In an array the size is fixed so you cannot delete values, but you can overwrite them as blank . Overwriting the second element (Shaggy) with a blank space makes it appear deleted. Example code for deleting: Output: Searching an Array For large arrays a for loop is needed to search through each element for a specific value . This example checks each name to see if it is equal to Velma. Example code for searching: Output: Two-Dimensional Array Often the data we want to process comes in the form of a table . The data in a two dimensional array must still all be of the same data type , but can have multiple rows and columns . The two-dimensional array to the right shows the characters from Scooby Doo along with their associated colour and their species. Each value in the array is represented by an index still, but now the index has two values . For example [3] [0] is 'Daphne'. We measure row first , then column . Searching a two-dimensional array: To print a specific data element you can just use the index number like Daphne above. To search for a specific value you will need two for loops, one for the row and another for the values of each row. The example to the right is looking for the value of 'Velma' and when it is round it prints the associated data from the whole row. Example code for printing: Output: Example code for searching: Output: Records Unlike arrays, records can store data of different data types . Each record is made up of information about one person or thing. Each piece of information in the record is called a field (each row name). Records should have a key field - this is unique data that identifies each record . For example Student ID is a good key field for a record on students as no two students can have the same Student ID. Data files are made up of records with the same structure. It would be most efficient for the fields in a record to be stored next to each other so that the data can be read into the record data structure in memory for processing by the CPU. In an exam you may be asked to state and design a data structure for a given scenario. If the data structure can hold values of the same data type you should draw an array , usually a 2D array for multiple rows and columns. Remember that a record is required to store values of different data types . Example questions: "A video gamer has recorded their three lap times in four Mario Kart courses." " State and design the most suitable data structure for this data." A two-dimensional array is most suitable because only one data type ( real ) is stored. "A vet surgery stores data on all dogs and cats including the animal's name, age (in years), weight (in kg) and whether or not it has been vaccinated." " State and design the most suitable data structure for this data for four animals ." A record is most suitable because the data structure requires different data types . Q uesto's Q uestions 5.1 - Data Structures: 1. Give two differences between static and dynamic data structures . [ 4 ] 2. Describe the differences between a list , array and record . [ 3 ] 3. A one-dimensional array looks like this: TigerBreeds("Sumatran","Indian","Malayan,"Amur") Write the code to: a. Print the element with the index of 3. [ 2 ] b. Change Indian to South China. [ 2 ] c. Remove the Amur element. [ 2 ] d. Search through the array for 'Malayan'. [ 2 ] 4. State and design the most suitable data structure for these scenarios: a. For each book in a bookshop, the staff need to record the title, author, number of pages and whether or not it is a signed copy. Include data for three books. [ 3 ] b. Four dieters are recording how many kilograms they have lost each month for 5 months. [ 4 ] 5. Design a file that stores the first initial, surname, age and hair colour of each member of a family. [ 8 ] Designing Data Structures Data is stored in files when it needs to be kept after the program has stopped running . To learn how to write code for file handling (e.g. opening, writing to, reading from and closing files) in Python click here . Designing a file requires more than just the field name (e.g. Name) and data values (e.g. Rebecca). The data type (e.g. string) and any validation checks (e.g. format check) should also be considered. Below is an example file design for a bakery. Designing Files 4.8 Compression Theory Topics 6.1 - Operating Systems

  • Key Stage 3 Python | Calculations | CSNewbs

    The fourth part of a quick guide to the basics of Python aimed at Key Stage 3 students. Learn about calculations and simple mathematical operators. Python - #4 - Calculations 1. Creating Calculations To add in Python use + To subtract in Python use - To multiply in Python use * To divide in Python use / Task 1 - Create a new Python program and save the file as 4-Calculations.py Print 4 different calculations - use each operator once.(add/subtract/multiply/divide) Python is very clever, so don't be afraid to make your own calculations using larger numbers and more than one operator . 2. Using Inputs and Calculations You can ask the user to enter numbers by writing input lines. Python can then perform calculations using the numbers that the user has entered. Don't forget to add int ( and double close brackets when using numbers ! Task 2 - Copy the new code from the picture. Change the text and num1 so you are dividing by 5 not 3. Don't delete your earlier code , just add this underneath. I have cropped the images to make the new code clearer. 3. Using Calculations in a Sentence When we have printed the calculations so far, they have not been very informative! You can print calculations together with sentences so that they mean more. Use a comma ( , ) between calculations and sentences . Task 3 - Use the pictures to help you add commas and sentences to your program to be more informative. Challenge Programs Use everything that you have learned on this page to help you create these programs... Challenge Task 1 - Multiplication Create a new Python program. Save it as ' 4 -Multiplication.py ' Add a comment at the top with your name and the date. Write an input line ( don't forget int ! ) that asks the user to enter number 1. Write an input line ( don't forget int ! ) that asks the user to enter number 2. Multiply number 1 and number 2 together and print the answer. BONUS : Try to show number 1 and number 2 in the print statement (see practice task 3 to help you). Remember: Break up variables in a print line by using commas. When you run it, it could look something like this: Challenge Task 2 - Retirement Create a new Python program. Save is as ' 4-Retirement.py ' Add a comment at the top with your name and the date. Write an input line ( don't forget int ! ) that asks the user to enter their age. Print the year that they will turn 65. (This is slightly tricky. Hint : You need to know their age, and you need to know the current year. You need to subtract something, and you need to add something. Try using scrap paper to help you figure it out.) BONUS : Use only one print line. BONUS : Try to use only two lines in total . Remember: Break up variables in a print line by using commas. When you run it, it could look something like this: <<< #3 Inputs #5 Selection >>>

  • 3.7 - The Internet - Eduqas GCSE (2020 spec) | CSNewbs

    Learn about internet topics including web browsers, URL structure and DNS servers. Based on the 2020 Eduqas (WJEC) GCSE specification. 3.7: The Internet Exam Board: Eduqas / WJEC Specification: 2020 + What is the internet? The internet is a global network of interconnected networks . The world wide web (WWW ) is not the same as the internet. It is a way of accessing information , using protocols such as HTTPS to view web pages . What is a web browser? A web browser is software that uses the HTTP or HTTPS protocol to access and display web pages . Popular web browsers include Google Chrome , Mozilla Firefox and Microsoft Edge . What is a URL? URL stands for Uniform Resource Locator . Web pages are accessed by typing a URL (a web address) into the address bar of a web browser . The URL is the complete address that matches an IP address where the website is stored. We use URLs because they are easier to remember than IP addresses, for example, 'twitter.com' is simpler than '199.59.149.165'. What is the structure of a URL? A URL is structured into different segments: What is a DNS Server? A DNS ( Domain Name System ) server stores a list of domain names and a list of corresponding IP addresses where the website is stored. The first thing to understand is that every web page has a domain name that is easy for humans to remember and type in (such as www.csnewbs.com ) as well as a related IP address (such as 65.14.202.32) which is a unique address for the device that the web page is stored on. The steps taken to display a web page: 1. A domain name is typed into the address bar of a browser . 2. The browser checks a local (cached) host file to check if it already holds the IP address, but if it doesn't... 3. A query is sent to the local DNS server for the corresponding IP address of the domain name . www.facebook.com 4. The local DNS server will check if it holds an IP address corresponding to that domain name. If it does it passes the IP address to your browser . 66.220.144.0 5. The browser then connects to the IP address of the server and accesses the web site . If the local DNS server does not hold the IP address then the query is passed to another DNS server at a higher level until the IP address is resolved. If the IP address is found, the address is passed on to DNS servers lower in the hierarchy until it is passed to your local DNS server and then to your browser. Q uesto's Q uestions 3.7 - The Internet: 1a. Describe the difference between the internet and the world wide web ( WWW ). [ 2 ] 1b. What is the purpose of a web browser ? [ 2 ] 1c. Why do humans use URLs instead of IP addresses? [ 1 ] 1d. Write out the following URL and label each section: https://www.skynews.co.uk/worldnews/ukstockmarket [ 6 ] 2a. What is a DNS server ? [ 2 ] 2b. Describe, using a mix of text and icons / images , how a DNS server is used to display a web page . [5 ] 2c. Describe how a DNS server searches for an IP address if it is not found on the local DNS server . [ 2 ] 3.6 - 7-Layer OSI Model Theory Topics 3.8 - Cyber Threats

  • OCR CTech IT | Unit 1 | 5.3 - Threats | CSNewbs

    Learn about 7 key threats to avoid on the internet, including virus, worm, trojan interception, social engineering and eavesdropping. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 5.3 - Threats Exam Board: OCR Specification: 2016 - Unit 1 What are the 7 threats to computer systems? Phishing Misleading individuals or organisations into giving up sensitive information (such as passwords or bank details), often through the use of emails . Hacking Exploiting weaknesses in a system or network to create, view, modify or delete files without permission. Similar to data theft - illegally removing copies of personal or company data from computer systems. :( Trojan Appears to be a useful or well-known program but when downloaded and installed it secretly gives the attacker a ' backdoor ' to your system. Through this backdoor the attacker can access data without the user knowing. Football 2020 FREE Interception Data packets on a network are intercepted by a third party (e.g. hacker) and copied, edited or transferred to a different location than the intended destination. Eavesdropping Intercepting , in real-time , private communication traffic such as instant messages or video calls . Social Engineering Tricking individuals into giving sensitive information , e.g. by claiming to be from the IT department and asking for their password and username to check for viruses. Virus A virus can replicate itself and spread from system to system by attaching itself to infected files that are then downloaded and opened. Once activated, a virus can modify data or corrupt a system so that it stops working. Q uesto's Q uestions 5.3 - Threats: 1. An IT company is making an information booklet about the different types of online threats . Describe each type of threat: a. Phishing b. Hacking / Data Theft c. Trojan d. Interception e. Eavesdropping f. Social Engineering g. Virus [2 each ] 5.2 - Operational Issues Topic List 5.4 - Physical Security

  • Key Stage 3 | CSNewbs

    The homepage for all content aimed at Key Stage 3 students studying Computer Science / IT including computer hardware, Python, App Inventor 2 and Cyber Security. Key Stage 3 Topics These topics are aimed at Year 7 - 9 students (11 - 14 year olds) studying computing. Hardware The Motherboard The CPU Memory Expansion Cards Python Basics 1. The Basics 2. Variables 3. Inputs 4. Calculations 5. Selection 6. Turtle 7. Link to GCSE Python Cyber Security Malware Phishing & Staying Safe Other Topics Desktop Publishing

  • 4.1 - Gathering Client Requirements | F160 | Cambridge Advanced National in Computing AAQ

    Learn about the methods of gathering client requirements such as document analysis, focus groups, interviews, meetings, observation, problem reports, questionnaires, shadowing and suggestion analysis. Based on Unit F160 (Fundamentals of Application Development) for the OCR Cambridge Advanced National in Computing (H029 / H129) (AAQ - Alternative Academic Qualification). Qualification: Cambridge Advanced National in Computing (AAQ) Unit: F160: Fundamentals of Application Development Certificate: Computing: Application Development (H029 / H129) 4.1 - Methods of Gathering Client Requirements Watch on YouTube : Gathering Client Requirements For each of the nine methods of gathering client requirements , you need to know : Its purpose and when it would be used . The type of information and data that can be collected using it. The advantages and disadvantages of using it. How client requirements determine if it would be used. Gathering Client Requirements Methods of Gathering Client Requirements T here are nine methods of gathering client requirements you need to know : Reviewing existing documents (e.g. manuals and reports ) to understand the current system and requirements . Gathering a small group of users or stakeholders to discuss needs , expectations and ideas . Asking stakeholders structured or open-ended questions to collect detailed requirements . Bringing together clients and developers to share information , clarify requirements , and make decisions . Watching users perform tasks to see how they interact with the current system . Using logged issues or complaints from an existing system to identify new requirements . Distributing structured forms with questions to gather requirements from a wide group quickly . Following a user during their normal tasks to gain deeper insights into workflows and needs . Reviewing client or user-submitted ideas and feedback to shape requirements . Q uesto's Q uestions 4.1 - Methods of Gathering Client Requirements: 1. Explain what document analysis , problem reports , shadowing and suggestion analysis are. [8 ] 2. Give two advantages and two disadvantages of two other methods not mentioned in Q1 . [8 ] 3. The video game company that makes the ' Age of the Dragon ' series faced a letdown in their previous release , ' The Guard of the Veil '. They need to ensure that their next game sells a lot of copies and meets user requirements . Justify which methods they should use to gather client requirements and why . [ 5 ] The original 2010 movie version of ' Scott Pilgrim vs. the World ' had Scott end up with Knives Chau instead of Ramona Flowers , but focus groups disliked that he spent the whole movie fighting for her for nothing , so it was changed . D id Y ou K now? 3.2 - Project Planning Tools Topic List 4.2 - Client Requirement Specifications

  • Python | 7b - Functions | CSNewbs

    Learn how to create and use functions in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 7b - Functions What is a Function? A function is a subroutine that takes one or more values from the main program and returns a value back. For example, transferring over a sphere’s radius from the main program for the function to calculate a surface area and then return that value to the main program. The two key differences between procedures and functions are: A function uses parameters to transfer data from the main program into the function. A function returns a value to the main program. Writing Functions A function is written the same way as a procedure but it uses parameters . In the example below the parameters are num1 and num2 which are sent from the main program to be used in the function . The return command is used to send a value back to the main program . Below is another example of a function that takes the radius of a sphere and works out the area in a separate function . The area is returned to the main program and printed. Subroutines can be reused and called with different parameters . The program below repeatedly takes an integer input and adds it to a total in a function that is then returned and printed. Practice Task Create a program similar to the sphere example above, this time to work out the volume of a cylinder. In the main program ask the user to enter the cylinder's radius and then its height. The actual calculation should be done in a function and returned to the main program. The calculation for a cylinder's volume is: pi x (radius x radius) x height Extension: Use the round command from section 9b to round the number to 2 decimal places. Example solution: Using Subroutines as a Menu Subroutines are often used to split programs up and give users a selection of options . Subroutines are used for this purpose because they are separate , making it easier to code and manage a program . The example below for a simplified online banking system uses separate subroutines accessible within a while true loop . Depending on the option chosen by the user, the appropriate subroutine will be called . Instead of a further practice task here, Task 4 of the Section 7 Practice tasks page challenges you to make a similar program using multiple subroutines. ⬅ 7a - Proced ures Section 7 Practice Tasks ➡

  • Python | 3b - Simple Calculations | CSNewbs

    Learn how to make simple calculations in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 3b - Simple Calculations Simple Calculations in Python You can perform calculations on numbers in Python using the four main operators : print ( 89 + 47) print ( 89 - 47) print ( 89 * 47) print ( 89 / 47) = 136 42 4183 1.8936170212765957 For addition , use the plus sign + To subtract numbers, use the dash symbol – (but not an underscore _ ) For multiplication , use an asterisk * which can be made by pressing Shift and 8 on a typical keyboard. To divide numbers, use a forward slash / (but not a backslash \ ) Use a string and the calculation to make the output user friendly . print ( "53 x 7 =" , 53 * 7) = 53 x 7 = 371 Simple Calculations Task 1 ( + - * /) Print four different simple calculations, using a different operator ( + - * / ) for each. Make the output user friendly by also showing the calculation (not just the answer). Copy the divide symbol here using Ctrl and C : ÷ Example solution: 18 + 35 = 53 18 - 35 = -17 18 x 35 = 630 18 ÷ 35 = 0.5142857142857142 Using Variables in Calculations You can also perform calculations on variables . The example below has the values of the variables pre-written. You need to store the result in a variable . The total variable has been used to store the result of the multiplication. num1 = 12 num2 = 20 total = num1 * num2 print ( "The total is" , total) = The total is 240 The example below allows the user to input values . num1 = int ( input ( "Enter number one: " )) num2 = int ( input ( "Enter number two: " )) total = num1 + num2 print ( "The to ta l is" , total) Enter number one: 21 Enter number two: 82 The total is 103 = Don't leave the user in the dark, better user interfaces are clear and explain what outputted values mean: num1 = int ( input ( "Enter number one: " )) num2 = int ( input ( "Enter number two: " )) answer = nu m1 - num2 print (num1 , "-" , n um2 , "=" , answer) Enter number one: 83 Enter number two: 29 83 - 29 = 54 = Simple Calculations Task 2 ( Divide by 3) Use an input line with int to ask the user to enter a number . Divide the number by 3 and output the result . Example solution: Enter a number: 11 11 divided by 3 is 3.6666666666666665 Simple Calculations Task 3 ( Add 3 Numbers ) Make three input lines using int to ask the user to enter three numbers . Add the numbers together and output the total . Example solution: Enter the first number: 45 Enter the second number: 32 Enter the third number: 19 The total is 96 ⬅ 3a - Data Types Section 3 Practice Tasks ➡

  • 3.6 - Information Systems | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about the differences between open and closed information systems. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 3.6 - Information Systems Exam Board: OCR Specification: 2016 - Unit 2 Information systems, such as structured databases , can be defined primarily as either 'open ' or 'closed '. Open Information Systems Closed Information Systems This type of system can interact with other information systems (e.g. another database) to exchange data , even from different platforms (types of computers). Because it is open it is more at risk of data loss and/or hacking. This type of system is private and cannot exchange data with other systems. Access is limited but it is much more secure than an open system. Q uesto's Q uestions 3.6 - Information Systems: 1. Compare and contrast open and closed information systems . [4 ] 3.5 - Data Analysis Tools Topic List 4.1 - UK Legislation

  • 6.6 - Logical Protection | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about the methods of digital protection including antimalware, firewalls and obfuscation. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 6.6 - Logical Protection Exam Board: OCR Specification: 2016 - Unit 2 Logical protection refers to using digital methods of security to protect computer systems and data. Usernames & Passwords ****** Anti-Malware Usernames must be matched with a secure password to minimise the chances of unauthorised users accessing a system. Passwords should contain a mix of uppercase and lowercase letters , punctuation and numbers . Passwords should be of a substantial length (at least 8 characters) and should be regularly changed . Anti-virus software scans a system and removes viruses . If left to infect a system a virus could delete data or permit access to unauthorised users . Anti-spyware software removes spyware on an infected system so hackers cannot view personal data or monitor users. Organisations should install and regularly update anti-virus and anti-spyware programs. Firewall Encryption Firewalls prevent unauthorised access to or from a network . Firewalls filter data packets and block anything that is identified as harmful to the computer system or network. Firewalls can also be used to block access to specific websites and programs. A firewall can be in the form of a physical device which is connected to the network, or software installed on a computer system. Encryption is the conversion of data ( plaintext ) into an unreadable format ( ciphertext ) so it cannot be understood if intercepted . Encrypted data can only be understood by an authorised system with a decryption key . There are two types of encryption . Encryption at rest is when data is encrypted while it is being stored on a system or storage drive. Encryption in transit is to secure the data as it being transferred between systems on a network. Tiered Levels of Access Obfuscation ?????? The purpose of tiered levels of access is to grant different types of permission to certain users. Managing levels of file access ensures that only authorised people can access and change certain files . There are different levels of file access : No access Read-only - Allows a user to view but not edit. Read/write - Allows a user to view and edit. Obfuscation is when data is deliberately changed to be unreadable to humans but still understandable by computers . Program code might be obfuscated to stop rival programmers from viewing and stealing it if they were able to access it. Specialist software can be used to obfuscate data and convert it back into a human-readable format. Q uesto's Q uestions 6.6 - Logical Protection: 1a. Describe why usernames and strong passwords are necessary. [2 ] 1b. State 3 rules for choosing a strong password . [3 ] 2. Describe the purpose of anti-virus and anti-spyware software. [4 ] 3. Describe the roles of a firewall . [4 ] 4. Explain what encryption is. What are the two types? [4 ] 5. Why would an organisation use tiered levels of access ? What are the 3 levels of file access ? [5 ] 6. What is obfuscation ? State a scenario in which it would be used. [3 ] 6.5 - Physical Protection Topic List

  • HTML Guide 4 - Hyperlinks | CSNewbs

    Learn how to link to other websites by using the anchor tag. 4. Hyperlinks HTML Guide Watch on YouTube: A hyperlink is a link to another web page . In this section, you will link your page to a real website, like Wikipedia. Hyperlinks require the anchor tags and Copy a URL Firstly you need to copy the full web address of the web page that you would like to link your page to. Choose an appropriate web page that relates to your chosen topic. Create the Anchor Tag 4. Close the start of the tag . 1. Open the start of the tag . 2. Type href (stands for hypertext reference ). 3. Paste the URL inside speech marks . 5. Type the text you want the user to click on . 6. Time to close the tag . When you save your webpage and run it in a browser you will be able to click highlighted text to open the website you have chosen. Add at least three different hyperlinks to your webpage. Try to add the 2nd & 3rd links without looking at this page - practise makes perfect. Add a Hyperlink within a Sentence You can also create an anchor tag within a sentence. Hyperlinks are important to link webpages together. Next is time for adding pictures! Either change one of your previous hyperlinks to be in the middle of a sentence or create a new one. 3. Text Tags HTML Guide 5. Images

© CSNewbs 2026

The written, video and visual content of CSNewbs is protected by copyright. © 2026
bottom of page