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 2021 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
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" Programs to solve computational problems and practice with fully parenthesized expressions. ExpressionsThing code + ExpressionsThing demo | ShapesThing code + ShapesThing demo
Lab5 "An Interpreter Featuring Loop Forever and Selection" Programs to recognize and respond to commands. Interpreter1 code | Interpreter2 code | Interpreter3 code | Random Dot demo | Input Dialog Box | Help Message | Error Message
Lab6 "Functions and Commands" Programs that deal with functions and commands. SurfaceAreaOfCube code + SurfaceAreaOfCube demo | Balloons code + Balloons demo AlternateBalloons code + AlternateBalloons demo |
Lab7 "String Thing" Programs to practice with strings. StringOps code + StringOps demo | StringThing code + StringThing demo |
Lab8 "Array Play" Programs to practice and play with arrays. Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + ReverseCopy lyrics + ReverseCopy demo
Lab9a "Array List Play" Programs to practice and play with array lists. Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + ReverseCopy lyrics + ReverseCopy demo
Lab10 "Establishing and Using Classes" Programs to practice establishing and using classes. Die code | Roller code + Roller demo
Lab11 "Modeling Objects with Classes" Programs that model peoples names, birthdays and other various information using classes. Person code | PersonSpecification code | PersonDemo1 code + PersonDemo1 demo | PersonDemo2 code + PersonDemo2 demo
Lab12 "Grapheme to Color Synesthesia" Program that makes use of an interpreter and two parallel arrays to simulate grapheme to color synesthesia. GraphemeToColorSynesthesia code + GraphemeToColorSynesthesia demo
Programming Challenge 1 "Microworld Warmup" Programs to create images in the Nonrepresentational Painting World (NPW) and sonic sequences the Modular Melody World (MMW). GreenT code + GreenT demo | MysterySong code + MysterySong demo | LocomotionListener code + LocomotionListener demo
Programming Challenge 2 "Micorworld Problem Solving" Programs to create images in the Nonrepresentational Painting World (NPW) and sonic sequences the Modular Melody World (MMW). KaniszaSquare code + KaniszaSquare demo | Dots code + Dots demo | MusicalScene code + MusicalScene demo
Programming Challenge 3 "Shapes World Problem Solving" Programs to solve problems in the Shapes World. WorkSpace code + WorkSpace demo | WhiteSpace code + WhiteSpace demo | YellowSpace code + YellowSpace demo | ShippingContainer code + ShippingContainer demo |
Programming Challenge 4 "Nonrepresentational Artistic Expressions" TextRectangles code + TextRectangles demo | AbstractGradient code + AbstractGradient demo | ColorfulAbstractGradient code + ColorfulAbstractGradient demo | HirstDots code + HirstDots demo | SimpleDots code + SimpleDots demo | Invention1 code + Invention1 demo | Invention2 code + Invention2 demo | Stella code + Stella demo |
Programming Challenge 5 "Three List Interpreters" TheNumberList code + TheNumberList demo | WordList code + WordList demo | WordList ArrayList code + WordList ArrayList demo
Programming Challenge 6 "Chomesthesia" Programs that combine the NPW and the MMW using both an Array and ArrayList. Chromesthesia code | Pitch code | Chromesthesia code + Pitch code | Chromesthesia code + Pitch code | Input Box Demo | Canvas Demo