Kevin Ciosek'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

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

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

Lab4 "ExpressionThing and ShapesThing" To make a program that shows various expressions and a program that calculates the area, perimeter, and diagional of a square. ExpressionsThing code + ExpressionsThing demo | ShapesThing code + ShapesThing demo

Lab5 "An Interpreter Featuring Loop Forever and Selection" Programs that paint different colored circles. Interpreter1 code| Interpreter2 code | Interpreter3 code | Interpreter demo1 | Interpreter demo2 | Interpreter demo3 | Interpreter demo4

Assignment 4: "Nonrepresentational Artistic Expressions" Programs to create images in the Nonrepresentational Painting World (NPW) and sonic sequences the Modular Melody World (MMW). TextRectangles Code + TextRectangles demo | CircleOfSquares code + CircleOfSquares demo | HirstSquares code + HirstSquares demo | HirstDots code + HirstDots demo | SimpleDots code + SimpleDots demo | Invention1 code + Invention1 demo | Invention2 code + Invention2 demo | Stella code + Stella demo

Lab 6: "Functions and Commands" Programs to create images of balloons. SurfaceAreaOfCube Code + SurfaceAreaOfCube Demo | Balloons code + Balloons demo | AlternateBalloons code + AlternateBalloons demo |

Assignment 5: "Three List Interpreters" Programs that use array lists to display words and number lists using arrays. NumberList code + NumberList demo | arrayplay WordList code + arrayplay WordList demo | arraylistplay WordList code + arraylistplay WordList demo

Lab 7: "String Thing" Programs that use strings. StringOps Code + StringOps demo | StringThing code + StringThing demo

Lab 8: "Array Play" Programs that use arrays to display different things. Primes Code(arrayplay) + Primes demo(arrayplay) | Streets code(arrayplay) + Streets demo(arrayplay) | ReverseCopy code(arrayplay) + ReverseCopy demo(arrayplay)

Lab 9a: "Simple List Processing" Programs that use arrays to display different things. Primes Code(arraylistplay) + Primes demo(arraylistplay) | Streets code(arraylistplay) + Streets demo(arraylistplay) | ReverseCopy code(arraylistplay) + ReverseCopy demo(arraylistplay)

Lab 9b: "ArrayPlay" Programs that use array lists to display names. ArrayListProcessing Code + ArrayListProcessing demo | StreamArrayListProcessing code + StreamArrayListProcessing demo |

Lab 10: "Establishing and Using Classes" Programs that use a class(die) to roll a die of any amount of sides any amout of times. Die Code | Roller code + Roller demo |

Lab 11: "Modeling Objects with Classes" Programs that use a class(person) to display people's name, their date of birth, and if they are a boomer or not. Person code | PersonSpecification code | PersonDemo1 code + PersonDemo1 demo | PersonDemo2 code + PersonDemo2 demo

Lab 12: "Grapheme to Color Synesthesia" Program that lets you give your imput to what you want displayed on the screen and prints it in random colors. GraphemeToColorSynesthesia code + GraphemeToColorSynesthesia demo

Lab 13/Assignment 6: "Chromesthesia" Programs that use a class(person) to display people's name, their date of birth, and if they are a boomer or not. Chromesthesia0 code | Pitch0 code | Chromesthesia0 demo | Chromesthesia1 code | Pitch1 code | Chromesthesia1 demo | Chromesthesia2 code | Pitch2 code | Chromesthesia2 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