CS 135/Additional Materials/Chapter 1

''Resources are grouped by sections of the chapter. When adding a new resource, please try to add it to the appropriate section.''

Section 1.5 Python Overview
https://youtu.be/hnxIRVZ0EyU Python Programming Tutorial - 2 - Numbers Explains Integers, Floating-Point Numbers, and Variables (Sections 1.5.1 and 1.5.2), published 26 August 2016, posted by Karl Wurst

http://composingprograms.com/pages/13-defining-new-functions.html Defining New Functions: An in-depth overview about function definitions. If shows how to define a function, calling names, choosing names, functions as abstractions, and some mathematical operators. (***This is a good source for reviewing Section 1.5 - Python Review.) Published by John DeNero based on the textbook "Structure and Interpretation of Computer Programs”. Posted by Hinal Vaghela on 21 September, 2016

Section 1.5.1 Primitive Elements
https://www.youtube.com/watch?v=D48iCw3WWpI Let's Learn Python - Basics #1 of 8 - Integers, Floats and Maths by Trevor Payne posted by Megan Bellve

Floating-Point Numbers
http://anh.cs.luc.edu/python/hands-on/3.1/handsonHtml/float.html - Floats, Division, String Formats, Exponentiation, & Square Roots, published 28 May 2014, posted by Jen Recalde on 12 September 2016. (Shows more examples on different types of formats)

https://docs.python.org/2/tutorial/floatingpoint.html- Floating Point Arithmetic: Issues and Limitations; last updated on September 20,2016, posted by Jared Walsh on 21 September 2016. (explains more on what floating point numbers are and how to express them) http://floating-point-gui.de/formats/fp/ - Floating point numbers 19/20/16 posted by Adam Darmody. Explains the basics of floating point numbers. why they are used. as well as some examples of how they are used.

Summary of Numeric Types
Arithmetic in Python (from 27 June 2014) https://www.youtube.com/watch?v=Aj8FQRIHJSc&index=7&list=PLi01XoE8jYohWFPpC17Z-wWhPOSuh8Er- This video gives a detailed description (and visual tutorial) of the types of numbers and main arithmetic operations used in Python. It also clarifies the types of numbers that will result when multiple types are used in the same expression. (posted on 13 September 2016 by Nicole Daury) http://pythoncentral.io/pythons-range-function-explained/ this webpage gives detailed instructions on the range function for python. It also gives a lot of examples of the programming function so you can learn from those. (Eliza Bulger, 9/20)

Section 1.5.2 Naming Objects
This link http://mojones.net/how-to-pick-bad-function-and-variable-names.html titled "How to pick bad function and variable names" will help you pick appropriate names for objects and functions. A list of what not to do while naming objects. It gives examples of badly named objects and you can decide for yourself what you should and should not name an object. I believe this resource is helpful for beginners to get in the habit of naming objects and functions appropriately. As we move forward in this course you'll be naming more objects and functions. (Randolph Mogren) Link added 9/20/2016 Date the resource was created 11/9/2015

The Module
https://www.youtube.com/watch?v=_xPm5787Dus Explains how to import and draw with the turtle module. https://opentechschool.github.io/python-beginners/en/simple_drawing.html explains how to draw with the turtle module and some of the commands you can use with the turtle module.(posted on September 13th, 2016 by Paige Giordano)

Turtle commands, and how to use them. http://www.eg.bucknell.edu/~hyde/Python3/TurtleDirections.html This resource explains how to use the built-in commands of the turtle module. It helped me understand the formatting of the commands. This resource was last updated Wed Jul 26, 2011 and I have accessed it multiple times, and I added it 9/21/16. -Joseph Locatell

 "Hello Little Turtles!" This is a link to a third party page with an interesting tutorial/ walkthrough for using the Turtle module. 9/20/2016; Copyright 2012; Ronald Benvenuto Jr

http://www.eg.bucknell.edu/~hyde/Python3/TurtleDirections.html "Python Turtle Directions" explains what the Turtle module is and how to give commands. It walks the user through providing explanations throughout each step. 9/20/2016; posted by Ava Lauer

https://www.youtube.com/watch?v=j0zHKiS05Z4 "Python Tutorial 12: Turtle Graphics" has some great information regarding drawing with the turtle commands and also some short-cuts to writing the code. (Created on August 11, 2012. Posted on September 20, 2016 by Cloe Fitzgerald)

https://www.youtube.com/watch?v=rXP53yfNJL4 I found this video to be very helpful in understanding how to create write commands for a turtle module. It walks you through the important information on how to use a turtle. (Created on April 15, 2015. Posted September 20, 2016 by Alexander Lombardi)

https://www.youtube.com/watch?v=VmQpmERS4NU "How to use turtle in Python" shows the basic functions of turtle. Published on Jul 14, 2013. Posted 9/20/2016 by Josh Bahnick

