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 2020 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!" Getting acquainted with the NPW and MMW. 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" A program involving arithmetic expressions and involving shapes from the NPW. ExpressionsThing code + ExpressionsThing demo | ShapesThing code + ShapesThing demo |
Lab5 "An Interpreter Featuring Loop Forever and Selection" A lab to write a sequence of three interpreters. Interpreter1 code + colorddot demo | Interpreter2 code + errormessage demo | Interpreter3 code + helpmenu demo + inputdialogbox demo |
Lab6 " Functions and Commands" A lab to write program that features functions and commands. SurfaceAreaOfCube code + SurfaceAreaOfCube demo | Balloons code + Balloons demo | AlternateBalloons code + AlternateBalloons demo | Lab7 "String Thing" A lab to get practice writing character string processing code. StringOps code + StringOps demo | StringThing code + StringThing demo | Lab8 "Array Play" A lab to write program that features functions and commands. Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + ReverseCopy SourceCode demo | ReverseCopy SongLyric + ReverseCopy ReverseSongLyric | Lab9a "Simple List Processing" A lab to write program to get acquainted with the basic concepts and mechanisms associated with ArrayList. Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + ReverseCopy SourceCode demo | ReverseCopy SongLyric + ReverseCopy ReverseSongLyric | Lab10 "Establishing and Using Classes" A lab to write program that models classes of objects and create/use computational objects. Die code + Roller code + Roller demo | Lab11 "Modeling Objects with Classes" A lab to go through the process of writing a class to model a person. PersonSpecification code + Person code + PersonDemo1 code + PersonDemo2 code + PersonDemo1 Demo + PersonDemo2 Demo | Lab12 "Grapheme to Color Synthesia" A lab to write program that uses two parallel arrays featured in a grapheme to color mapping. Grapheme code + Grapheme demo | Lab13 "Chromesthesia" A lab to using both NPW and MMW to simulate the experience of chromesthete. Chromesthesia code + Pitch code | InputBox + Canvas |Programming Challenge 1: "Microworld Warmup" Programs to create images in the Nonrepresentational Painting World (NPW) and sonic sequences the Modular Melody World (MMW). RedCross code + RedCross demo | MysterySong code + MysterySong demo | MinuetFigureListener code + MinuetFigureListener demo |
Programming Challenge 2: "Microworld Problem Solving" Programs to create images in the Nonrepresentational Painting World (NPW) and sonic sequences the Modular Melody World (MMW). KanizsaSquare code + KanizsaSquare demo | Dots code + Dots demo | AfterJSB code + AfterJSB demo |
Programming Challenge 3: "Shapes World Problem Solving" Programs using shapes, but not painter, funtionality in the Nonrepresentational Painting World (NPW). WorkArea code + WorkArea demo | WhiteArea code + WhiteArea demo | GreySpace code + GreySpace demo | ShippingContainer code + ShippingContainer demo |
Programming Challenge 4: "Nonrepresentational Artistic Expressions" Several programs written within the nonrepresentational Painting World (NPW). TextRectangles code + TextRectangles demo | Number1 code + Number1 demo | Number2 code + Number2 demo | Number3 code + Number3 demo | Number4 code + Number4 demo | Invention1 code + Invention1 demo | Invention2 code + Invention2 demo | Stella code + Stella demo |
Programming Challenge 5: "Three List Interpreters" Programs to process Arrays and ArrayLists. NumberList code + NumberList demo | WordList code + WordList demo | WordList code + WordList demo |
Programming Challenge 6: "The Inflatable Household" Programs to practice class modeling, programming techniques, and constructions like ArrayLists BalloonPerson code + BalloonPerson tester + BalloonPerson demo | BalloonFamily code + BalloonFamily tester + BalloonFamily demo |