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 2018 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!" 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" Programming expressions and arithmatics.
|ExpressionsThing code + ExpressionsThing demo | ShapesThing code + ShapesThing demo |
Lab5 "An Interpreter Featuring Loop Forever and Selection" Programs for Interpreters
|Interpreter1 code + Interpreter2 code + Interpreter3 code | InterpretersDot demo + InterpretersInputBox demo + InterpretersErrorBox demo + InterpretersHelpMenu demo |
Lab6 "Functions and Commands" Programs for Functions and Commands
|SurfaceAreaOfCube code + SurfaceAreaOfCube demo | Balloons code + Balloons demo| AlternateBalloons code + AlternateBalloons demo |
Lab7 "String Thing" Programs for understanding String Method
|StringOps code + StringOps demo | StringThing code + StringThing demo |
Lab8 "Array Play" Programs for understanding Arrays[]
|Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + Lyrics + Reversed Demo |
Lab9 "Simple List Processing" Programs for understanding Arrays[] and ArrayList<>
|Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + Lyrics + Reversed Demo |
Lab10 "Establishing and Using Classes" Creating a class and programs for testing it
|Die code | Roller code + Roller demo |
Lab11 "Modeling Objects with Classes" Classes and programs used to model people
|Person code | PersonSpecification code | PersonDemo1 code + PersonDemo1 demo | PersonDemo2 code + PersonDemo2 demo |
Lab12 "Grapheme to Color Synesthesia" Using parallel arrays, interpreters, and strings to add some colors to letters
|GraphemetoColorSynesthesia code + GraphemetoColorSynesthesia demo |
Programming Assignment 1: Microworld Problem Solving" Programs to create images in the Nonrepresentational Painting World (NPR) and sonic sequences the Modular Melody World (MMW).
|OrangePlus code + OrangePlus demo | PumpItUp code + PumpItUp demo | Dots code + Dots demo | TwoFigureMinuetThing code + TwoFigureMinuetThing demo | MinuetFigureListener code + MinuetFigureListener demo | AfterJSB code + AFterJSB demo |
Programming Assignment 2: Shapes World Problem Solving" Programs to make use of problem decomposition and imaginative construction.
|BlackArea code + BlackArea demo | WhiteArea code + WhiteArea demo | RedArea code + RedArea demo | TheRoom code + TheRoom demo |
Programming Assignment 3: Nonrepresentational Artistic Expressions" Challenge to help practice creating and using object, program modification, using selection and repetition constructs, and the notion of creativity from constraint.
|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 Assignment 4: Three List Interpreters" Challenge processing Array[] and ArrayList<>, and writing interpreters.
|NumberList[] code + NumberList[] demo | WordList[] code + WordList[] demo | WordList<> code + WordList<> demo |
Programming Assignment 5: Lab13 "Chromesthesia" Using parallel arrays, interpreters, and strings to add some colors to notes
|Chromesthesia code + Pitch code + Chromesthesia demo + Chromesthesia inputBox demo |