top of page

Search CSNewbs

Search this site

304 results found with an empty search

  • App Inventor 2 | Pop-up Blob | CSNewbs

    Learn how to use App Inventor 2 to create simple programs. Try to complete the final task (7) on this page. Perfect for Key Stage 3 students to experiment with block coding, objects and properties. App Inventor Task 7 - Pop-up Blob The previous apps have been preparing you to make a longer and more complicated app. Now we will put together all of the skills you have learned to create a fun game. Check the video: Open App Inventor 2 (use the button below) and create a new project. You will need to log in with a Google account. App Inventor 2 Ready for a challenge? This is what the program looks like in Designer layout. To the left are the components with all their Properties correct. To the right are the Components names. Put the three labels and button inside a HorizontalArrangement from the Layout section of Palette . The Text for ScoreLabel is 'Score: 0'. The Text for TimeRemainingLabel is 'Time Remaining:'. The Text for SecondsLabel is '20'. Place an ImageSprite inside a Canvas (both from the Drawing and Animation section of Palette ). Download the blob image from the Basics page here and upload it as the Picture for the ImageSprite . Change to Blocks layout and drag a initialize global to block from Variables . Type 'Score' in the empty space to create a variable that we will use to track how many times the blob has been touched. Attach a 0 block from Math to start the score at 0. This big block of code uses some of the concepts which you have used before. Whenever the Blob is touched the variable Score is increased by 1. The X and Y coordinates of the Blob are changed by random numbers so it will appear in a random location on the screen. The bottom blocks change the ScoreLabel to show the current score. Every second that the timer ticks we want to check if the score is more than 1 (to check it hasn't reached 0). If it is more than 1 second then the time will count down by 1. In the else part you need to add the following: Set Blob Enabled to false . Set Blob Visible both to false . Set TimeRemainingLabel Visible to false . Set SecondsLabel Visible to false . When the Reset Button is clicked the score variable is changed to 0 and the Seconds label is rewritten to 0. Make sure you use the " " block from Text and not a block from Math. Inside the when ResetButton Click block you need to reverse the code you have added for the else block when the timer ticks: Set Blob Enabled to true . Set Blob Visible both to true . Set TimeRemainingLabel Visible to true . Set SecondsLabel Visible to true . Extra Step: Challenges 1. Large score display . If you watch the video at the top of the page again, you will see that when the time runs out (is less than 1) some of the labels turn invisible and the TextColour and FontSize of the ScoreLabel changes. Try to do the same in your app. Remember to reverse what you have done in the code for the reset button; otherwise, the labels will still be invisible! 2. Customise your game . Change the background of the Canvas to an image, change the blob to a different image and add a sound when the character is 'popped'. 3. *HARDER Challenge* Add a High Score Label . Follow these hints carefully and use the colours to help you. You need to initialize a new Variable called HighScore and set it to 0 . You also need to add a new HighScoreLabel and put it in your Horizontal Arrangement in Designer layout. Add an if then block in the else part of the When Timer Timer block you already have. If Score > HighScore then HighScore = Score . This will change the value of HighScore to the current Score if it is higher than the current high score. Remember to make the HighScoreLabel display the new HighScore . KS3 Home

  • Key Stage 3 Python | Turtle | CSNewbs

    The final part of a quick guide to the basics of Python aimed at Key Stage 3 students. Learn about importing turtle to command a moving object. Python - #6 - Turtle Import the Turtle The turtle library stores all of the code to create and move an object called a turtle . The turtle library must be imported into your Python program before you can use it to draw lines, shapes and colours . Create a new Python program and save the file as PythonTurtle . Write import turtle as the first line of code. Basic Shapes The turtle can be controlled by writing how many pixels it should travel forward and the angle it should point left or right . Moving Forwards turtle.forward(100) will move the turtle forward by 100 pixels. turtle.forward(200) will move the turtle forward by 200 pixels. When using the left command or the right command, the turtle won't actually move , but it will rotate by the number of degrees that you state. For example, typing turtle.left(90) will point the turtle upwards . Rotating Left & Right Copy the code to the right to make the turtle draw a square. Then try to make: A Rectangle A Triangle A Pentagon A Hexagon Square Rectangle Triangle Pentagon Hexagon Hint: To work out the angles, divide 360 by the number of sides. Using Loops You can use a for loop to repeat code . This is especially helpfully with intricate shapes with many sides. The code below will print a square but in only 3 lines instead of the 8 lines from task 2. This is the number of times the code underneath will be repeated . Change it to a higher number to repeat it more often . Each line after the 'for num in range' line must be indented . Press the tab key once on your keyboard to indent your code. Task 3 - Copy the code above to make the turtle draw a square using a loop. Then try to make: A Heptagon An Octagon A Circle A Pentagram (5-sided Star) Square Heptagon Octagon Circle Pentagram Hint: To work out the angles, divide 360 by the number of sides. Advanced Features Choose a background colour turtle .bgcolor("red") Choose the line size and colour turtle.pensize(6) turtle.color("green") Fill a shape turtle.color("yellow") turtle.begin_fill() (put your turtle's directions in here) turtle.end_fill() Lift the pen turtle.penup() turtle.pendown() Speed up/Slow down the turtle turtle.speed(speed=10) Change the turtle's appearance turtle.shape("turtle") Other options include "circle" and "arrow". Task 4 - Use the code above to make: A blue square on a red background. A yellow triangle on a pink background. Two different coloured circles - not touching each other. Three different shapes of three different colours - not touching each other. Complex Shapes Use everything that you have learned on this page to help you create more complex shapes. You could try: A Flower A Word (like your name - you will need to use the penup() and pendown() commands. A Christmas tree A Landscape (green ground, blue sky, yellow sun) <<< Selection

  • 3.1 - Data vs Information | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about the technical difference between data and information, with examples. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 3.1 - Data vs. Information Exam Board: OCR Specification: 2016 - Unit 2 The terms 'data ' and 'information ' are often used interchangeably but they do not mean the same thing . The term 'data ' refers to unprocessed facts or statistics that have no context . For example, 53% is data - it is a statistic that has no context. The term 'information ' refers to data that has been processed , organised and structured into context . For example, 53% of pumpkin stock was sold in 2019 is information - it is data that has been given context (meaning). Data Processing Information Q uesto's Q uestions 3.1 - Data vs. Information: 1. Describe , using examples , the difference between data and information . [4 ] 2.4 - Information Management 3.2 & 3.3 - Information Categories Topic List

  • Python | 6a - For Loops | CSNewbs

    Learn how to create and use for loops in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 6a - For Loops Types of Loop The third construct of programming (after Sequence and Selection) is Iteration . If you iterate something, then you repeat it. There are two key loops to use in Python: for loops and while loops . A for loop is count controlled – e.g. “For 10 seconds I will jump up and down”. The loop will continue until the count (e.g. 10 seconds) has finished . A while loop is condition controlled – e.g. “While I am not out of breath, I will jump up and down.” The loop will continue as long as the condition remains true . Simple For Loops (1 Range Value) for i in range (5): print ( "This is a loop!" ) This is a loop! This is a loop! This is a loop! This is a loop! This is a loop! for i in range (8): print ( "Jaffa Cakes aren't biscuits" ) Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits The i is a count variable , it is used to measure each iteration (turn) of the loop. In the range brackets write the number of times to loop the indented code. Don’t forget the colon at the end and remember that everything you want to repeat must be indented (press tab key once). For Loops Task 1 (Repeat Your Name ) Example solutions (shortened): Create a simple for loop that prints your name twenty times. For Loops Task 2 (Are We There Yet? ) Christopher Christopher Christopher ... Create a simple for loop that prints the sentence 'Are we there yet?' 150 times. Are we there yet? Are we there yet? Are we there yet? ... Counting Using i (2 Range Values) For loops can be used to count by referring to the iteration inside the loop itself using i : for i in range (5): print ( "Loop number" , i) Loop number 0 Loop number 1 Loop number 2 Loop number 3 Loop number 4 for i in range (1,6): print ( "Loop number" , i) Loop number 1 Loop number 2 Loop number 3 Loop number 4 Loop number 5 There are two important things to know about how Python counts using for loops. Python will automatically start counting at 0 rather than 1. The second value in the range is an exclusive limit - it will stop 1 before this value. For example, if you wanted to count 1 to 10 you would need to write range(1,11) . For Loops Task 3 (100 to 150 ) Create a for loop that prints all numbers from 100 to 150 . You don't need to print any additional text, just the i variable. Example solution (shortened): 100 101 102 ... ... 148 149 150 Using a Step (3 Range Values) A third value can be added to the range brackets of a for loop to define a step . A step is the number to go up (or down ) with each iteration . for i in range (2,11,2): print ( i) 2 4 6 8 10 for i in range (18,0,-3): print ( i) 18 15 12 9 6 3 In most programs defining a step is not essential , Python will assume it is +1 if you don't include it. For Loops Task 4 (Even Numbers 10 to 30 ) Example solution for Task 4 (shortened): Create a for loop that prints all even numbers from 10 to 30 . Use a step . For Loops Task 5 (Countdown ) Use a for loop with a negative step to print a countdown from 10 to 1 . 10 12 14 ... ... 26 28 30 Using Variables with For Loops Variables can be used to make for loops suitable for a range of different purposes. loopnum = int ( input ( "Times to repeat: " )) for i in range (loopnum): print ( "Hello!" ) Times to repeat: 4 Hello! Hello! Hello! Hello! The loop above uses a variable in the range brackets to repeat the loop the specific number of times that the user enters . loopnum = int ( input ( "Times to repeat: " )) word = input ( "Word to repeat: " ) for i in range (loopnum): print (word ) Times to repeat: 3 Word to repeat: velociraptor velociraptor velociraptor velociraptor The loop above uses two variables that are input by the user ; one to define the range and another that is printed . For Loops Task 6 (Many Happy Birthdays ) Example solution for Task 6 (shortened): Ask the user to input their age then print 'Happy Birthday! ' that many times. For Loops Task 7 (House Number and Name ) Ask the user to enter their house number (e.g. 15 if they lived at 15 Cherry Road) and their name . Print their name as many times as their house number . For example, if Hannah lived at 103 Apple Lane then Hannah would be printed 103 times . Enter your age: 5 Happy Birthday! Happy Birthday! Happy Birthday! Happy Birthday! Happy Birthday! ⬅ Section 5 Practice Task s 6 b - While Loops ➡

  • 1.7 & 1.8 - Internet Pros & Cons | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about the advantages and disadvantages to individuals and organisations when using the internet. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 1.7 & 1.8 - Internet Pros & Cons Exam Board: OCR Specification: 2016 - Unit 2 The internet has become easier and cheaper to access since the mid 1990s and today it is almost taken for granted. The rise of the internet, and the services it provides, has lead to advantages and disadvantages for both individuals and organisations . Advantages for Individuals Increased speed of personal communication Allows for instant messaging, emails and video chats across the world. Easy access to information The internet has free resources such as CSNewbs and Wikipedia, plus academic journals for research & study. 24/7 access to services Shopping, browsing and banking can be completed when convenient for the user. Social interaction with others Social media, discussion forums and online games provide entertainment and social interaction. Disadvantages for Individuals Potential for identity theft Uploading personal data and storing sensitive information risks hackers obtaining and utilising it. Cost of connection & services Internet service providers (ISPs) charge a monthly fee and equipment like a router needs installation. Cyberbullying & trolling The abuse of others on social media is possible. Anonymisation makes it harder to catch offenders. Spreading misinformation 'Fake news' or biased information can be easily spread on social media and lead to incorrect assumptions. Source of distraction Staff and students may neglect their work and study for entertainment or social media. Advantages for Organisations Share data quickly globally Files and information can be sent instantly to locations across the world. Cloud storage can store data. Online services always available E-commerce businesses can operate 24/7 globally, permit users to browse and accept payments. Easy internal communication Staff can use emails, video calls or instant messages to communicate. Open up the workplace Staff can work from home, on the commute to/from work and outside of the office. Disadvantages for Organisations Malicious attacks & threats Websites can be hacked / taken offline with DDoS attacks. Data can be stolen or corrupted. Cost of maintaining services Most companies require an IT department to oversee device installation and maintenance. Reputation and controversies Companies that leak data will damage their reputations. Social media posts could backfire. Q uesto's Q uestions 1.7 - Internet Pros & Cons: 1. List 5 points for the following categories (you may need to include researched / your own points for some): a. Advantages of the internet for individuals [5 ] b. Disadvantages of the internet for individuals [5 ] c. Advantages of the internet for organisations [5 ] d. Disadvantages of the internet for organisations [5 ] 1.6 - Information Formats Topic List 2.1 - Information Styles

  • GCSE Key Terms | CSNewbs

    A key term generator to display randomised or sequential terms from the OCR GCSE Computer Science (J277) course. Filter terms by topics and 'favourite' tricky terms to focus on later. Perfect for students learning GCSE Computer Science in UK schools. GCSE Key Terms Generator If you see this message, your school may be using a strict network filter which has blocked it. The tool uses basic JavaScript and should work fine on a home network. Use this tool to check your understanding of the OCR GCSE J277 specification's key terms . OCR GCSE Homepage

  • Python | 5c - Date & Time | CSNewbs

    Learn how to use time commands to display the current date and time in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 5c - Time & Date ctime() The easiest way to output the current time and date is to use the ctime() command. Import the ctime command from the time library before you use and print it: from time import ctime print ( "Current time:" , ctime()) = Current time: Wed Sep 13 16:07:20 2023 This will print the time and date, but it looks rather unprofessional, and the exact format depends on the type of system that you are currently running so it may vary for different users. Date / Time Task 1 ( Dentist Surgery) Print a greeting for a dentist surgery with the current date and time. Example solution: Welcome to Greenvale Dentist Surgery, it is currently: Wed Sep 13 16:16:24 2023 strftime() A better alternative to the ctime() command is to use strftime() which stands for str ing f rom time as you can select specific parts of the date and time to display. This command requires a directive to be written with a percentage symbol as a string in the brackets . For example, the current hour (%H ), minute (%M ) and second (%S ) can be printed between colons to show the time . from time import strftime print ( "The current time is" , strftime( "%H:%M:%S" )) = The current time is 13:18:57 There are many different directives that you can use to display exactly what you are looking for, such as: from time import strftime day = strftime( "%A" ) print ( "The current day is" , day) month = strftime( "%B" ) print ( "The current month is" , month) year = strftime( "%Y" ) print ( "The current year is" , year) = The current day is Thursday The current month is September The current year is 2023 The following directives can be used with strftime(). Don't forget that directives must be typed within speech marks . Date - Weekday: %a – Current day of the week abbreviated (e.g. Sun, Mon) %A – Current day of the week in full (e.g. Sunday, Monday) %w – Current day of the week in chronological order (0 is Sunday and 6 is Saturday) %W – Current week number (e.g. 01, 26, 52) Month: %d – Current day of the month (e.g. 01, 11, 31) %m – Current month as a number (e.g. 01, 06, 12) %b – Current month abbreviated (e.g. Jan, Jun, Dec) %B – Current month in full (e.g. January, December) Year: %y – Current year abbreviated (e.g. 16, 17) %Y – Current year in full (e.g. 2016, 2017) %j – Current day of the year (e.g. 001, 150, 365) Time - Hour: %H – Current hour in 24-hour clock (e.g. 00, 12, 20) %I – Current hour in 12-hour clock (e.g. 01, 08, 12) %p – Whether it is currently AM or PM Minute: %M – Current minute (e.g. 00, 30, 59) Second: %S – Current second (e.g. 00, 30, 59) More Directives - %z – Current time difference from UTC (Co-ordinated Universal Time) (e.g. +0000, -0500, +1100) %Z – Current time zone (e.g. GMT Standard Time, EST, CST) Just looking for a quick date or time display and not bothered about customisation? Try these: %c – Current date and time in full (e.g. Tue Feb 19 13:35:20 2016) %x – Current date (e.g. 19/02/16) %X – Current time (13:36:20) Date / Time Task 2 ( Calendar App ) Create a program that asks the user if they want to see the current date , the current time or 'other '. Use the strfftime directives above to show what the user asks for. It's up to you which directives you use for the 'other' option , such as displaying the current day of the year (%j ) or current week of the year (%W ). Example solutions: Type TIME for the current time, DATE for the current date or OTHER: TIME The current time is 13:46PM Type TIME for the current time, DATE for the current date or OTHER: DATE The date today is Thursday 14 September 2023 Type TIME for the current time, DATE for the current date or OTHER: OTHER Did you know today is day number 257 of 2023? Between Dates You may want to work out the number of days between two dates . This can be done by importing the date command from the timedate library. Below is a simple example: from datetime import date date1 = date(2021,9,15) date2 = date(2022,1,20) difference = date2 - date1 print ( "There are" , difference.days , "days between" , date1 , "and" , date2) Make sure the date is entered in the format of year, month, day . The .days code removes the difference in hours and seconds to just display the number of days difference. There are 127 days between 2021-09-15 and 2022-01-20 Today's Date The program here uses strftime to check the current year, month and day and organise it into the date format . This can then be used together with code similar to the program above to check the number of days between one specific date and the current date. from datetime import date from time import strftime thisyear = int (strftime( "%Y" )) thismonth = int (strftime( "%m" )) thisday = int (strftime( "%d" )) todaysdate = date(thisyear,thismonth,thisday) print ( "The date today is" , todaysdate ) The date today is 2023-09-14 Input a Date The program here shows how to input a date into a format that can then be used by Python to work out the difference between two dates . from datetime import date year = int ( input ( "Enter a year: " ) month = int ( input ( "Enter a month: " ) day = int ( input ( "Enter a day: " ) chosendate = date(year,month,day) print ( "The chosen date is" , chosendate ) Enter a year: 1964 Enter a month: 5 Enter a day: 13 The chosen date is 1964-05-13 Date / Time Task 3 ( Days Alive) Create a program that works out how long the user has been alive for . Use the examples above to automatically make today's date and then allow the user to input their year , month and day of birth. Get Python to work out the difference between today and their date of birth. Example solutions: Enter a year: 1998 Enter a month: 3 Enter a day: 29 You have been alive for 9300 days! Enter a year: 2007 Enter a month: 12 Enter a day: 25 You have been alive for 5742 days! ⬅ 5b - Sleep 5d - Colorama ➡

  • OCR CTech IT | Unit 1 | 5.5 - Digital Security | CSNewbs

    Learn about digital methods of protecting data such as anti-malware, firewall, usernames and passwords, levels of access and encryption. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 5.5 - Digital Security Exam Board: OCR Specification: 2016 - Unit 1 ****** Usernames & Passwords 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 . Digital Security Measures Firewall Firewalls (see 2.3 ) 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. Encryption 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 . Anti-Malware Anti-virus software (see 2.3 ) 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. Permissions Permissions is the creation of different levels of file access so that only authorised people can access and change certain files . There are different levels of file access : No access Read-only Read/write Q uesto's Q uestions 5.5 - Digital Security: 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. [3 ] 5. What are permissions ? What are the 3 levels of access ? [5 ] 5.4 - Physical Security Topic List 5.6 - Data & System Disposal

  • Privacy Policy | CSNewbs

    Computer Science Newbies Privacy Policy Updated 5th April 2025 1. Information Collected I do not collect any personal information from visitors as the website: Does not require users to create accounts. Does not process any transactions or collect payment details. Is intended solely for educational purposes, providing information about Computer Science. 2. Cookies and Analytics The Wix platform may automatically collect non-personal information such as: Your IP address Browser type Device information Pages viewed This is used for general site performance monitoring and visitor statistics. You can manage cookies through your browser settings. The following essential cookies are used on this site: RF-TOKEN (Used for security reasons during your session on the site.) hs (Used for security reasons during your session on the site.) svSession (Used in connection with user login.) SSR-caching (Used to indicate the system from which the site was rendered. Duration of 1 minute.) _wixCIDX (Used for system monitoring/debugging. Duration of 3 months.) _wix_browser_sess (Used for system monitoring/debugging during your session on the site.) consent-policy (Used for cookie banner parameters. Duration of 12 months.) TS* (Used for security and anti-fraud reasons during your session on the site.) Session (Used for system effectiveness measurement. Duration of 30 minutes.) fedops.logger.sessionId (Used for stability/effectiveness measurement. Duration of 12 months.) To learn more about cookies please visit All About Cookies . 3. Use of Information Any information collected automatically by Wix is used solely to: Improve the performance and content of the website. Ensure the website runs smoothly and securely. I do not sell, rent, or share visitor information. 4. Third-Party Services As the website is hosted on Wix.com, their privacy practices also apply. You can view the Wix Privacy Policy here . 5. Changes to This Policy I may update this Privacy Policy from time to time. Any changes will be posted on this page with an updated date. 6. Contact If you have any questions about this Privacy Policy, please contact me at:

  • OCR CTech IT | Unit 1 | 2.7 - Protocols | CSNewbs

    Learn about the different protocols used to transfer data across a network, including TCP/IP, FTP, SMTP and Ethernet. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 2.7 - Protocols Exam Board: OCR Specification: 2016 - Unit 1 What is a protocol? A protocol is a set of rules that allow devices on a network to communicate with each other . Protocols to Transfer Data: TCP / IP / UDP TCP ( Transmission Control Protocol ) breaks data down into small packets to be transferred across a network and reorders them back into the original data at the destination . TCP checks for errors when sending data packets, which makes it slower than UDP for data transfer, but it guarantees that no packets have been lost on the way. IP ( Internet Protocol ) is in charge of routing and addressing data packets to ensure data is transferred across networks to the correct destination . It is also an addressing system - every device on a network is given a unique IP address . TCP and IP are often used together to transfer data across the internet. UDP ( User Data Protocol ) is a faster alternative to TCP for transferring data. It is used where low latency ('low lag') is important, such as online gaming and video chat . However, UDP does not automatically check for errors so packets are more likely to be lost or received out of order . HTTP is a protocol that can be used to transfer web pages on the world wide web so that users can view them in a web browser . All URLs start with either HTTP or HTTPS (e.g. https://www.csnewbs.com ). HTTPS is a more secure version of HTTP that works with another protocol called SSL (Secure Sockets Layer ) to transfer encrypted data . You should see a padlock symbol in the URL bar if your connection to that website is secure. HTTP/HTTPS (Hyper Text Transfer Protocol) FTP (File Transfer Protocol) FTP ( File Transfer Protocol ) is used to transfer files across a network. It is used most often to upload or download files to/from a file server . ICMP ( Internet Control Message Protocol ) collects network status information (such as router errors) and is used for troubleshooting . SNMP ( Simple Network Management Protocol ) is a protocol that records network statistics , such as router usage . Network Management Protocols Email Protocols SMTP ( Simple Mail Transfer Protocol ) is a protocol used to send emails to a mail server and between mail servers . POP ( Post Office Protocol ) is for downloading and storing emails from a mail server. TCP/IP Protocol Stack The TCP/IP protocol stack is a model split into 4 layers . The model is used to visualise the different parts of a network as each of the four layers has a specific role . Splitting a network design into layers is beneficial to programmers as it simplifies design , making it easier to modify and use . Each layer has a certain purpose and is associated with different protocols . 4 Allows humans and software applications to use the network e.g. browsers (HTTP /HTTPS ), email (SMTP / POP ), file transfer (FTP ) and network management (SNMP ) applications. 3 TCP breaks the data down into data packets . This layer makes sure the data is sent and received in the correct order and reordered at the destination without errors. UDP can also be used for faster , but less reliable , data transfer . 2 The network layer is also known as the ' Internet Layer '. IP is responsible for addressing and routing data packets . The optimal route for the data to take is calculated in this layer. ICMP may be used here for network monitoring . 1 This layer handles transmission errors and passes data to the physical hardware such as routers . It also sets out the final format of data packets . Q uesto's Q uestions 2.7 - Protocols: 1. Describe each of the following protocols . Also, state the protocol's full name and draw an icon or diagram for each: a. TCP b. IP c. UDP d. HTTP & HTTPS e. FTP f. ICMP g. SNMP h. SMTP i. POP [1 each ] 2. State which protocol would be used in the following scenarios: a. Transferring a music file to a friend over the internet. b. Sending an email to a friend in Japan. c. Checking for errors on a network. d. Having a video call with a colleague in London. e. Receiving an email from the bank. f. Watching a video on YouTube. g. Checking the statistics of usage on a network [1 each ] 3. Summarise each layer of the TCP/IP stack and identify the protocols used in each layer . [ 8 ] 2.6 - Software Troubleshooting Topic List 3.1 - Server Types

  • 1.1 - Computational Thinking | OCR A-Level | CSNewbs

    Learn about the different parts of computational thinking including thinking abstractly, ahead, procedurally, logically and concurrently. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level Specification: Computer Science H446 1.1 - Computational Thinking Watch on YouTube : Thinking Abstractly Thinking Ahead Thinking Procedurally Thinking Logically Thinking Concurrently Computational thinking is the process of approaching and solving problems in a logical , systematic way (like a computer would ) using techniques such as abstraction , decomposition , pattern recognition and algorithmic thinking . There are five categories of computational thinking you need to know. Thinking Abstractly Abstraction is the process of removing unnecessary detail so that a problem can be represented more simply . It helps programmers focus on the essential features of a task, reducing complexity and making solutions easier to design , understand and maintain . When programming , abstraction can be applied by simplifying real-world systems into models that contain only the information needed for solving the problem . Because abstractions leave out certain details , they always differ from reality , and it is important to understand which elements have been included , which have been excluded and why . YouTube video uploading soon Thinking Ahead Programs often make use of inputs and outputs to receive data from the user or another system and then return results or feedback. Many programs rely on preconditions - rules or requirements that must be met before a function or procedure runs correctly - to prevent errors and ensure reliable behaviour . Caching is a technique where previously calculated or frequently accessed data is stored temporarily so it can be retrieved more quickly . This improves performance but can use extra memory and risks becoming outdated if the cached data no longer matches the current state . Reusable program components , such as functions , procedures and modules , are important because they reduce duplication , make programs easier to maintain , and allow well-tested code to be used across multiple solutions . YouTube video uploading soon Thinking Procedurally Pseudocode , program code and flowcharts are ways of representing a sequence of steps in an algorithm , showing clearly the order in which instructions should be carried out . Sub-procedures (such as functions and procedures ) are used in programs to break complex tasks into smaller , reusable parts , making the code easier to understand , test , maintain and debug . A structure diagram is a visual representation that shows how a program is broken down into its main components and sub-components , helping programmers plan the overall design and understand how different parts of the program fit together . YouTube video uploading soon Thinking Logically Decisions are needed in computer programs so that the software can choose different actions based on the data it receives or the situation it is in , rather than always following the same sequence of instructions. These decisions are controlled by logical conditions - statements that evaluate to true or false - which determine which path the program will take; for example, if score > 100 might trigger a bonus feature only when the condition is true . Because decisions allow the program to branch , they directly affect the flow of execution , enabling different outcomes , repeated actions or alternative processes depending on the conditions met . YouTube video uploading soon Thinking Concurrently Concurrency means designing a program so that multiple tasks can be processed at the same time , rather than strictly one after another. Programmers need to identify which parts of a program can safely run concurrently - for example, independent calculations or background tasks - and which parts must wait for others to finish because they rely on shared data or sequential results . Concurrent processing can bring benefits such as faster performance , better use of multicore processors and improved responsiveness , but it also introduces drawbacks, including increased complexity and the need for careful coordination to avoid errors when tasks depend on one another . YouTube video uploading soon This page is under active development. Check here for the latest progress update. Q uesto's K ey T erms Computational Thinking: abstraction, thinking abstractly, thinking ahead, precondition, caching, reusable components, thinking procedurally, thinking logically, concurrency, thinking concurrently D id Y ou K now? Building a Lego set is a great example of both abstraction and decompostition . For example, the Eiffel Tower Lego set is an abstracted version of it is real-life counterpart condensed into 10,001 pieces . There are over 75 numbered bags inside the box to follow instructions step-by-step to construct the 4'11" model . A-Level Topics 2.1 - Programming Techniques

  • 4.1 - UK Legislation | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about crucial laws in place to protect data and privacy, including the Data Protection Act (2018), Computer Misuse Act (1990), RIPA (2000) and the Freedom of Information Act (2000). Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 4.1 - UK Legislation Specification: 2016 - Unit 2 Exam Board: OCR There are many types of legislation - laws that have been written into use - that concern data storage, protection and the use of information. In an exam, the year the law was introduced must be stated . In 2018 the European Union introduced GDPR (General Data Protection Regulation ) to protect the privacy of data for people in the EU. The UK matched this by updating the Data Protection Act introduced in 1998 to become the Data Protection Act (2018) . This act protects the data of individuals that is stored on computers and processed by organisations. How the Data Protection Act works: Each person who has their data stored is known as a data subject . An employee within an organisation must be appointed as a data controller and it is they who are responsible for registering with the Information Commissioner . The Information Commissioner is the person in the UK who is responsible for managing several laws , most significantly the Data Protection Act. When registering with the Information Commissioner, the organisation's data controller must be clear on exactly: What information they are collecting, Why it is being collected, What the data will be used for . The six principles of the Data Protection Act (2018) state: 1. Data must be collected lawfully and processed fairly. 2. Collected data must only be used for the reasons specified. 3. Data must be relevant and not excessive. 4. Data must be accurate and up-to-date. 5. Data must not be stored for longer than necessary, 6. Data must be stored and processed securely. Actions organisations must take to stick to the Data Protection Act (2018): The company must appoint and register a member of staff to act as the organisation's data controller . The data controller is responsible for communicating with the Information Commissioner and ensuring the principles of the DPA are not broken . There must be strong security measures in practice to protect data from being accessed or transferred without authorisation . This could be in the form of physical or digital protection methods enforced by the company. Staff should be trained so that they are clearly aware of their responsibilities and each principle is adhered to. For example, they should know that data can only be used for the reasons specified when it is collected and should not be passed to others without the permission of the data subject. Data subjects should be given the opportunity to alter their data and make changes if it is incorrect . Data should be deleted when it is no longer needed , so organisations should periodically assess both the accuracy and relevance of storing each data subject's information. Data subjects have the right to make a Subject Access Request (SAR ) and receive a copy of the data which is stored about them. Companies must abide by this request by verifying the user's identify and presenting the data to them securely . Rights of data subjects: Under the Data Protection Act, individuals have a right of access to any information that is stored about them by public bodies . If an individual wishes to access their data they must submit a Subject Access Request (SAR ) which results in the following steps: The organisation's data controller must be written to and told exactly what information is required to access. An administrative fee should be paid to the organisation (but only if the request requires excessive efforts to fulfil ). The organisation must provide the requested information within 40 days . The individual must verify their identity using appropriate ID because only the data subject can request their data . Computer Misuse Act (1990) This act was introduced as computers became cheaper and more common at home and work . The act attempts to stop and punish those who use computers inappropriately . Breaking any of the three principles could result in fines and a jail sentence but only if it can be proved it was done on purpose and not by accident. The Computer Misuse Act (1990 ) includes three main principles : 1. No unauthorised access to data. Example: Hacking a computer system. 2. No unauthorised access to data that could be used for further illegal activities. Example: Accessing personal data to use as blackmail or identity theft. 3. No unauthorised modification of data. Example: Spreading a virus to change data. Data Protection Act (2018) / GDPR Freedom of Information Act (2000) This act allows people to request public authorities to release information . Public authorities include local councils , government departments , universities and hospitals . A freedom of information request must be formally submitted in a letter or email and a reply from the organisation is required within twenty days of receiving the request. A simple freedom of information request might be the average response times of the local ambulance service in the past year. Certain requests will not be accepted , such as if processing the request would be too expensive or if it involves sensitive information protected by the Data Protection Act (2018 ). Regulation of Investigatory Powers Act (2000) This act (often shortened to RIPA ) was introduced in response to the increase in both criminal and terrorist activities on the internet, it is used to monitor and access online communication of suspected criminals . If criminal activity is suspected by an individual then this act grants the following powers : Internet Service Providers (ISPs) must provide access to the suspect's online communication , such as emails or social media. Locked or encrypted data may be accessed such as online messages. ISPs could install surveillance equipment or software to track the suspect's online activity . Surveillance may take place to physically track the suspect , e.g. in private vans or by undercover officers in public spaces. Access must be granted to personal information . This act became controversial as its use widened and local councils were using it for minor offences - a Scottish council used the act to monitor dog barking and a council in Cumbria gathered video evidence about who was feeding pigeons . The act has since been changed to only allow the surveillance of crime suspects . Copyright, Designs & Patents Act (1988) This act makes it a criminal offence to copy work that is not your own without the permission of the creator or the copyright holder. This can refer to text, images, music, videos or software. Owning the copyright of an image might not prevent others from copying and using it but this act means that the owner can bring legal proceedings in court to those who have stolen their work . Creators of copyrighted work can take ownership of their work and control how it is used . Others must ask for permission to use the work otherwise the copyright holder can ask for it to be removed or demand a fee for its use . This act specifically prohibits the following actions: Making copies of copyrighted material to sell to others . Importing and downloading illegally copied material (except for personal use). Distributing enough copyrighted material to have a noticeable effect on the copyright holder . Possessing equipment used to copy copyrighted material , as part of a business. Information Commissioner's Office (ICO) Codes of Practice Protection of Freedoms Act (2012) There are seven sections to this act, revolving around the protection of personal data . It was introduced because there was little legislation about biometric data , and to update older laws . IT-related sections are summarised below: Part 1 - States how biometric data (e.g. fingerprints and DNA) is stored, handled and collected. For example, parents must give consent before their child gives biometric data to a school. Also, biometric data for suspects of minor offences is deleted after the case is closed. Part 2 - Creates new regulation for CCTV and ANPR (automatic number plate recognition) use. Part 5 - The Disclosure & Barring Service (DBS) was created to run background checks on anyone wanting to work with children or vulnerable people. Part 6 - Extends the Freedom of Information Act (2000) allowing for wider requests to be made . The information commissioner is the senior government official in charge of the country's freedom of information requests and the protection of personal data . The Information Commissioner's Office describes itself as "The UK’s independent authority set up to uphold information rights in the public interest, promoting openness by public bodies and data privacy for individuals". The ICO publishes codes of practices about various data protection and privacy topics , usually related to explaining the Data Protection Act . For example, the ICO has a code of practice regarding how organisations should share data and another code of practice about the use of CCTV . The ICO offers help and support to both individuals (such as giving access to students to their exam results) and organisations (such as support with legal electronic marketing). Privacy and Electronic Communications Regulations (2003) This law (which was updated in 2011 ) regulates how organisations can communicate with individuals . Companies must stick to the following rules: It is an offence to directly contact an individual unless they have specifically opted-in to receive communication. This is commonly managed by using tick boxes on online stores where you must opt-in to receiving promotional material. Companies must clearly state who they are when contacting customers, such as displaying the phone number when calling - and not 'hiding' the number. Organisations must explain how cookies are used on their website . Companies must only contact customers through communication channels that the customer has previously permitted . This can be done with tick boxes when signing up. Customers can select or de-select methods such as email , phone calls and text messages . The Information Commissioner's Office (ICO) is responsible for this regulation and can fine companies that commit unsolicited communication up to £500,000. It is the customer who benefits and is protected by this regulation. Equality Act (2010) The government states that "The Equality Act legally protects people from discrimination in the workplace and in wider society." Discrimination because of protected characteristics such as gender , race , religion , age and disability are specifically punishable by legal action. The aim of the act is to end discrimination in the workplace and open up fair opportunities for every employee regardless of behavioural or physical characteristics that are outside of their control . Within a company, the Equality Act protects staff by stating protected characteristics should not be a factor in an employee's promotion or change of role. Information must be presented in a format accessible to all staff . Q uesto's Q uestions 4.1 - UK Legislation: 1. Create a flashcard or PowerPoint slide for each legislation above. Explain the purpose of the legislation , its main principles and whom it affects . [5 each ] 3.6 - Information Systems Topic List 4.2 - Global Legislation

© CSNewbs 2026

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