*Note - website recently updated. For old site see http://cs.indstate.edu/info/old/*

# High School Visit

High School Classroom Visit from ISU CS This document contains some information about what a visit from an ISU CS faculty member or student might look like. If you have any questions you can ask whoever visited your class or Jeff Kinne at jkinne@cs.indstate.edu

## Contents

## Background

What is CS (at ISU and in general)? Programming and algorithms. See http://cs.indstate.edu/info/basic.html http://cs.indstate.edu/info/programs-undergrad.html htp://cs.indstate.edu/info/admissions-undergrad.html Jeff Kinne - things I can tell you about - different types of universities (Xavier University, Wisconsin-Madison, Indiana State), working for a small consulting company, just about any level of CS at a high level ISU CS - interesting things happening - see “Special Events” near bottom of http://cs.indstate.edu/info/ Jobs in CS - yes, one of the best BS degrees for jobs (but you do have to work hard to do well enough)

## Web programming - html, css, javascript

Web - learn unix, html, css, javascript - CS 151 at ISU (videos, class info/notes), w3schools, html validator

Examples from South Vigo HS - hello.html, hello_css.html, hello_javascript.html

## Examples from ISU CS courses

Arithmetic questions, science bowl score/timer, 8 queens, pong, adding, reversi, game of life, star field, calculator, fractal, closest pair, 3 body simulator, force directed graph, fire, astrosmash Use notepad++, or some other programmer text editor. Learn more - see w3schools link and/or CS 151 links above Algorithms CS is about programming and choosing the most efficient methods (algorithms)to do things. A few of the classic first algorithms to look at are linear search and binary search. Linear search: look through the whole list, worst-case running time - N (if not present), best-case - 1. Binary search (only if already sorted): look in the middle, remove from consideration half of the numbers, repeat. Number guessing game: one person picks a random number 0-100, the other guesses, and the person with the answer has to say “right”, “too low”, or “too high”. What is the best strategy for guessing? What is the minimum number of guesses to get it right? Number of guesses needed it about log2(N) where N is the range you started with. For N=100, log2(100) is about 6 or 7. For N=1000000, log2(N) is about Learn more - first few links on google search for things like “linear search algorithm” or “binary search algorithm”. Also, http://www.teachingtree.co/ and other university courses online listed at https://code.org/student/university

## In the news

AI - Turing test, videos on AI ACM - Association for Computing Machinery - CACM (current events) Quantum computers - can do both 0 and 1 “at the same time” (not really, but sort of), then they can search for solutions very quickly Note - if there are large scale quantum computers, then much of current encryption wouldn’t work. If you are the first one to get a working quantum computer, interesting things - sci-fi thriller… Search youtube for videos, some are interesting.

## Other fun

Scratch - pong Fun - ceasar cipher (encryption, on paper, javacript) - Science videos - links at http://www.kinnejeff.com/misc_links.html Programming challenge problems - hackerrank

## Math/proof kind of stuff

Math/proof - halting problem, P versus NP, reals are uncountable (reals - 0.123124, pi; rational - ¾, 70/99) Binary - how to convert decimal to binary, encoding a message in binary, converting binary to decimal, something about number of bits in computers Opportunities for you Summer honors - while still in HS - (1 week at ISU in mid-July, see bottom of http://cs.indstate.edu/info/ for past years) Online learning - ISU CS 151, code.org, edX Organize a club - at your school or centrally in TH (library, ISU)? Project ideas and feedback - ?

## What do you want to do today?

Hackerrank? Advice on colleges? Intro to html, javascript, css? Math/proofs? Algorithms? Scratch? Something else? Something you’re working on?