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

Course Labs

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" Programs involving arithmetic expressions and expressions ExpressionsThing code + ExpressionsThing demo | ShapesThing code + ShapesThing demo |

Lab5 "An Interpreter Featuring Loop Forever and Selection" Write a sequence of three interpreters Interpreter1 code | Interpreter2 code | Interpreters3 code + Random Color demo | InputDialogBox demo | Error Message Dialog Box demo + Help Message Dialog Box demo |

Lab6 "Functions and Commands" Programs involving functions and commands SurfaceAreaOfCube code + SurfaceAreaOfCube Demo | Balloons code + Balloons Demo | AlternateBalloons code + AlternateBalloons Demo |

Lab7 "String Thing" Programs dealing with some string processing StringOps code + StringOps Demo | StringThing code + StringThing Demo |

Lab8 "Array Play" Basic Array processing and Processing and illustrating file IO Primes code + Primes Demo | Streets code + Streets Demo | Non-reversed lyrics + ReverseCopy Code + Reversed lyrics |

Lab9 "Simple List Processing" Basic Array processing and Processing and illustrating file IO Primes code + Primes Demo | Streets code + Streets Demo | Non-reversed lyrics + ReverseCopy Code + Reversed lyrics |

Lab10 "Establishing and Using Classes" Program that Creates and uses a Die class Die Class code + Roller code + Roller Demo |

Lab11 "Modeling objects with classes" Creating Classes to model a person while using an interface Person Class code + Person Interface code | PersonDemo1 Demo | PersonDemo2 code | PersonDemo2 Demo |

Lab12 "Grapheme to Color Synesthesia" Program that simulates grapheme to color synesthesia. GraphemeToColorSynesthesia code + GraphemeToColorSynesthesia Demo |

Lab13 "Chromesthesia" Program to simulate the experience of a chromesthete. Chromesthesia0 code + Pitch0 code | Chromesthesia1 code + Pitch1 code | Chromesthesia2 code + Pitch2 code | Input Box Demo + Chromesthesia Box Demo + Error Box Demo

Course Programming Assignments

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:" Enabling CS1 Work Site" Enabling my CS1 Work Site.

Programming Assignment 3:" Microworld Problem Solving" Programs that use shapes to calculate measurements. BlackArea code + Black Area demo | WhiteArea code + WhiteArea demo | RedArea code + RedArea demo |

Programming Assignment 4:" Nonreprentational Artistic Expressions" Programs to review the Nonrepresentational Painting World (NPW) functionality. TextRectangles code + TextRectangles demo | Number1 code + Number1 demo | Number2 code + Number2 demo | Number3 code + Number3 demo | Number4 code + Number4 demo | Invention2 code + Invention2 demo | Stella code + Stella demo |

Programming Assignment 5:" Three List Interpreters" Three Java programs that pertain to the storage and manipulation of lists. NumberList code + NumberList demo | WordList code + Wordlist demo | Number3 code + Number3 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