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.
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" Shapes and Expressions lab Shapes Code + Shapes Demo | Expressions Code + Expressions Demo
Lab5 "An Interpreter Featuring Loop Forever and Selection" Interpreter and loop lab Interpreter 1 + Interpreter 2 + Interpreter 3 + Dot Demo + Input Demo + Error Demo + Help Demo
Lab6 "Functions and Commands" Lab featuring different methods and calling those methods. Surface Area of Cube Code + Surface Area of Cube Demo | Balloons Code + Balloons Demo | Alternate Balloons Code + Alternate Balloons Demo
Programming Assignment 3: " Shapes World Problem Solving" Messy Desk Code + Messy Desk Demo | Standard Die Code + Standard Die Demo | Yellow Space Code + Yellow Space Demo | Shipping Container Code + Shipping Container Demo
Lab7 "String Thing" StringOps Code + StringOps Demo | StringThing Code + String Thing Demo
Lab8 "Array Play" Prime Array Code + Prime Array Demo | Street Array Code + Street Array Demo | ReverseCopy Code + Original Lyrics + Reverse Lyrics
Lab9a "Simple List Processing" Prime ArrayList Code + Prime ArrayList Demo | Street ArrayList Code + Street ArrayList Demo | ReverseCopy ArrayList Code + Original Lyrics + Reverse Lyrics
Programming Assignment 4: " Nonrepresentational Artistic Expressions" Text Rectangles Code + Text Rectangles Demo | Circle of Squares Code + Circle of Squares Demo | Hirst Squares Code + Hirst Squares Demo | Hirst Dots Code + Hirst Dots Demo | Simple Dots Code + Simple Dots Demo | Deterministic Invention Code + Deterministic Invention Demo | Nondeterministic Invention Code + Nondeterministic Invention Demo | Stella Code + Stella Demo |
Lab9b "List Processing with Streams" ArrayListProcessing Code + ArrayListProcessing Demo | StreamArrayListProcessing Code + StreamArrayListProcessing Demo |
Programming Assignment 5: "Three List Interpreters" NumberList Code + NumberList Demo | WordList Code + WordList Demo | WordList Array Code + WordList Array Demo |
Lab10 "Establishing and Using Classes" Chance Die Code | Chance Roller Code + Chance Roller Demo |
Lab11 "Modeling Objects with Classes" Person Code | PersonDemo1 Code + PersonDemo1 Demo | PersonDemo2 Code + PersonDemo2 Demo | PersonSpecification Code |
Lab12 "Grapheme to Color Synesthesia" Grapheme Color Code + Grapheme Color Demo |