teachComputing
  • Home
  • AI
    • AI Literacy >
      • AI Alliteration
      • Describing Monsters
      • Dystopian writing
      • Bringing literacy to life with AI
      • AI Literacy Prompts
    • AI Computing >
      • AI Computing Lessons >
        • Make me happy
        • Chatting Robot
        • Supervised Learning
        • Fooled
        • Socratic Debate
        • Moral Machine
      • AI Coding Strategies
      • AI Computing Prompts
    • AI Prompts
  • Teaching & Learning
    • Wellbeing
    • Blog
    • Humour >
      • Teacher Humour
      • Teacher Humor
    • PLN Challenge >
      • Covering your backside
      • Online Privacy
      • Twitter Challenge >
        • Twitter All Star
        • Challenge 1
        • Challenge 2
        • Challenge 3
        • Tips for staying safe on Twitter
        • Tips for hosting Edu Twitter Chats
        • Tips for taking part in Twitter chats
        • It's all about the hashtag! Essential chats for educators
        • How to storify a chat
        • How to schedule Tweets
        • Twitter Lists
        • NT2tEU
      • Facebook Challenge >
        • Challenge 4
        • Challenge 5
        • Challenge 6
        • Tips for staying safe on Facebook
      • Google Challenge >
        • Challenge 7
        • Challenge 8
        • Challenge 9
      • Pinterest Challenge >
        • Challenge 10
        • Challenge 11
        • Challenge 12
        • Tips for using Pinterest
      • Blog Challenge >
        • Challenge 13
        • Challenge 14
        • Challenge 15
        • How to create a classroom blog
      • Staffrm Challenge >
        • Challenge 16
        • Challenge 17
        • Challenge 18
      • Skype Challenge >
        • Challenge 19
        • Challenge 20
        • Challenge 21
      • Edmodo Challenge >
        • Challenge 22
        • Challenge 23
        • Challenge 24
      • TeachMeet Challenge >
        • Challenge 25
        • Challenge 26
        • Challenge 27
      • In-school challenge >
        • Challenge 28
        • Challenge 29
        • Challenge 30
      • 30 ways to grow your PLN
    • Tools for Teachers >
      • Web 2.0 >
        • Top 10 Web 2.0 Tools
        • Classroom Response Tools
      • Quiz Tools
      • Classroom Management Tools
      • Software >
        • Media Conversion Tools
        • Application Software
      • Multimedia >
        • Free Music
    • BYOD
    • Digital Leaders >
      • Digital Leaders Blog >
        • DL Archive
      • DL Tips
      • Quotes
      • Links
    • Flipped Learning >
      • Flipped Classroom vs. Blended Classroom
    • Gamification >
      • Gamification vs. Game Based Learning vs. Game Design
    • School Closures
    • Game Based Learning >
      • Minecraft >
        • Minecraft in Education
        • Minecraft Lesson Ideas
        • Minecraft Literacy
        • Real Life Minecraft
        • Minecraft Top Tips
        • Minecraft Coding Tutorials >
          • Minecraft Code Builder Setup
          • Minecraft Code: Walking on Air
          • Minecraft Code: Hello World
          • Minecraft Code: Functions
          • Minecraft Code: Rainbow
          • Minecraft Code: Skyscraper
          • Minecraft Pixel Art
    • The magic of >
      • The magic of Computing
      • The magic of Maths
      • The magic of Science
      • The magic of Literacy
    • Road2e2
    • T&L Blog
  • Computing
    • Computing Blog >
      • GCSE Computer Science
      • General
    • Teaching Computer Science >
      • CPD >
        • Blocks to Code
        • Tutorials >
          • How to embed Flash into PowerPoint
          • How to embed YouTube videos in to PowerPoint
          • How to create a wiki
          • How to create a classroom blog
      • Schemes of Work
      • Programming Resources
      • Theory
      • Posters
      • Festive Computing Activities
      • FLOPPYS 2020
      • FLOPPYS 2021
      • FLOPPYS 2022
      • Game Design
      • App Creation
    • Theory Lessons >
      • Theory Tests
      • Computer Hardware >
        • Input / Output
        • CPU
        • LMC
        • Storage Devices
        • Memory (RAM / ROM)
        • Hardware
      • Binary Lessons >
        • Units of Data
        • Binary Representation
        • Binary Representation of Images
        • Binary Representation of Images (Festive)
        • Binary Representation of Characters
        • Binary Representation of Sound
        • Binary Representation of Instructions
        • Binary Addition
        • Hexadecimal
      • Software >
        • Operating System
        • Types of Software
        • Utility Software
      • Programming >
        • Flowcharts
      • Computational Thinking >
        • Data Science
    • Digital Literacy >
      • Social Media (Good or Bad thing?)
      • Cyberbullying
      • Staying Safe Online
    • ICT Strand >
      • Fake News Project >
        • Fake News 1
        • Fake News 2
        • Fake News 3
        • Fake News 4
        • Fake News 5
      • Spreadsheet Modelling
      • Superhero Movie Trailer
      • PowerPoint Task
      • Digital Imaging
      • Paint 3D Tutorial
    • Programming Lessons >
      • Scratch >
        • Festive Scratch >
          • Music Festive with Scratch
          • Turtle Snowflakes
          • What's your elf name
          • Secret Santa
        • Making music with Scratch
        • Sorting Hat Lesson
        • Turtle Time
        • Superhero name generator
        • Compliment Generator
        • Magic 8 ball
      • Python >
        • Chatbot
        • Coding Golf
        • Turtle Time >
          • Turtle Instructions
        • Magic 8 ball
        • Python Mad Libs
        • Rock Paper Scissors
        • Shakespearean Insult Generator >
          • Shakespearean Insult Generator Part 2
        • Compliment generator
        • Sorting Hat
        • Superhero name generator
        • Cards Against
        • Guess the word
        • Guess the number
        • Festive Python >
          • What's your elf name
          • Secret Santa
          • Turtle Snowflakes
      • Little Man Computer
      • Hour of Code >
        • Hour of Code Music
        • Python Tutorials
        • HoC 8-Bit Challenge
        • Music MicroPython (Festive)
      • Raspberry Pi >
        • Networking the Pi
        • Minecraft Pi
        • Harry Potter Sorting Hat >
          • Harry Potter Sorting Hat (GPIO)
        • Raspberry Pi LTSP (Networked Classroom)
        • Astro Pi
    • Homeschooling
    • Remote Learning >
      • Fun Python Tutorials
      • Python Tutorials >
        • Chatbot Tutorial
        • Dice Roll
        • Turtle Tutorial
        • Magic 8 ball
        • Sorting Hat
        • Rock Paper Scissors Tutorial
        • Cards Against
        • Python Mad Libs
        • Shakespearean Insult Generator >
          • Shakespearean Insult Generator Part 2
        • Guess the word
        • Guess the number
        • Superhero name generator
        • Compliment generator
        • Festive Python Tutorials >
          • What's your elf name
          • Secret Santa
          • Turtle Snowflakes
      • Scratch Tutorials >
        • Sorting Hat
        • What's your superhero name
        • Turtle Time Tutorial
        • Compliment Generator
        • Magic 8 Ball
        • Festive Scratch Tutorials >
          • Festive Music with Scratch
          • Secret Santa Scratch Tutorial
          • Turtle Snowflakes Tutorial
          • What's your elf name
    • Revision >
      • Data Representation >
        • Binary Representation of Images
        • Binary Representation of Sound
  • 21 Things
    • 21 Things To Try >
      • ConnectEd
      • Social Media >
        • Twitter
        • Pinterest
        • Facebook Groups
        • Facebook Pages
        • Google+ Communities
        • Staffrm
        • Edmodo
        • Mystery Skype
        • Blogging
        • Classroom Blogging
      • Gamification
      • Flipped Classroom
      • Breakout Edu
      • Edu Podcasts
      • Jar of Awesome
      • TeachMeet
      • Team Teaching
      • Mixed Reality
      • Digital Leaders
      • Genius Hour
      • Sketchnoting
    • Computing >
      • CS 20
      • Code Golf
      • PRIMM
      • Under The Hood
      • Unplugged
      • Podcasts
      • Facebook Groups CS
      • Flipped Classroom CS
      • Teach with Magic
      • Socratic Debate
      • Coding Music
    • 21 Things Keep Fit >
      • 20 Health Hacks
      • Home Health Hacks
    • 21 Things PLN >
      • Edmodo
      • Twitter
      • Reply to a blog
      • Skype
      • Cofee Edu
      • Pinterest
      • Reach out
      • Conferences
      • Instagram
      • Ning
      • MEC
      • Voxer
      • LinkedIn
  • Microbit
    • Physical Computing >
      • micro:bit LEDs
      • micro:bit PIR
      • micro:bit Servo
      • micro:bit Temp
      • micro:bit LDR
      • micro:bit Moisture
      • micro:bit RGB LEDs
      • micro:bit HC-SR04 3v3
      • micro:bit HC-SR04 5v
      • micro:bit Push button
      • micro:bit Potentiometer
      • micro:bit Piezo
    • Music >
      • Music Festive
    • Festive Projects
    • Projects >
      • Music
      • Music MicroPython
      • Servo Animals
    • Lessons >
      • Magic 8 Ball
      • Harry Potter Sorting Hat
    • Quick Start Guide
    • Microbit Simulator
  • #100 Ideas
    • Testimonials
    • Competition >
      • Competition 2
    • Worksheets
    • Bonus Ideas >
      • What's your elf name
      • Make me happy
      • Guess the word
      • Cards Against Humanities
      • Compliment generator
      • Data Science
    • Curriculum
    • ISTE
    • CSTA
  • About
    • Privacy
  • Home
  • AI
    • AI Literacy >
      • AI Alliteration
      • Describing Monsters
      • Dystopian writing
      • Bringing literacy to life with AI
      • AI Literacy Prompts
    • AI Computing >
      • AI Computing Lessons >
        • Make me happy
        • Chatting Robot
        • Supervised Learning
        • Fooled
        • Socratic Debate
        • Moral Machine
      • AI Coding Strategies
      • AI Computing Prompts
    • AI Prompts
  • Teaching & Learning
    • Wellbeing
    • Blog
    • Humour >
      • Teacher Humour
      • Teacher Humor
    • PLN Challenge >
      • Covering your backside
      • Online Privacy
      • Twitter Challenge >
        • Twitter All Star
        • Challenge 1
        • Challenge 2
        • Challenge 3
        • Tips for staying safe on Twitter
        • Tips for hosting Edu Twitter Chats
        • Tips for taking part in Twitter chats
        • It's all about the hashtag! Essential chats for educators
        • How to storify a chat
        • How to schedule Tweets
        • Twitter Lists
        • NT2tEU
      • Facebook Challenge >
        • Challenge 4
        • Challenge 5
        • Challenge 6
        • Tips for staying safe on Facebook
      • Google Challenge >
        • Challenge 7
        • Challenge 8
        • Challenge 9
      • Pinterest Challenge >
        • Challenge 10
        • Challenge 11
        • Challenge 12
        • Tips for using Pinterest
      • Blog Challenge >
        • Challenge 13
        • Challenge 14
        • Challenge 15
        • How to create a classroom blog
      • Staffrm Challenge >
        • Challenge 16
        • Challenge 17
        • Challenge 18
      • Skype Challenge >
        • Challenge 19
        • Challenge 20
        • Challenge 21
      • Edmodo Challenge >
        • Challenge 22
        • Challenge 23
        • Challenge 24
      • TeachMeet Challenge >
        • Challenge 25
        • Challenge 26
        • Challenge 27
      • In-school challenge >
        • Challenge 28
        • Challenge 29
        • Challenge 30
      • 30 ways to grow your PLN
    • Tools for Teachers >
      • Web 2.0 >
        • Top 10 Web 2.0 Tools
        • Classroom Response Tools
      • Quiz Tools
      • Classroom Management Tools
      • Software >
        • Media Conversion Tools
        • Application Software
      • Multimedia >
        • Free Music
    • BYOD
    • Digital Leaders >
      • Digital Leaders Blog >
        • DL Archive
      • DL Tips
      • Quotes
      • Links
    • Flipped Learning >
      • Flipped Classroom vs. Blended Classroom
    • Gamification >
      • Gamification vs. Game Based Learning vs. Game Design
    • School Closures
    • Game Based Learning >
      • Minecraft >
        • Minecraft in Education
        • Minecraft Lesson Ideas
        • Minecraft Literacy
        • Real Life Minecraft
        • Minecraft Top Tips
        • Minecraft Coding Tutorials >
          • Minecraft Code Builder Setup
          • Minecraft Code: Walking on Air
          • Minecraft Code: Hello World
          • Minecraft Code: Functions
          • Minecraft Code: Rainbow
          • Minecraft Code: Skyscraper
          • Minecraft Pixel Art
    • The magic of >
      • The magic of Computing
      • The magic of Maths
      • The magic of Science
      • The magic of Literacy
    • Road2e2
    • T&L Blog
  • Computing
    • Computing Blog >
      • GCSE Computer Science
      • General
    • Teaching Computer Science >
      • CPD >
        • Blocks to Code
        • Tutorials >
          • How to embed Flash into PowerPoint
          • How to embed YouTube videos in to PowerPoint
          • How to create a wiki
          • How to create a classroom blog
      • Schemes of Work
      • Programming Resources
      • Theory
      • Posters
      • Festive Computing Activities
      • FLOPPYS 2020
      • FLOPPYS 2021
      • FLOPPYS 2022
      • Game Design
      • App Creation
    • Theory Lessons >
      • Theory Tests
      • Computer Hardware >
        • Input / Output
        • CPU
        • LMC
        • Storage Devices
        • Memory (RAM / ROM)
        • Hardware
      • Binary Lessons >
        • Units of Data
        • Binary Representation
        • Binary Representation of Images
        • Binary Representation of Images (Festive)
        • Binary Representation of Characters
        • Binary Representation of Sound
        • Binary Representation of Instructions
        • Binary Addition
        • Hexadecimal
      • Software >
        • Operating System
        • Types of Software
        • Utility Software
      • Programming >
        • Flowcharts
      • Computational Thinking >
        • Data Science
    • Digital Literacy >
      • Social Media (Good or Bad thing?)
      • Cyberbullying
      • Staying Safe Online
    • ICT Strand >
      • Fake News Project >
        • Fake News 1
        • Fake News 2
        • Fake News 3
        • Fake News 4
        • Fake News 5
      • Spreadsheet Modelling
      • Superhero Movie Trailer
      • PowerPoint Task
      • Digital Imaging
      • Paint 3D Tutorial
    • Programming Lessons >
      • Scratch >
        • Festive Scratch >
          • Music Festive with Scratch
          • Turtle Snowflakes
          • What's your elf name
          • Secret Santa
        • Making music with Scratch
        • Sorting Hat Lesson
        • Turtle Time
        • Superhero name generator
        • Compliment Generator
        • Magic 8 ball
      • Python >
        • Chatbot
        • Coding Golf
        • Turtle Time >
          • Turtle Instructions
        • Magic 8 ball
        • Python Mad Libs
        • Rock Paper Scissors
        • Shakespearean Insult Generator >
          • Shakespearean Insult Generator Part 2
        • Compliment generator
        • Sorting Hat
        • Superhero name generator
        • Cards Against
        • Guess the word
        • Guess the number
        • Festive Python >
          • What's your elf name
          • Secret Santa
          • Turtle Snowflakes
      • Little Man Computer
      • Hour of Code >
        • Hour of Code Music
        • Python Tutorials
        • HoC 8-Bit Challenge
        • Music MicroPython (Festive)
      • Raspberry Pi >
        • Networking the Pi
        • Minecraft Pi
        • Harry Potter Sorting Hat >
          • Harry Potter Sorting Hat (GPIO)
        • Raspberry Pi LTSP (Networked Classroom)
        • Astro Pi
    • Homeschooling
    • Remote Learning >
      • Fun Python Tutorials
      • Python Tutorials >
        • Chatbot Tutorial
        • Dice Roll
        • Turtle Tutorial
        • Magic 8 ball
        • Sorting Hat
        • Rock Paper Scissors Tutorial
        • Cards Against
        • Python Mad Libs
        • Shakespearean Insult Generator >
          • Shakespearean Insult Generator Part 2
        • Guess the word
        • Guess the number
        • Superhero name generator
        • Compliment generator
        • Festive Python Tutorials >
          • What's your elf name
          • Secret Santa
          • Turtle Snowflakes
      • Scratch Tutorials >
        • Sorting Hat
        • What's your superhero name
        • Turtle Time Tutorial
        • Compliment Generator
        • Magic 8 Ball
        • Festive Scratch Tutorials >
          • Festive Music with Scratch
          • Secret Santa Scratch Tutorial
          • Turtle Snowflakes Tutorial
          • What's your elf name
    • Revision >
      • Data Representation >
        • Binary Representation of Images
        • Binary Representation of Sound
  • 21 Things
    • 21 Things To Try >
      • ConnectEd
      • Social Media >
        • Twitter
        • Pinterest
        • Facebook Groups
        • Facebook Pages
        • Google+ Communities
        • Staffrm
        • Edmodo
        • Mystery Skype
        • Blogging
        • Classroom Blogging
      • Gamification
      • Flipped Classroom
      • Breakout Edu
      • Edu Podcasts
      • Jar of Awesome
      • TeachMeet
      • Team Teaching
      • Mixed Reality
      • Digital Leaders
      • Genius Hour
      • Sketchnoting
    • Computing >
      • CS 20
      • Code Golf
      • PRIMM
      • Under The Hood
      • Unplugged
      • Podcasts
      • Facebook Groups CS
      • Flipped Classroom CS
      • Teach with Magic
      • Socratic Debate
      • Coding Music
    • 21 Things Keep Fit >
      • 20 Health Hacks
      • Home Health Hacks
    • 21 Things PLN >
      • Edmodo
      • Twitter
      • Reply to a blog
      • Skype
      • Cofee Edu
      • Pinterest
      • Reach out
      • Conferences
      • Instagram
      • Ning
      • MEC
      • Voxer
      • LinkedIn
  • Microbit
    • Physical Computing >
      • micro:bit LEDs
      • micro:bit PIR
      • micro:bit Servo
      • micro:bit Temp
      • micro:bit LDR
      • micro:bit Moisture
      • micro:bit RGB LEDs
      • micro:bit HC-SR04 3v3
      • micro:bit HC-SR04 5v
      • micro:bit Push button
      • micro:bit Potentiometer
      • micro:bit Piezo
    • Music >
      • Music Festive
    • Festive Projects
    • Projects >
      • Music
      • Music MicroPython
      • Servo Animals
    • Lessons >
      • Magic 8 Ball
      • Harry Potter Sorting Hat
    • Quick Start Guide
    • Microbit Simulator
  • #100 Ideas
    • Testimonials
    • Competition >
      • Competition 2
    • Worksheets
    • Bonus Ideas >
      • What's your elf name
      • Make me happy
      • Guess the word
      • Cards Against Humanities
      • Compliment generator
      • Data Science
    • Curriculum
    • ISTE
    • CSTA
  • About
    • Privacy
