Michelle'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

Lab 1 "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

Lab 2 "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

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

Lab 4 "Expressions and Shapes World Problem Solving" Programs to solve arithemetic expressions and simple geometrical problems by the use of basic shapes. ExpressionsThing code + ExpressionsThing demo | ShapesThing code + ShapesThing demo |

Lab 5 "An Interpreter Featuring Loop Forever and Selection" Programs to an interpreter that recognizes and responds to commands. Interpreter1 code | Interpreter2 code | Interpreter3 code + Random Output Demo + Input Dialog Box + Help Output Message Demo + Error Output Demo |

Programming Assignment 3: "Shapes World Problem Solving" programs will make use of the shapes functionality of the NPW world without the use of arithmetic operators. WorkArea code + WorkArea demo | WhiteArea code + WhiteArea demo | YellowSpace code + YellowSpace demo | ShippingContainer code + ShippingContainer demo |

Lab 6 "Functions and Commands" Balloons code + Balloons demo | AlternateBalloons code + AlternateBalloons demo |

Lab 7 "String Thing" StringOps code + StringOps demo | StringThing code + StringThing demo |

Lab 8 "Array Play" Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + Lyrics + Lyrics Reversed |

Lab 9a "Simple List Processing" Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + Lyrics + Lyrics Reversed |

Lab 9b "List Processing with Streams" ArrayListProcessing code + ArrayListProcessing demo | StreamArrayListProcessing code + StreamArrayListProcessing demo |

Programming Assignment 4: "Nonrepresentational Artistic Expressions" TextRectangles code + TextRectangles demo | CircleOfSquares code + CircleOfSquares demo | HirstSquares code + HirstSquares demo | HirstDots code + HirstDots demo | SimpleDots code + SimpleDots red demo + SimpleDots green demo + SimpleDots blue demo | Invention1 code + Invention1 demo | Invention2 code + Invetion2 demo 1 + Invetion2 demo 2 | Stella code + Stella demo 1 + Stella demo 2 |

Lab 10 "Establishing and Using Classes" Die code | Roller code + Roller demo |

Programming Assignment 5: "Three List Interpreters" NumberList code + NumberList demo | WordList code + WordList demo | WordList code + WordList demo |

Lab 11 "Modeling Objects with Classes" Person code | PersonSpecification code | PersonDemo1 code + PersonDemo1 demo | PersonDemo2 code + PersonDemo2 demo |

Lab 12 "Grapheme to Color Synesthesia" GraphemeToColorSynesthesia code + GraphemeToColorSynesthesia demo |

Programming Assignment 6: "Chromesthesia" Chromesthesia code| Pitch code | Input Box + Canvas demo |

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