Search CSNewbs
304 results found with an empty search
- HTML Guide 10 - More Pages | CSNewbs
Learn how to create more HTML pages and link them together using the anchor tag. 10. More Pages HTML Guide Watch on YouTube: Create a New Page Create a new page by either clicking the new page icon in Notepad ++ or selecting File then New . Then you need to save your new page with an appropriate name as a HTML file . Create a new page, save it and add information to it. Your new page needs the same essential tags as your original page: Then you can add the rest of your content . Link to Other Pages The tag is used to link between pages , just like it is used to hyperlink to other websites. Make sure you type your web pages exactly as you have saved them. Make sure all of your web pages are saved in the same folder . Include links between pages on each new page. A link to the second page. Don't forget a link back to your homepage on each new page. Why not add more pages to make your website more detailed? 9. Colours & Fonts HTML Guide
- 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 | Extended Task 7 | CSNewbs
Test your ability to create a more complex program in Python based on a given scenario. Perfect for students learning GCSE Computer Science in UK schools. Extended Task 7 'Guess the Number' Multiplayer Game A primary school teacher wants to create a fun activity for their students to play when it is raining and they have to stay inside during break and lunch. Five pupils can play the game at once. Each player chooses a number between 1 and 100 . Then a random number is generated. Whoever was furthest from the random number is out of the game . The four remaining players then pick a new number . This continues with one player being removed each round until only one player is left and they are the winner. Add your own flair and additional features to your program as an extension, including preventing the same number being chosen by multiple players . For this task, you will need to create a document and include the following sections (with screenshots where appropriate): An introduction to explain the Purpose of your program . A List of Requirements for a successful program. Screenshots of your code (with comments in your code to show understanding). Testing – Create a plan to show how you will test your program and then explanations of any errors that you found and how they were fixed . An Evaluation of what worked, what didn’t, and how you met each of your requirements from your original list. Also, discuss further improvements that you could have made to improve your program. Reminders for this task: You will need to use loops to allow the users to enter their numbers. You may wish to use subroutines to decompose the problem into separate rounds. You will need to import the random library to generate a random number in each round. You will need to compare each number to the randomly selected answer using comparison operators such as > and <. There are multiple ways to approach this program, and your solution might look different from the example. Break the problem down and focus on one part at a time. Example solution: Introduction & Round One Round Two ⬅ Extended Task 6 (Word Game)
- 10.2 - Stages of Compilation - Eduqas (2020 Spec) | CSNewbs
Learn about the six stages of compilation - lexical analysis, symbol table construction, syntax analysis, semantic analysis, code generation and code optimisation. Based on the 2020 Eduqas (WJEC) GCSE specification. 10.2: Stages of Compilation Exam Board: Eduqas / WJEC Specification: 2020 + A compiler translates source code (high-level language written by a programmer) into machine code in five separate stages : 1. Lexical Analysis The term 'lexical' refers to words and phrases . Source code needs to be broken down into tokens that can later be analysed. In lexical analysis: Spaces and comments are removed from the code. Identifiers , keywords and operators are replaced by tokens . A token is similar to a variable with a name and a value . A symbol table is created. T his table stores the addresses of all variables , labels and subroutines used in the program. 2. Syntax Analysis The term 'syntax' refers to sentence structure . In syntax analysis: The tokens created in the first stage are checked to see if they follow the syntax (spelling and grammar ) rules of the programming language. This process is called ' parsing ' . During parsing, if a syntax error is found then an error message is displayed and compilation stops . 3. Semantic Analysis The term 'semantic' refers to logic . Variables are checked in this stage to ensure they are used correctly: Variable checks ensure they are correctly declared and use a valid data type (for example integers are not assigned to decimal values). Operation checks ensure they are correct for the data type used ( for example dividing a number must result in an real value ). 4. Code Generation The machine code (data in a binary format ) is generated . 0010 1011 0101 0101 0110 0111 0101 0001 0101 0101 0101 0110 5. Code Optimisation The code is optimised so it is fast , efficient and uses as little of the computer's resources as possible. Q uesto's Q uestions 10.2 - Stages of Compilation: 1 a. List the 6 stages of compilation in order . [6 ] 1b. Create a poster or flowchart describing each of the 6 stages of compilation : 1. Lexical Analysis 2. Symbol Table Creation 3. Syntax Analysis 4. Semantic Analysis 5. Code Generation 6. Code Optimisation [ 10 total ] 10.1 - Translators Theory Topics 10.3 - Programming Errors
- 3.3 - Network Topology - Eduqas GCSE (2020 spec) | CSNewbs
Learn about the four network topology types - bus, ring, star and mesh - plus advantages and disadvantages of each. Based on the 2020 Eduqas (WJEC) GCSE specification. 3.3: Network Topology Exam Board: Eduqas / WJEC Specification: 2020 + What is a network topology? Network topology refers to layout of computer systems on a network . Devices in a network topology diagram are often called 'nodes' . What are the different types of network topology? Bus Topology The nodes are connected to a bus (a central cable along which all data is transferred across the network). How it works: Data packets are sent along the main cable (sometimes known as the 'backbone') from the source computer to each other system in turn . Each system checks the destination address of the data packets. If the addresses match then the data is accepted otherwise it is passed on to the next system. Terminators are required at both ends of the bus to mark the end of the cable. Advantages: Because of the simple layout, it is easy to attach another system to the main cable without disrupting the whole network . A bus topology is quick to set up once the main cable has been established making it optimal for temporary networks . A bus topology is cost-effective because it usually contains less cabling than other topologies and requires no additional hardware (like a hub or switch). Disadvantages: Poor security as data packets are passed on to each system on the network. Data collisions are likely - this is when two systems attempt to transfer data on the same line at the exact same time. Resending the data wastes time and slows down the network . The main cable will only have a limited length which can become crowded and slows the network speed as more systems are attached. The main cable must also be terminated properly . Ring Topology Computer systems are connected together in a single loop . How it works: Packets are transferred around the ring in one direction , passing from one computer system to the next in a loop . As the packets arrive at each computer system, the computer checks the destination address contained in the data packet to see if it matches its own address. If the addresses match the computer accepts and processes the data packet, otherwise it passes it on to the next system. Advantages: Data collisions are avoided as data packets are transmitted in one direction around the ring. Attaching more systems to a ring topology won't affect the transfer speed (bandwidth ) as much as other layouts like a bus topology because the data is transferred at a consistent speed . Disadvantages: If any system on the network fails then the whole network fails as the loop is broken and data can't be transferred to all systems. To add a new system to a ring topology the network must be temporarily shut down . Star Topology Each computer system is connected to a central device , usually a hub or switch . How it works: Each computer system is connected to the central hub or switch and transfers its data packets there. The hub or switch looks at the destination address and transfers the packets directly to the intended computer. Advantages: A star topology has improved security because data packets are sent directly to and from the hub / switch in the centre and not necessarily all devices like in a bus or ring topology. New systems can be attached directly to the central system so the network doesn't need to be shut down . System failures of attached computers won't usually cause complete network failure. Transfer speeds are generally fast in a star topology as there are minimal network collisions . Disadvantages: Extra hardware (the hub or switch) is required to be purchased, installed and maintained. If the central system (the hub or switch) fails then the whole network will be unusable until the error is fixed. Mesh Topology In a full mesh network, each computer system is connected to every other computer system . There is also a partial mesh network where only some nodes (e.g. a printer) are connected to every other node. How it works: Data packets are transferred to the destination address along the quickest path , travelling from node to node. If a pathway is broken , there are many alternative paths that the packets can take. Advantages: If one cable or system fails then data packets can take an alternative route and still reach the destination address. Because of the large possible number of systems and connections, a mesh topology can usually withstand large amounts of data traffic . New systems can be added to the network without disrupting the entire topology . Disadvantages: Because of the possibly large amount of cables required (especially in a full mesh topology) this network layout can be expensive to install and maintain . Redundant cabling should be avoided - this is when cables are connected between systems that won't ever need to communicate . Q uesto's Q uestions 3.3 - Network Topology: 1. Draw and label diagrams of all four topologies . [12 ] 2a. A school currently uses a bus topology but is considering changing to a ring topology . Describe two advantages and two disadvantages of both topologies. [ 8 ] 2b. An office currently uses a star topology but is considering changing to a mesh topology . Describe two advantages and two disadvantages of both topologies. [ 8 ] 3.2 - Data Packets & Switching Theory Topics 3.4 - Network Hardware & Routing
- 2.2 - Applications Generation | OCR A-Level | CSNewbs
Learn about applications, utility software, open source and closed source, translators including interpreters, compilers and assemblers, stages of compilation (lexical analysis, syntax analysis, code generation and optimisation) and linkers, loaders and libraries. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 2.2 - Applications Generation Specification: Computer Science H446 Watch on YouTube : Application software Utilities Open & closed source High & low level language Translators Stages of compilation Linkers, loaders & libraries This topic explores key types of software and how they support computer systems and users . It explains different kinds of applications , utilities , translators and compares open and closed source software . Another important concept is compilation , with knowledge required of its different stages , as well as linkers , loaders and software libraries . Applications Software Applications software allows users to carry out productive or creative activities such as document editing , data analysis , communication or media creation . Common examples include word processors (e.g. Microsoft Word or Google Docs ), spreadsheets (e.g. Excel or Sheets ), database management systems (e.g. Access ), web browsers (e.g. Chrome or Safari ) and graphics editors (e.g. Photoshop ). Applications can be general-purpose , serving many uses , or special-purpose , created for a specific function like payroll or medical record management . Utilities Utility software is system software designed to maintain , optimise and manage a computer’s performance , often running in the background to support the operating system . Examples include security tools like an antivirus , backup , compressors , disk management utilities and defragmenters . Defragmentation is the process of reorganising files on a hard drive so that parts of each file are stored together in contiguous blocks , improving access speed . Open Source & Closed Source Open source software has its source code (the actual code written by its developers ) made publicly available , allowing users to view , modify and share it freely . An open source licence encourages collaboration , transparency and community-driven improvement . However, it may lack official technical support or guaranteed updates . Closed source software has its source code private , restricting modification and redistribution . It is usually sold commercially with paid licences , regular updates and dedicated technical support . Bug fixes and quality assurance are out of the user's control , being managed by the developer . Support may end without warning . High & Low Level Languages Programming languages can be split into high-level and low-level , based on how close they are to the computer’s hardware . High-level languages are easier to read and write , while low-level languages give direct control over hardware but are harder to use . High-level languages like Python or Java are similar to natural human language, making them easy to write , understand, and debug . Low-level languages include machine code (binary ) and assembly language but are written for specific processor architecture . Translators Translators are programs that convert source code written in one programming language into another form that the computer's CPU can understand - typically machine code (binary ). An assembler translates assembly language into machine code that the CPU can execute directly . An interpreter translates and executes high-level code in a line-by-line method, stopping when an error occurs . A compiler translates the entire high-level program into machine code before execution , producing an executable file . Stages of Compilation Compilation is a complicated process to convert high-level program code into machine code . It consists of four key stages : Lexical analysis breaks the source code into tokens , such as keywords , identifiers and operators . Spaces and comments are removed and a symbol table of identifiers is created. Syntax analysis checks that the token sequence follows the grammatical rules of the programming language , building an abstract syntax tree . Code generation converts the abstract syntax tree into object code (unfinished machine code ) the CPU can understand . Code optimisation improves the efficiency of the generated code , for example by reducing redundant instructions or improving execution speed . Libraries, Linkers & Loaders Compilation also requires additional programs, such as a linker and loader and the use of libraries . A library is a collection of pre-written code created by other programmers that contains useful routines and functions which can be reused in a program. A linker combines object code and libraries , resolving references so that a final executable file can be created . A loader copies an executable file from secondary storage into RAM , ready for execution by the processor . Q uesto's K ey T erms Applications: database, word processor, web browser, graphics manipulation, spreadsheet software, presentation software Utilities: defragmentation, system cleanup, file manager, device driver, security tools Open & Closed Source: source code, open source, closed source Translators: assembler, interpreter, compiler, machine code Stages of Compilation: lexical analysis, token, syntax analysis, abstract syntax tree, code generation, code optimisation, library, linker, static linking, dynamic linking, loader D id Y ou K now? Grace Hopper , a US Navy rear admiral , is credited with creating one of the first compilers in 1952 and coining the term ' compiler '. She also helped develop the languages FLOW-MATIC and later COBOL , which is still used today . 2.1 - Systems Software A-Level Topics 2.3 Software Development
- 3.3 - Networks | OCR A-Level | CSNewbs
Learn about the characteristics of networks, protocols, standards, the internet, TCP/IP stack, DNS servers, protocol layering, LANs, WANs, packet and circuit switching, network security and threats, firewalls, proxies, encryption, network hardware, client-server and peer to peer networks. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 3.3 - Networks Specification: Computer Science H446 Watch on YouTube : Purpose of networks (LAN & WAN) Protocols & standards Protocol layering & TCP/IP stack Domain Name System (DNS) Packet & circuit switching Network security threats Network security protection Network hardware Client-server & peer-to-peer This topic looks at how data is transferred between computer systems on networks , including the required devices , protocols , network types and potential security threats . Purpose of Networks A network is a group of connected computers that can share data , resources and communicate with each other . The main purpose of a network is to allow users to share files , hardware (like printers ), internet connections and other services efficiently . A Local Area Network (LAN ) covers a small geographical area , such as a single building or school , and is usually owned and managed by one organisation . A Wide Area Network (WAN ) covers a large geographical area , connecting multiple LANs through public or leased communication lines such as the internet . YouTube video uploading soon Protocols & Standards Protocols are sets of rules that define how data is transmitted and received over a network , ensuring that devices can communicate reliably . Standards are agreed specifications that ensure different hardware and software systems are compatible and can work together . They are needed so that networks remain interoperable , secure and efficient , regardless of the devices or manufacturers involved . Common network protocols include: HTTP /HTTPS is used for transferring web pages over the internet . FTP aids the transfer of files across a network . SMTP is used to send emails and IMAP /POP receive emails . TCP/IP is the core suite of protocols that controls how data is packaged , addressed , transmitted and received across networks . YouTube video uploading soon Protocol Layering & TCP/IP Stack Protocol layering is used to divide complex networking tasks into manageable sections , making systems easier to design , understand and troubleshoot . It also allows different technologies or protocols to work together , as each layer only interacts with the ones directly above and below it. The four layers are: Application layer : Provides network services to end users , such as web browsing (HTTP ) or email (SMTP ). Transport layer : Manages data transmission between devices, ensuring it arrives reliably and in the correct order (e.g. TCP , UDP ). Internet layer : Handles addressing and routing of data packets between networks using IP (Internet Protocol ). Link layer : Manages the physical connection between devices and controls how data is transmitted over the network hardware . YouTube video uploading soon Domain Name System (DNS) The Domain Name System ( DNS ) translates human-readable domain names (like www.csnewbs.com ) into IP addresses that computers use to identify each other on a network . When a user enters a web address , the request is sent to a DNS server to find the matching IP address . If the server doesn’t have it stored locally , it queries other DNS servers higher in the hierarchy until it finds the correct address . The IP address is then returned to the user’s device , allowing it to connect to the correct web server to access the requested web page . YouTube video uploading soon Packet & Circuit Switching Packet switching and circuit switching are methods of data transmission , describing how data is sent across a network from one device to another . With packet switching , data is split into small packets , each sent independently across the network and reordered at the destination . This makes efficient use of network resources and allows many users to share the same connections . However, packets can arrive out of order or be delayed , causing variable performance . With circuit switching , a dedicated communication path is established between two devices for the duration of a session , as in traditional phone networks . It provides a reliable and consistent connection with guaranteed bandwidth . The drawback is that it wastes resources , as the dedicated line cannot be used by others . YouTube video uploading soon Network Security Threats There is a range of potential threats associated with network use to be aware of, including the following: Hackers can attempt to gain unauthorised access to computer systems or networks , often to steal , alter or destroy data . Viruses are malicious programs that attach themselves to other files and spread , potentially damaging or deleting data . Denial of Service ( DoS ) attacks overload a network or website with traffic , making it unavailable to legitimate users . Spyware secretly monitors user activity and collects information such as passwords or browsing habits . An SQL injection involves inserting malicious SQL code into a database query to access or alter sensitive data . Phishing uses fraudulent emails or messages to trick users into revealing personal information . Pharming redirects users from legitimate websites to fake ones designed to steal login details or financial information . YouTube video uploading soon Network Security Protection Minimising or preventing network threats is vital and can be achieved with the following measures : Firewalls monitor and control incoming and outgoing network traffic , blocking unauthorised access while allowing safe communication . Secure passwords help protect user accounts by making it difficult for attackers to guess or crack them, especially when they are long and complex . Anti-virus software scans and removes malicious programs , such as viruses and worms , before they can damage files or systems . Anti-spyware software detects and removes spyware , preventing it from secretly collecting personal or sensitive information from a user’s device . YouTube video uploading soon Network Hardware A range of network hardware is required for devices to transfer data to another location , including the following: A modem converts digital data into analogue signals and back , allowing internet access over phone or cable lines . A router directs data between networks and assigns IP addresses to connected devices . Cables provide the physical connections between devices . A Network Interface Card ( NIC ) enables a computer to connect to a network . A Wireless Access Point ( WAP ) allows wireless devices to join a wired network via WiFi . On a local area network ( LAN ), hubs broadcast data to all devices , whereas switches send data only to the intended destination , improving network efficiency . YouTube video uploading soon Client-Server & Peer-to-Peer A client–server network has a central server that provides resources and services to client computers . It allows for centralised management , making it easier to back up data and enforce security policies . However, it relies heavily on the server - if it fails , users may lose access to resources . A peer-to-peer (P2P ) network has no central server ; instead, each computer can act as both a client and a server , sharing resources directly . It is cheap and easy to set up , making it suitable for small networks . The drawback is that it can be less secure and harder to manage , as data and security depend on individual users . YouTube video uploading soon This page is under active development. Check here for the latest progress update. Q uesto's K ey T erms Purpose of networks: local area network (LAN), wide area network (WAN) Protocols: protocol, standard, protocol layers, TCP/IP stack, application layer, transport layer, internet layer, link layer DNS: Domain Name System Switching: packet switching, circuit switching Network security: hackers, viruses, unauthorised access, denial of service, spyware, SQL injection, phishing, pharming, firewalls, secure passwords, anti-virus, anti-spyware Network hardware: modem, router, cable, NIC, Wireless Access Points, hub, switch Client-server & peer-to-peer D id Y ou K now? The first computer worm is considered to be Creeper (in 1971 ), which spread across ARPANET computers and displayed the message: “ I’m the creeper, catch me if you can! ”. A second program called Reaper was then created to delete Creeper , making it arguably the first antivirus . 3.2 - Databases A-Level Topics 3.4 - Web Technologies
- 1.1 - Computational Thinking - OCR GCSE (J277 Spec) | CSNewbs
Learn about the three elements of computational thinking - abstraction, decomposition and algorithmic thinking. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). 1.1: Computational Thinking Exam Board: OCR Specification: J277 There are three key components to computational thinking (smart problem solving): Abstraction is when you ignore unnecessary information and focus only on the important facts . Abstraction is used because it simplifies a problem to make it less complex . This makes it more straightforward to understand the problem and create a solution . Decomposition is when you break a problem down into smaller tasks so that it is easier to solve . Each individual problem can be separately tested and solved . Decomposition also enables different people to work on the different parts of a larger problem that can later be recombined to produce a full solution . Algorithmic thinking is the final stage as logical steps are followed to solve the problem . The problem is broken down using decomposition into smaller problems . The required data and relevant data structures are considered using abstraction . Watch on YouTube : Abstraction Decomposition Algorithmic Thinking Q uesto's Q uestions 1.1 - Computational Thinking: 1. What does the term 'abstraction ' mean? Why is it important ? [2 ] 2. What is meant by ' decomposition '? Why is it important ? [ 2 ] 3. What is algorithmic thinking ? What does it involve? [3 ] Theory Topics 1.2 - Designing Algorithms
- Python | Extended Task 3 | CSNewbs
Test your ability to create a more complex program in Python based on a given scenario. Perfect for students learning GCSE Computer Science in UK schools. Extended Task 3 Hi, Susanna here, I want to make a blackjack-like program that I can play for fun at home in between revising for Computer Science. The aim of my blackjack game is to get as close to 21 as possible with the most number of cards, without going over. So... The user can choose whether to be hit with a new card (a number between 1 and 8) or fold and stop. Each number they are dealt adds up to their total . If the total goes over 21, then they lose . If they bust (when over 21) or folded then their final number and their number of cards is displayed . Blackjack For this task, you will need to create a document and include the following sections (with screenshots where appropriate): An introduction to explain the Purpose of your program . A List of Requirements for a successful program. Screenshots of your code (with comments in your code to show understanding). Testing – Create a plan to show how you will test your program and then explanations of any errors that you found and how they were fixed . An Evaluation of what worked, what didn’t, and how you met each of your requirements from your original list. Also, discuss further improvements that you could have made to improve your program. Example solution: Helpful reminders for this task: Think about the type of loop that you need. Will you need more than one loop? What variables will you need? Remember to use an input . What will you ask the user? How will you use their response? Remember to use ‘import random’ and randint to create a random number . What outputs do you need and when? What should you display… After each hand? At the beginning? At the end? ⬅ Extended Task 2 (Lottery) Extended Task 4 (Vet Surgery) ➡
- 2.2 - Computational Methods | OCR A-Level | CSNewbs
Learn about computational methods including problem recognition, decomposition, divide and conquer, abstraction, backtracking, data mining, heuristics, performance modelling, pipelining and visualisation. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level Specification: Computer Science H446 2.2 - Computational Methods Watch on YouTube : Problem recognition Decomposition Divide and conquer Abstraction Backtracking Data mining Heuristics Performance modelling Pipelining Visualisation Computational methods are techniques to analyse problems and design efficient , effective solutions . Problem Recognition Problem recognition is the process of identifying that a problem exists and understanding its nature before attempting to solve it. It involves determining the aims of the task , identifying constraints and requirements , and clarifying what inputs , outputs and processes are expected from the solution . Effective problem recognition ensures the developer understands the real-world context and avoids solving the wrong problem or missing key details . It is the essential first step that guides all later stages of computational thinking and system design . YouTube video uploading soon Decomposition Decomposition involves breaking a complex system or task into smaller , more manageable components that are easier to design , implement and test . Each sub-problem should ideally be independent and solve a specific part of the overall task , which helps reduce complexity and supports modular program design . This approach enables different developers to work on different components simultaneously and simplifies debugging , maintenance and future updates . By working through smaller logical parts , the full problem becomes far more approachable and structured . YouTube video uploading soon Divide and Conquer Divide and conquer is a technique that splits a problem into smaller sub-problems of the same type , solves them (often using recursion ), and then combines the solutions to produce the final answer . This approach can significantly improve efficiency by reducing large input sizes into more manageable chunks , as seen in algorithms like quicksort . Divide and conquer algorithms include a binary search and a merge sort . The time complexity of divide and conquer algorithms is logarithmic - O(log n) - allowing complex problems to be solved much quicker than other algorithms . YouTube video uploading soon Abstraction Abstraction means removing unnecessary details to focus only on the most important features of a problem or system . It allows programmers to create simplified models that capture essential behaviour without becoming overwhelmed by irrelevant complexities . Abstraction enables generalisation , reusable designs and clearer reasoning about how components interact . In computational contexts, abstraction also highlights the difference between real-world systems and their simplified computational models . YouTube video uploading soon Backtracking Backtracking is used to explore possible solutions to a problem by building a partial solution and abandoning it as soon as it becomes clear it cannot succeed . It works by trying an option , checking whether it leads towards a valid solution , and backtracking to try a different path if a dead end is reached . This approach is used in constraint-based problems such as maze solving . While powerful , backtracking can be computationally expensive , so it often benefits from heuristics or pruning strategies . YouTube video uploading soon Data Mining Data mining is the process of extracting useful patterns , trends and relationships from large datasets . It enables organisations to identify hidden insights , predict behaviours and support data-driven decision-making , particularly in fields such as marketing , healthcare , finance and security . Data mining can lead to enhanced decision-making that can result in innovation , a competitive advantage against similar organisations and increased revenue . It can be used to identify anomalies or unused features . However, data mining doesn't explain the patterns it can identify and it requires powerful computers with a lot of processing power to handle huge amounts of data . YouTube video uploading soon Heuristics Heuristics are approximate problem-solving strategies that aim to produce good solutions quickly when exact , optimal methods are too slow or computationally impractical . They rely on rules of thumb to guide searches through very large solution spaces efficiently . Heuristics are widely used in artificial intelligence , optimisation tasks and complex search algorithms such as A* , where perfect accuracy is less important than fast , practical solutions . The trade-off is that heuristic methods are not guaranteed to produce the optimal answer , but they dramatically reduce processing time . YouTube video uploading soon Performance Modelling Performance modelling is the process of predicting how a system or algorithm will behave under different workloads , input sizes or hardware environments . It uses tools such as mathematical analysis , simulation and Big O notation to estimate required resources such as processing time or memory use . Performance modelling offers a cheaper , quicker and often safer way to test applications . For example, when a company beta tests an online game , it can trial the system with a smaller group of players and then apply performance modelling to predict how much server capacity will be needed when the game is fully released . YouTube video uploading soon Pipelining Pipelining is a technique in which different stages of a process are overlapped so that multiple instructions or operations are being processed simultaneously at different stages . In CPU architecture , for example, one instruction might be fetched while another is decoded and a third is executed , increasing overall throughput without increasing clock speed . Pipelining can also be used in algorithms or data-processing systems to prevent idle time in stages that operate independently . However, pipelining introduces complexity because dependencies or branch mispredictions may require a pipeline to be flushed - interrupting flow and reducing efficiency . YouTube video uploading soon Visualisation Visualisation supports the understanding of a problem by presenting information in a clearer and more accessible form than text alone . It is useful for explaining complex ideas or identifying patterns . Data can be shown visually through diagrams , graphs , trees , flowcharts or tables . The advantages of visualisation include helping to model , represent , analyse or summarise complex concepts . It allows information to be communicated more clearly and in a way that is easier to interpret . It can also provide different perspectives on how a problem might be solved . 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 Methods: problem recognition, decomposition, divide and conquer, abstraction, backtracking, data mining, heuristics, performance modelling, pipelining, visualisation D id Y ou K now? Real-time location services like Google Maps use heuristics to guess travel times using heuristics such as estimated speeds , traffic history and shortcuts to make fast but approximate route suggestions . 2.1 - Programming Techniques A-Level Topics 3.1a-d - Algorithm Complexity
- 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
- OCR CTech IT | Unit 1 | 4.5 - Job Roles | CSNewbs
Learn about the different skills and attributes that are required for IT roles including a network manager, programmer, animator and technician. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 4.5 - Job Roles Exam Board: OCR Specification: 2016 - Unit 1 There are several different IT-related roles within most companies. Each role requires specific skills and attributes to be performed successfully. Try to apply the most suitable personal attributes that were described in 4.3 , as well as any other important skills relevant to the role , such as programming. Self-motivation Leadership Respect Dependability Punctuality Problem Solving Determination Independence Time Management Team Working Numerical Skills Verbal Skills Planning & Organisation Network Manager A network manager must control a group of employees with strong leadership to clearly set out their vision for the team. They must be able to motivate and encourage the team members to meet objectives . Because a network manager is high-ranking, there may not be many senior staff above them so they must be self-motivated and able to complete tasks independently , without being monitored . Network managers must be dependable and decisive , able to weigh up the consequences of a decision and make tough calls whilst under pressure . Time management is an important attribute for a network manager, they must be able to prioritise tasks and ensure deadlines are kept to . IT Technician IT technicians must have good interpersonal skills so that they can communicate clearly with other employees or customers. They should be able to use simplified terminology to help another person with their problem. They must be able to use questioning effectively to work out what the issue is to begin to solve it. IT technicians should have plenty of experience with hardware and software troubleshooting and be able to use a range of troubleshooting tools to solve a problem. They need to be respectful to customers and employees when solving a problem and show determination , as well as self-motivation , to fix issues within acceptable time limits . Programmer A programmer needs to be competent in specific programming languages that the company use. It would be beneficial to have knowledge of more than one programming language so they can be more versatile and approach a problem in different ways . Programmers need to have a logical mind so that they are able to creatively solve problems. Using computational thinking is an important set of skills that programmers should have - for example, by using decomposition to break a large problem into smaller, more manageable chunks. They must have good planning and organisational skills so that they can stay on top of the numerous tasks that need to be done. They need good time management skills to prioritise the more important tasks and stick to a deadline . Programmers must be patient individuals, all programs will contain errors that must be debugged and rewritten numerous times. Good interpersonal skills are necessary so programmers can work efficiently in teams - often multiple programmers will work on subsections of the same program that fit together later. Web Designer & Animator Web designers create , plan and code web pages to fit specific requirements made by their customers. They must create both the technical and graphical aspects of the web page, editing both how it looks and how it works. Web designers could also be responsible for maintaining a site that currently exists. They would need to have sufficient knowledge of using HTML (HyperText Markup Language ) for the structure and content of the webpage and CSS (Cascading Style Sheets ) for the formatting and style . An animator may use a mixture of digital and hand-drawn images or even puppets and models. The main skill of animation is still artistic ability , but there is an ever-increasing need for animators to be experienced with technical computer software . Animators usually work as part of a team with strict deadlines . Q uesto's Q uestions 4.5 - Job Roles: 1. Describe the key skills and personal attributes that a new programmer should have. [10 ] 2. A brief job description of a web designer and an animator are shown above on this page. Use the descriptions of what makes a suitable network manager, IT technician and programmer to help you explain which personal attributes and skills are required for: a) A web designer b) An animator [8 each ] 4.4 - Ready for Work Topic List 4.6 & 4.7 - Bodies & Certification