Search by typing & pressing enter

YOUR CART

Shakespearean Insult Generator - Part 2 (Introducing basic File Handling in Python)

Picture
Suggested time: 60 mins

Learning Objectives:

  • Understand and use sequence in an algorithm
  • Understand and use iteration in an algorithm (FOR and WHILE loops)
  • Understand and use selection in an algorithm (IF, Else and Else if)
  • Understand and use data structures in an algorithm (for example, Lists, Tables or Arrays)
  • Understand how to handle different types of files


Curriculum Mapping:

KS2:
  • Design, write and debug programs that accomplish specific goals; solve problems by breaking them into smaller parts. Select, use and combine a variety of software on a range of digital devices to design and create a range of programs.
  • Use sequence, selection and repetition in programs; work with variables and various forms of input and output
  • Use logical reasoning to explain how some simple algorithms work; detect and correct errors in algorithms and programs


KS3:
  • Use two or more programming languages, at least one of which is textual, to solve a variety of computational problems.
  • Make appropriate use of data structures [for example, lists, tables or arrays]; design and develop modular programs that use procedures or functions


Introduction:

In the previous lesson we explored the use of lists to create a python version of the online “Shakespearean Insult Generator”. This lesson carries on from the previous lesson but explores how to improve upon the program by introducing some simple file handling.


