Ben's CS1 Work Site

This site represents work that I have done in support of my efforts to learn to program in the CS1 course at SUNY Oswego during the Fall 2019 semester. The materials will be temporally organized for the most part. Links to external sites that pertain to computer programming, problem solving, Java, Web development, and related matters will be placed after the personally created artifacts.

Course Work

Lab1 "Hello World! Hello You!" A first set of programming examples and exercises designed to establish a framework for learning to program. HelloWorld code + HelloWorld demo | HelloYou code + HelloYou demo

Lab2 "Hello Painter! Hello Composer!" A first set of programming examples and exercises designed to establish a framework for learning to program. BlueDot code + BlueDot demo | Dorothy code + Dorothy demo | BasicsListener code + BasicsListener demo | Melody code + Melody demo | Target code + Target demo

Programming Assignment 1: Microworld Problem Solving" Programs to create images in the Nonrepresentational Painting World (NPW) and sonic sequences the Modular Melody World (MMW). RedCross code + RedCross demo | KanizsaSquare code + KanizsaSquare demo | Dots code + Dots demo | ThreeFigureMinuetThing code + ThreeFigureMinuetThing demo | MinuetFigureListener code + MinuetFigureListener demo | AfterJSB code + AfterJSB demo

Lab3 "Establishing a CS1 Work Site" Setting up a Web site to house programs and demos and a few miscellaneous links.

Lab4 "Expressions and Shapes World Problem Solving" A first set of programming examples and excercises that involve expressions and applying them to problem solving ExpressionsThing code + ExpressionsThing demo | ShapesThing code + ShapesThing demo

Lab5 "An Interpreter Featuring Loop Forever and Selection" A set of programming examples and excercises that involves using interpreters and responding to commands. Interpreter1 code + | Interpreter2 code + Interpreter3 code + Interpreter3 Random Dot Demo Interpreter3 Input Dialog Box Demo Interpreter3 Help Demo Interpreter3 Error Demo

Programming Assignment 3: Shapes World Problem Solving" Programs that used the NPW world functionality but not the painter Work Area code + Work Area demo | White Area code + White Area demo | Yellow Space code + Yellow Space demo | Shipping Container code + Shipping Container demo |

Lab6 "Functions and Commands" A collection of codes that introduce the use of functions and command tools. SurfaceAreaOfCube code + SurfaceAreaofCube demo | Balloons code + Balloons demo | AlternateBalloons code + AlternateBalloons demo

Lab7 "String Thing" An introduction to the use of strings. StringOps code + StringOps demo | StringThing code + StringThing demo

Lab8 "Array Play" An introduction to the use of basic array creation and element referencing. Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + ReverseCopyBeginning demo + ReverseCopyReversed demo

Lab9a "Simple List Processing" An introduction to the use of basic array creation and element referencing. Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + ReverseCopyBeginning demo + ReverseCopyLyricsReversed demo

Lab9b "List Processing with Streams" An introduction to the use of basic array creation and element referencing. ArrayListProcessing code + ArrayListProcessing demo | StreamArrayListProcessing code + StreamArrayListProcessing demo

Lab10 "Establishing and Using Classes" An introduction to the use of basic array creation and element referencing. Roller code + Roller demo | Die code

Lab11 "Modeling Objects with Classes" An introduction to the use of basic array creation and element referencing. PersonSpecification code | Person Code | PersonDemo1 code + PersonDemo1 demo | PersonDemo2 code + PersonDemo2 demo |

Lab12 "Grahpheme to Color Synesthesia" An illustration of how strings and arrays cooperatively preform the essential elements of a computation GraphemeToColorSynethesia code + GraphemeToColorSynesthesia demo |

Programming Assignment 4:Nonrepresentational Artistic Expression " Programs to create programs in context of the NPW in which selection and repition are expressed. TextRectangles code + TextRectangles demo | CircleOfSquares code + CircleOfSquares demo | HirstSquares code + HirstSquares demo | HirstDots code + HirstDots demo | SimpleDots code + OptionPlaneDots demo | RedDots demo GreenDots demo BlueDots demo Invention1 code + Invention1 demo Invention2 code + Invention2 demo Stella code + Stella demo

Programming Assignment 5: Three List Interpreters" Programs to create images in the Nonrepresentational Painting World (NPW) and sonic sequences the Modular Melody World (MMW). NumberList code + RedCross demo | WordList code + WordList demo | Dots code + Dots demo |

Programming Assignment 6: Chromesthesia" Programs to create images in the Nonrepresentational Painting World (NPW) and sonic sequences the Modular Melody World (MMW). Chromesthesia0 Code + Chromesthesia demo | Pitch Code + Chromesthesia1 Code | Chromesthesia1 Demo + Pitch Code |

Various external sites relating to course content

Java Notes | Think Java: How to Think Like a Computer Scientist | Java Examples | Oracle's Java SE Tutorial | WWW Consortium