Bryan'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 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.

Course Work

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

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

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 first set of programming examples and exercises designed to establish a framework for learning to program. ExpressionsThing code + ExpressionsThing demo | ShapesThing code + ShapesThing demo

Lab5 "An Interpreter Featuring Loop Forever and Selection" A first set of programming examples and exercises designed to establish a framework for learning to program. Interpreter1 code + Interpreter Error Message | Interpreter2 code + Interpreter Dot | Interpreter3 code + InterpreterInputBox + Interpreter Help Box

Lab6 "Functions and Commands" A first set of programming examples and exercises designed to establish a framework for learning to program. SurfaceAreaOfCube code + SurfaceAreaOfCube demo | Balloons code + Balloons demo | AlternateBalloons code + AlternateBalloons 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). KaniszaSquare code + KaniszaSquare demo | Dots code + Dots demo | MusicalScene code + MusicalScene demo

Programming Challenge 3: "Shapes World Problem Solving" Programs to do calculations in the shapes world. WorkSpace code + WorkSpace demo | WhiteSpace code + WhiteSpace demo | YellowSpace code + YellowSpace demo | ShippingContainer code + ShippingContainer demo

Lab7 "String Thing" A first set of programming examples and exercises designed to establish a framework for learning to program. StringOps code + StringOps demo | StringThing code + StringThing demo

Lab8 "Array Play" A first set of programming examples and exercises designed to establish a framework for learning to program. Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + Lyric File |

Programming Challenge 4: "Nonrepresentational Artistic Expressions" Programs to do calculations in the npw world. TextRectangles code + TextRectangles 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 |

Lab9a "Simple List Processing" A first set of programming examples and exercises designed to establish a framework for learning to program. Primes code + Primes demo | Streets code + Streets demo | ReverseCopy code + Lyric File |

Lab10 "Establishing and Using Classes" A first set of programming examples and exercises designed to establish a framework for learning to program. Die code | Roller code + Roller demo |

Programming Challenge 5: "Three List Interpreters" Programs to do calculations in the Array and ArrayList world. NumberList code + NumberList demo | arrayplay/WordList code + arrayplay/WordList demo | arraylistplay/WordList code + arraylistplay/WordList demo |

Lab11 "Modeling Objects with Classes" A first set of programming examples and exercises designed to establish a framework for learning to program. PersonSpecification code | Person code | PersonDemo1 code + PersonDemo1 demo | PersonDemo2 code + PersonDemo2 demo |

Lab12 "Grapheme to Color Synesthesia" A first set of programming examples and exercises designed to establish a framework for learning to program. GraphemeToColorSynesthesia code + GraphemeToColorSynesthesiaDemo demo |

Lab13 "Chromesthesia" A first set of programming examples and exercises designed to establish a framework for learning to program. Chromesthesia code + Pitch code + Chromesthesia Textbox + Chromesthesia 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