Date: Tue, 10 Dec 1996 16:50:17 GMT Server: NCSA/1.4.2 Content-type: text/html Last-modified: Sat, 05 Oct 1996 00:25:40 GMT Content-length: 11228 CSE 142: Computing at Home

CSE/ENGR 142:
Computing at Home or Work

If you own a personal computer, or have access to a computer at home, work, or elsewhere on campus, you may be wondering whether you can use it for your 142 assignments, instead of the Sieg 323 lab. The answer is yes, and many students have done so, but quite honestly, it is not completely easy. It will certainly help if you are already somewhat adept with computers. We have tried to organize the course so we will not stand in the way of this, but you will be largely on your own in leaping a number of hurdles. The added convenience of being able to work at home may compensate for this.

If you plan to use a computer a work, be sure that your employer knows and approves. Some employers have a policy against the use of company equipment or company time for personal use, but may make an exception for education.

In order to be able to work outside the Sieg 323 lab, you need to:

  1. stay connected,
  2. get a compiler, editor, linker, and debugger,
  3. learn how to transfer files, and
  4. learn about certain annoying differences between your computer and ours, e.g., different options regarding long ints. (Yes, even Mac users.)

Stay connected:

No matter where you compute, it is required that you keep in touch (a) with what is happening in class, and (b) with announcements made through the World Wide Web class messages and electronic mail.

For (a), come to lecture and quiz section. If you have to miss one or two, check the online lecture notes and ask a friend for a synopsis.

For (b), various approaches are possible:

If you have a computer and appropriate high-speed modem at home. You can get an Internet "IP" connection and dial into UW. Then you could use Netscape to access to the class Web, whose "URL" is: http://www.cs.washington.edu/education/courses/142

Get a compiler, editor, linker and debugger:

For the bulk of the course work, you will need an ANSI C compiler, plus associated editor, linker, and debugger. Usually all these components will be bundled in one package. The Microsoft Visual C++ program is used in Sieg 323. If you have a PC large enough, MSVC is strongly recommended. However, it takes up quite a bit of disk space and runs best with a fast CPU. MSVC is available at the University Bookstore for about $55.00 plus tax. (We tried but were unable to arrange an even better discount for students of this course). The Borland C++ compiler is another popular tool for PCs, but it will not be supported by course staff to the extent that MSVC will be.

For Macintosh, "Think C for Macintosh", sold by Symantec, includes all the needed pieces. It is available at the University Book Store with a student price of about $90. If you are planning to continue in CSE 143, you will also want a C++ compiler. "Symantec C++ for Macintosh" (no, it is not called Think C++) includes Think C, as well as C++ and associated tools. The University Book Store student price is about $130. These are the products we have installed in the Sieg 324 lab and are probably a safe bet for home use. (Version 8 is the latest version, for Power-Mac-only. We are using version 7 in the lab, and do not yet know whether version 8 will work smoothly with version 7.) Many people think Metrowerks "Codewarrior" is an even better system, although switching its files to/from the Symantec systems in the labs is not fully automatic.

Whatever you buy, our strongly held opinion is that a first-rate symbolic debugger will be extremely valuable for this class and any subsequent work you do. For the later graphics assignments you will find it will be impossible to use DOS-based products and difficult or impossible to use older versions of the Borland and Microsoft compilers (Borland prior to version 4.0 and Microsoft prior to version 1.52).

(To date, students have not had much luck with Symantec's C++ product for Windows. We'd suggest you avoid it, unless you already own it.)

Before buying any computer product, find out about compatibility with your existing system. When you go into the store, know at least your computer's CPU type, speed, memory size, available hard drive space, and operating system. Some software (including MSVC) requires a CD-ROM for installation. Read the package label carefully. And caveat emptor.

You might also be able to use C compilers on the campus Unix machines, but we think the lack of suitable graphical user interfaces and debuggers will be a huge obstacle. In particular, they will be of limited use on the later, graphical, homeworks.

If you do not want to buy a compiler, you can write and edit your programs on almost any computer with a simple text editor or word processor (saving your file as "plain text"). This may let you do the bulk of your typing at home, then bring the file to the lab for testing. It may take a little experimentation to figure out how to do indentation, tabbing, and/or line-breaking appropriately. In general tabs are to be avoided because of the different ways in which they are displayed in different contexts, in particular what you see may be different from what is displayed when you print the output you have turned in.

Transfer files:

For many of the assignments we will provide files to you (sample code, a skeleton of the solution, test data, etc.) and expect you to provide files to us with your solutions. Outgoing file transfer options are about the same as above: bring a disk to the lab, or use Netscape, or a comparable browser. To turn in files, you can bring a disk to the lab or use Netscape. Note that if you have an IBM-compatible, the file transfer issues are complicated slightly by the fact that IBMs and Macintoshes use different file formats. The lab Macintoshes have "Apple File Exchange" software installed, so they can read and write IBM format 3.5" floppies (but occasional troubles still arise).

Mac file transfer:

See Downloading Macintosh Binaries for more information about downloading Macintosh files without visiting the lab.

Summary:

In short, it is be possible to work outside of the Sieg 323 Lab. We were reasonably careful in setting up the course so we would not preclude that possibility. But, you should expect a few headaches, and unfortunately it may be difficult to find help. We certainly do not know everything about every combination of hardware and software! In light of this, we strongly recommend that you do the first assignment, at least, in our lab, so you have a graceful fallback "just in case," and always allow yourself ample time for final testing, debugging, and electronic turn-in, in case bugs or incompatibilities show up at that stage.


Comments to: cse142-webmaster@cs.washington.edu (Last Update: )