Rianne'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 Spring 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.

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

Lab 3: "Establishing a CS1 Work Site" Setting up a website to house programs, demos, and a few miscellaneous links.

Lab 4: "Expressions and Shapes World Problem Solving"
ExpressionsThing code + ExpressionsThing demo | ShapesThing code + ShapesThing demo

Lab 5: "An Interpreter Featuring Loop Forever and Selection"
Interpreter1 code + Interpreter2 code + Interpreter3 code | Dot demo + Dialog demo + Error message demo + Help message demo |

Lab 6: "Functions and Commands"
SurfaceAreaofCube code + SurfaceAreaofCube demo | 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 + Original song lyrics + Reversed song lyrics

Lab 9a: "Simple List Processing"
Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + Original song lyrics + Reversed song lyrics

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

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

Lab 11: "Modeling Objects with Classes"
Person code | PersonSpecification code | Person1 code + Person1 demo | Person2 code + Person2 demo

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

Lab 13: "Chromesthesia"
Chromesthesia code + Pitch code + Chromesthesia canvas demo + Input box demo

Programming Assignments

Programming Assignment 1: "Microworld Problem Solving" Programs to create images in the Nonrepresentational Painting World (NPW) and sonic sequences the Modular Melody World (MMW).
RedX code + RedX demo |

Programming Assignment 2: "Enabeling Your Work Website" If you can read this, it's working.

Programming Assignment 3: "Shapes World Problem Solving" Four separate Java programs in the context of NPW.

Programming Assignment 4: "Nonrepresentational Artistic Expressions" Several separate Java programs in the context of NPW.

Programming Assignment 5: "Three List Interpreters" Three separate Java programs, all pertaining to the storage and manipulation of lists.

Programming Assignment 6: "The Inflatable Household" Modeling two classes, balloon people and balloon families.

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