CPE 101 Winter 2014

This is the official page for CPE 101 Winter 2014.


Class Time: MW 6 - 9

Room: 20-129, 14-303

Office Hours: 14-240 -- T 6 - 9



Reference Materials

Getting Help

There are many resources for you to get help with any Computer Science related thing.

The first resource is my office hours (listed above). I will be glad to help you with all your 101 related questions. And (as long as there is no line) any other non-101 questions.

Your second resource (and one of the best options throughout your computer science career at Cal Poly) is our Tutoring Center. The Computer Science department has worked very hard to build a great staff of tutors to help you with all of your 1st and 2nd year classes. They offer free tutoring in 14-302 Sun-Thurs 7-9pm. No registration or paperwork is necessary, just go there and get help. Here is their site again, because it is an amazing resource:

Tutoring Center Resource

Professor Mammen has put together a useful collection of How-To Documents

Here are some that you may find useful:

SSH Clients

Getting into the school machine from home requires an SSH client. (Only on Windows. Linux and Mac users can use the 'ssh' command.) Although I have not used it, I have heard great things about a client hosted on Professor Mammen's site. I have personally used Putty and find it pretty good.

UNIX Tutorials

Starting to learn UNIX/Linux can be a daunting task. There are many things to learn and it may feel very different from what you are used to. There are many tutorials on the internet to help you learn UNIX. Here are two simple ones:


Being familiar with a powerful text editor can make a surprising difference. In the programming world, there are two text editors that have stayed on the top for over 30 years. Vi (Vim) and Emacs are two very powerful terminal-based text editors (although both have GUI versions). The arguments about which one is better have been going on for decades and will never be resolved. In truth, they are both amazing editors and will greatly increase your productivity once you learn how to use them. I personally use Vim, and can help you learn if you are interested. There are many CS faculty who use Emacs and can help you. There are also many online resources for each:


Checkit is a testing tool developed by some professors at Cal Poly.

We will be extensively using checkit this quarter.

You can find more information about checkit on Professor Keen's site