class: middle, center .right[.fourteen[Daily Journal]] # Of all the tasks or activities you did last night, what were the hardest to think about programmatically? What about the easiest? --- # Today's Goal To become more familiar with your one and only tool. --- # Agenda 1. [Review](#review) 2. [Phone Book Algorithm](#algorithm) 3. [Discuss Mac Reading](#reading) 4. [Files and Folders](#files) --- name: review class: middle, center # Review --- # Did you check your email before class today? --- count: false # Did you check your email before class today? # .eight[Good thing class wasn't canceled...] --- # Did you get the copies of the syllabi? --- count: false # Did you get the copies of the syllabi? # .eight[That's probably an important thing to have on hand.] --- # Did you notice how I told you something was "important" just then? --- count: false # Did you notice how I told you something was "important" just then? # .eight[Then you should write that thing down.] --- class: center, middle # Fill out the review sheet --- # Algorithm --- count: false # Algorithm # .eight[A process or set of rules to be followed in calculations or other problem-solving operations.] --- # Programming Language --- count: false # Programming Language ## .eight[A set of commands, instructions, and other syntax used to create a software program. In other words, a way to communicate with a computer to tell it to do something.] --- # Pseudocode --- count: false # Pseudocode # .eight[Informal notation in regular English that resembles a programming language.] --- # Binary --- count: false # Binary # .eight[A system of numerical notation that has 2 rather than 10 as a base.] --- # Lets count to 10 in binary: --- # Lets count to 10 in binary: # .eight[0001, 0010, 0011, 0100, 0101, 0110, 0111, 1000, 1001, 1010] --- class: middle, center # [Watch the 10,000 Domino Computer](https://www.youtube.com/watch?v=OpLU__bhu2w) --- name: algorithm # Phone Book Problem Let's say you want to find your friend Mike Smith in the phone book. Write an algorithm that would you could follow to find him. --- # Phone Book Problem .eight[Option #1] Start at the beginning, flip through each page one at a time until we find him or get to the end. --- # Phone Book Problem .eight[Option #2] Start at the beginning, flip through pages **two** at a time until we find him or get to the end. --- # Phone Book Problem .eight[Option #3] Open to the middle and see what letter you're at. Throw away the half of the book that you know he isn't in. Repeat this until you find him, dividing the problem in half each time. --- # Phone Book Problem .eight[Option #3] Open to the middle and see what letter you're at. Throw away the half of the book that you know he isn't in. Repeat this until you find him, dividing the problem in half each time. .fourteen[WINNER] --- class: middle, center  --- ``` 0 pick up phone book 1 open to middle of phone book 2 look at names 3 if Smith is among names 4 call Mike 5 else if Smith is earlier in book 6 open to middle of left half of book 7 go back to step 2 8 else if Smith is later in book 9 open to middle of right half of book 10 go back to step 2 11 else 12 quit ``` --- # Code is composed of: - Functions - Conditionals - Boolean Expressions - Loops --- name: reading # Yesterday's Reading [macforbeginners.com/articles/](https://www.macforbeginners.com/articles/) - Mac OS X Introduction - Browsing Through Files - Folder Organization - System Preferences - Keyboard Shortcuts - Spotlight Search --- class: middle, center # Do you have any questions on the reading? --- name: files # Files and Folders --- count: false # Files and Folders .eight[Everything is stored in a file.] - Files are just buckets of bits stored in the hard drive - File names are really addresses of where those bits are stored - Folders aren't containers, they're special files that list a bunch of file names. From now on, we'll call these addresses the file .eight[path]. --- class: middle, center # The End!