Linux Operating System

The Computer Science Department maintains some useful general help information for students new to using Linux, and about using Putty or SSH to connect to department Linux systems from Windows computers:

CSU Computer Science information is found here.

A useful Linux command reference card is found here.

Eclipse Environment

This semester CS160 will be using the Eclipse Integrated Development Environment (IDE) for developing Java code. Eclipse is favored as a premier tool in academia and industry. A standard installation of Eclipse is available on all CS Department Linux computers for use by CS160 students. As a default, it will be assumed that students use this version on CS Department Machines. Basics of how to use the Eclipse IDE productively will be covered somewhat in lecture and more extensively in course recitations. Lab machines are currently using the Juno version of Eclipse, which is version 4.2.

Eclipse documentation is found here.

Eclipse can also be downloaded for free and installed on most platforms. Eclipse is written entirely in Java, so it will operate properly on most any platforms that supports Java. This includes Linux, Solaris, Mac OS X and properly configured Windows platforms. It is assumed that many students will find it possible to install and use Eclipse on their own computers, and the instructor and GTAs will try to help informally. However, successful installation and use of tools such as Eclipse on your own machine demands some understanding of how to install and use new software on that platform, and ultimately it falls to the individual student to either succeed at such an effort or to use the resources already provided by the CS Department. The help that can be offered by the instructor and GTAs is by necessity limited.

If you decide to run Eclipse on your system, make sure you download and install the Java Platform (JDK) first from here, then download and install Eclipse from here. Select the version called Eclipse IDE for Java Developers. In both cases make sure you select the correct operating system.

Java Programming

For this course, you need Java, version 7. RamCT relies on a specific version of Java. You can get the most current information about installing this version of Java on Windows systems here. Oracle provides a great many useful online resources for working with Java, including the documentation referenced below. We will explain how to use this documentation in class and recitations.

Java documentation is found here.

Peer Instruction

Peer instruction sessions are held during lectures, generally on Fridays. The format will be described in detail at the time of each session, but it generally consists of each student answering questions individually and in a group. The premise is that groups perform better than individuals! We organize peer session by assigning students to groups.

Section 001 is found here, and Section 002 is found here.

iClicker Registration

Register your iClicker here by logging in with your EID and password. In the iClicker ID field, enter your remote ID and select the Register button. The remote ID is the number found on the back of your iClicker remote. If you cannot read the ID on your iClicker, there is a kiosk in the bookstore where you can retrieve it. Here is a list of iClickers that appear not to be registered. If your iClicker is on this list, please try to register again, then send me email:

Unregistered Remotes

iClicker ID
#31F29E5D Seth Kuttner
#3307DCE8 Spencer Flores
#35E46CBD Charlie Trejo

MyProgrammingLab

Students in the specified recitations (to be announced) are required to register and use MyProgrammingLab, a framework which is used for online activities and exercises in this course. Through the power of practice and immediate personalized feedback, MyProgrammingLab improves student performance. To access your MyProgrammingLab online account for the first time, you need to register and login. Whenever you want to use MyProgrammingLab after that, you just need to login.

To register, you will need a student access code and a course ID. The course ID is: COLO-12380-BMVJ-18. A short description of registering is found here. For the access code, if you purchase a new textbook, it will have an accompanying kit that contains an access code you can use to register. The SAMPLE format of the access code is like this: SIMPLE-FRILL-TONLE-WEIRS-CHOIR-FLEES NOTE: This is only a SAMPLE access code. You should enter your own access code which is different from the sample. However, the course ID is identical for all students. Also, make sure you choose your Login ID in MyProgrammingLab, in this format: csu (csu followed by your EID without space,dash,etc. If your Login at MyProgrammingLab doesn't have "csu" at the beginning, edit it here. Login and then click Edit Account Information.

License Distribution

Here is a list of students that need licenses. If there is a license next to your name, please use it to register. If you still need a license, or have one to donate, please send me email.

Name License
Bryan Reilly HMPLGC-GUESS-BRAYS-BURAN-DOBBY-UNRWA
Zhenlin Su HMPLGC-GUESS-BRAYS-BURAN-MERCY-TOUSE
Evelyn Ochoa HMPLGC-CLINK-THROE-CZZZZ-ABBOT-NONES
Erin Mindt HMPLGC-PRINK-BRAYS-BURAN-FACTO-SWORD
Aubrey Putnam HMPLGC-PATIL-BRAYS-BURAN-OASIS-CHARD
Tanner Zitek HMPLGC-DRILL-BRAYS-BURAN-LOBBY-BLASE
Dylan Drendel HMPLGC-JIDDA-BRAYS-BURAN-PATHS-WAXES
Jongsoon Kim HMPLGC-PATIL-BRAYS-BURAN-REPOT-JUTES
Alex Banner HMPLGC-BANJO-BRAYS-BURAN-HELOT-VIRES
Spencer Flores HMPLGC-SLUNK-BRAYS-BURAN-NADIR-JOKES
Xinran Xu HMPLGC-BLIDA-BRAYS-BURAN-CHAIR-LINES
Luke Vogt HMPLGC-NEUSS-BRAYS-BURAN-PATHS-GIBES
Franklin Roth HMPLGC-ASSAD-BRAYS-BURAN-JAUNT-MACES
Melinda Ryan HMPLGC-PATIL-BRAYS-BURAN-ASTIR-TRIES
Morgan Geyer HMPLGC-SLUNK-POPSY-CRUMB-GABBY-VIRES
Eduardo Parra HMPLGC-BEGAD-BRAYS-BURAN-OASIS-CANES
Jorden Ham HMPLGC-ACCAD-THROE-CZZZZ-RIGOT-CAKES
Eric Dowling HMPLGC-JAHID-BRAYS-BURAN-TRASH-NINES
Ruotao Qiu HMPLGC-QISHM-BRAYS-BURAN-HAUNT-WIPES
Austin Paswaters HMPLGC-QUIPU-BRAYS-BURAN-BEGUN-MINES
Kelsey Brisson HMPLGC-BLIDA-THROE-CZZZZ-MAINT-PSHAW
Alec Britt HMPLGC-TRAIL-POPSY-CRUMB-MIMIR-MUSES
Troy Harris HMPLGC-SUNUP-BRAYS-BURAN-SLANT-SITES
Isaiah Gabaldon HMPLGC-JAHID-BRAYS-BURAN-AFOOT-RITES
Colton Tapparo HMPLGC-NAIAD-BRAYS-BURAN-LENTO-WIVES
Weston Dowis HMPLGC-PPRIL-APEAK-SUNNA-HIGHS-TOUSE

Other useful tools...

- Questions to almost any java question you can think of can be found here.

- Stack Overflow is great for finding a variety of answers to your question from people with ranges of expertise levels, found here, or by adding "stackoverflow" to your Google search.

- w3schools is great for web-development related languages and resources, found here.

- Microsoft software can be downloaded by students for a reduced price through the Dream Spark program, found here.

- The chart we distributed in class containing ASCII codes is found here.

Discrete Math

A list of Logical Equivalences and Inference Rules is found here.

Ian Bertolacci's Lecture

Slides on object-oriented programming are here, and code as follows:

- IntegerList.java
- IntegerArrayList.java
- IntegerLinkedList.java
- IntegerStack.java
- TestIntegerList.java
- Node.java

Science Fiction

A reference to the science fiction story I mentioned in class is here, it's even older than I thought!