http://interactivepython.org/courselib/static/thinkcspy/PythonTurtle/OurFirstTurtleProgram.html shows the beginning steps in using the turtle module. Helps you understand what each code you are typing does. Posted September 22, 2016 by Taylor Hutchings

Writing Your Own Functions
Python 3 Programming Tutorial - Functions https://www.youtube.com/watch?v=owglNL1KQf0&index=11&list=PLQVvvaa0QuDe8XSftW-RAxdo6OmaeL85M This video helps clarify how-to and where-to save functions in your folders. Eric Pappelardo 9/20/16

Defining Functions
https://www.tutorialspoint.com/python/python_functions.htm - Explains how to define and call a function. Other tabs on the left-hand side are useful for variable, module, loop and other aspects as well. (posted on 9/20/16 by Kay Paradis)

http://sthurlow.com/python/lesson05/ - This page goes more in depth with how to write and call functions, which may have been troublesome to understand at first (9/20/16 Alec Barber)

https://www.youtube.com/watch?v=Qa5DDqzHh3g - "Python: Defining Functions" by: Barry Brown (youtube user) This video explains almost every aspect of defining and writing a function, including creating and replicating variables, what the functions do, how to replicate or modify what was entered in order to work with your specific situation, and so on. (Posted on date: 9/20/16) (Posted by: Patrick Taylor)

Python Course, Functions. http://www.python-course.eu/python3_functions.php - viewed:9/20. This resource was very helpful in explaining how to use functions and the different situations they can be used. This source also provided specific examples that can be followed in python. James LeNoir

https://www.youtube.com/watch?v=TkBLZk_hV5Y- viewed 9/20. This video is very useful because it explained to me what are functions for and moreover how to define them and run them. I was very confused on this topic but this video made things more clear. (9/20/2016 by Hanan Ibraheim)

Defining and Calling Functions: https://www.youtube.com/watch?v=OaYDfOCsKtE - This video basically breaks down how to define and call functions in the simplest terms. It helps to understand how it works and exactly how to do it. (Chantal Thomas, 9/21/16)

Section 1.5.4 Repetition
Python Beginner Tutorial: For Loops and Iterators https://www.codementor.io/python/tutorial/python-generators-and-iterators This website explains how for loops work and provides examples with pictures on what the coding and results should look like. Last edited March 2nd 2015 (Posted 9/20/16 by Travis Campbell) Range Function Explained http://pythoncentral.io/pythons-range-function-explained/ This website gives a thorough explanation of the different types of range functions and gives examples with pictures. Last edited Monday 8th December 2014. (posted on September 14, 2016 by Anna Haynes.

Khan Academy Tutorial: for Loops in Python https://www.youtube.com/watch?v=9LgyKiq_hU0&list=PLJR1V_NHIKrCkswPMULzQFHpYa57ZFGbs&index=4 This tutorial explains how for Loops work and how to write specific functions. It is wonderful at describing inputs and outputs and helping develop an understanding of how repetition works in Python (Posted on 9/20/2016 by Leah Stanley)

Python 3 Programming Tutorial - For Loop https://www.youtube.com/watch?v=xtXexPSfcZg The tutorial done in this video gives a very well explained tutorial of the for loop. It explains all of what is required for the most for loops, and and how they can be used. (Posted 9/21/16 by John Kehoe)

Drawing a Spiral
Python's Range Function Explained  http://pythoncentral.io/pythons-range-function-explained/  This page helped break down Python's range function into very simple details. It helped explain loops and what would be printed when range functions were entered. (9/20/16 Katelyn Ellis)

Drawing a Circle
Pygame Drawing Basics. The link https://www.cs.ucsb.edu/~pconrad/cs5nm/topics/pygame/drawing/ will further expand your knowledge of how to draw a circle and what to do with it once you have one. If you are curious as to how to become more creative with Python codes and commands, this resource is a great threshold to get you there. Sara Cohen (9/21/16)

Drawing a circle may seem like a daunting task to the beginner python coder, however, this youtube video provided an in-depth explanation of how to set up a turtle in python to draw a circle. Sam Hanson (9/20/16) date of video (10/4/15)

The Youtube tutorial https://www.youtube.com/watch?v=_DTNtqHlo4Y is about how to draw a snowman in python using the circle function. It may not seem like the traditional way to first learn about circles in python, but it can be helpful to watch how to draw multiple circles when the dimensions are constantly changing. Clara Gatsios (9/21/16), date of video (1/16/12)

https://www.youtube.com/watch?v=qI7VCWmkWws Even though the person who made the video sounds like they're very young they give a good demonstration on how to make a circle. Katelyn Valley (9/21/16), video date (08/15/15)

Drawing a Circle http://interactivepython.org/runestone/static/thinkcspy/Labs/lab04_01.html This website goes through how to draw shapes leading up to and including a circle. It provides interactive steps that show you what exactly to type in for each object and I found it very helpful. Michael Kontos (9/21/2016)