Lesson Outline:

In this lesson, students will improve their Shapespearean Insult Generator by using some simple file handling.


Starter:

Download the following sample code containing an extremely long list and display the code on the board.

very_long_list.py
File Size: 1 kb
File Type: py
Download File

Ask students what is the problem with using lists for this amount of data. (Try to draw out answers such as “Easy to make mistakes” and “Difficult to debug” etc.)

Ask students if they can think of a better way to do this?

Explain to students that there is a better way to tackle this task using file handling. Explain to students that file handling will most likely be covered in their Controlled Assessment.


Activity 1: Introduction to file handling

Before students make improvement to their “Shakespearean Insult Generator”, they need to become familiar with how to safely handle files in Python. 

WARNING! This section can cause serious damage to your files if you’re not careful!

To introduce students to basis file handling, let’s re-visit our Minion name generator from the previous lesson!
Picture
Opening and reading from a text file (Adapted from Mark Clarkson’s Introduction to Python 2.1 handbook: http://pi.mwclarkson.co.uk/2013/Intro/Introduction_%20to%20Python%20v2.1.pdf

To open a file, you need to make it a variable first. We do this with the

following command:

f = open("filename","mode")

Where filename is the name of the file and the mode must be one of the following:

r         read only
w        write only - NOTE, this destroys any previous version of the file!
r+       read AND write
a        append mode (will write only after the existing data)


1. Instruct students to download the list of minion names file (minions.txt) below:

minions.txt
File Size: 0 kb
File Type: txt
Download File



2. Ask students to type in and run the following code:

IMPORTANT! Students must save their Python script in the same folder that they saved the minions.txt file.
#
file = open("minions.txt","r")

# read the first line
line = file.readline()

# repeat as long as the line is not empty
while line != "":

    #
    print(line)

    # read the next line
    line = file.readline()

#
file.close()


3. Ask students to fill in the blank comments (#), explaining what the code is doing.

Now that students know how to open a simple text file and print the contents, next they need to know how to store each line of the file in a list so as to manipulate the data later.


4. Instruct students to add the following line at the beginning of their code:

 
names=[ ]


This new line will create an empty list to store our minion mames.


5. Next, instruct students to replace the line print(line) with the following code:


names.append(line)


Inform students that this new code will add the contents of each line of the text file to the newly created list (names)

Their code should look like this:
names=[]

# open the file and start searching
file = open("minions.txt","r")

# read the first line
line = file.readline()

# repeat as long as the line is not empty
while line != "":


    # 
    names.append(line)

    # read the next line
    line = file.readline()

# close the file
file.close()


6. Finally, tell students that they need to add the code to pick a name at random.

Instruct students to add the following code onto the end of their script:

print("Minion" + " " + random.choice(names))

Hint: Ask students what needs to be imported in order for the following code to work! If the students can’t remember, remind them that they have to add the line: import random at the beginning of their script.

Their final code should look like this:
import random


names=[]

# open the file and start searching
file = open("minions.txt","r")

# read the first line
line = file.readline()

# repeat as long as the line is not empty
while line != "":

    # 
    names.append(line)

    # read the next line
    line = file.readline()

# close the file
file.close()



print("Minion" + " " + random.choice(names))

Extension:

Ask students to create a text file with their own list of names (Perhaps the names of all the students in their class) and test it with their script.


Activity 2: Improving the Insult generator

Remind students how the online Shakespearean Insult generator works (see Part 1). Explain to students that they are going to improve their script by incorporating some simple file handling.

Instruct students to, using what they have learnt and using the resources at their disposal, update their Shakespearean Insult generator from the previous lesson so that it reads the list of random insults from a file.

Hint: Students will need to have 3 separate files (One for each column) and 3 empty lists.

Tip: If you prefer, you may wish to provide students with the lists of names in .txt format – this will save the students from having to type all the names themselves:

column1.txt
File Size: 0 kb
File Type: txt
Download File

column2.txt
File Size: 0 kb
File Type: txt
Download File

column3.txt
File Size: 0 kb
File Type: txt
Download File



Example Solutions

insult_creator_v1_txt.py
File Size: 0 kb
File Type: py
Download File

insult_creator_v1_txt_tkinter.py
File Size: 1 kb
File Type: py
Download File

Unless otherwise specified, everything in this repository is covered by the following licence:
Picture
The Shakespearean Insult Generator is licenced under a Creative Commons Attribution 4.0 International License.

Based on the Shakespearean Insulter: http://www.pangloss.com/seidel/Shaker/ 
Tags: programming language python, python programming language, python coding language, programming languages python, python code language, python programming language example, what is the python programming language, python scripting, python language tutorial, what type of programming language is Python, python class, python how to learn, learn python, learn python from scratch, where to learn Python, coding on computer, computer coding,  best place to learn coding online, online coding, online code, computer programming and Coding, hour of code program, computer science degree programs, programs for computer science, what does coding mean in computers, how does computer code work, what is computer programmer.
Powered by Create your own unique website with customizable templates.