Academic and Research Computing

Academic and Research Computing

ARC Short Courses

ARC offers non-credit (no grades) short courses on ARC computing services to all members of the Rensselaer community. Members of the ARC staff who can most effectively help you accomplish your computing goals teach these courses.

Courses are offered several times a year, usually at the beginning of the fall and spring semesters. Check below for the course schedule. (Handouts are also available for most of the courses.)

There is no charge for these courses, but you must register. Course registration is now done on-line. Before you register, make sure you have the necessary prerequisites for the course. They are listed along with the course descriptions below.

If you have any questions, you can contact the VCC Help Desk at extension 7777 or send e-mail to consult@rpi.edu.

Registration Information
Schedule of Courses and Course Descriptions

Registration Information

All registration is on-line.

  • On-line Registration
  • IF YOU WILL NOT ATTEND: If you change your mind about taking a class for which you have registered, or if you will not be able to attend, please CANCEL by sending e-mail to arc-courses@rpi.edu. This will allow someone else to take your spot.
  • IF THE CLASS IS FULL, OR IF YOU ARE ON A WAITING LIST: If you cannot register for a class you want to take, please continue checking the On-line Registration page to see if a spot opens up due to a cancellation. Most cancellations occur during the last 24 hours before the class. If you do not get into the class you wanted, watch for the next occurrence of the course to be announced or contact the instructor to get the handouts or to arrange for individual instruction.
RCS userID: If you don't already have one, before class, you must pick up your RCS userID which is available only to members of the Rensselaer community (students, faculty, or staff). This userID enables you to use any of the several hundred networked PCs and workstations on campus, connect to RCS from a networked PC, dial-in remotely, and print your work. To obtain your userID, bring your Rensselaer I.D. card to the Help Desk in the VCC.

Courses

No courses are currently scheduled. Please check back.

See Handouts if you are interesting in learning the material immediately.

Course Descriptions

Introduction to Maple

This course is intended primarily for students who are beginning Math 1 or another course that makes heavy use of Maple.

In this course, students will follow the instructor in working through the RPI Maple tutorial using their laptop computer. Students will learn the syntax of Maple commands and how to use a Maple worksheet. Additional staff members skilled in Maple will be available to help students during the class and answer questions.

You must bring your laptop with Maple installed on it to the session. Maple is pre-installed on laptops acquired through the Mobile Computing Program. A student edition of Maple can be purchased at the Rensselaer Campus Computer Store.

Introduction to UNIX

This course provides an introduction to the UNIX operating system. It is taught on RCS, but most of the material also applies to Linux.

It introduces several common UNIX commands, some of which have to do with managing and printing files. You will also learn about output redirection, pipes, filename wildcards, shell variables, and writing bash functions. The course will also explain the directory structure and path names, including some commands for manipulating directories and for controlling directory permissions.

Brief exercises are interspersed between topics for hands-on practice.

This course provides a basis for other short courses, including emacs and vi. 

Text Editors: A text editor is used to create, edit, store, retrieve, and view files. You might need a text editor when you are writing a program or a paper or editing a mail message. There are several text editors on RCS including nedit, emacs, and vi. Which one you use if up to you -- or you could use all three at different times. ACS offers courses on emacs and vi. (nedit is so simple that no instruction is needed; however, unlike vi and emacs, it cannot be used remotely.)

Introduction to vi

This course introduces the vi text editor, a file editor available on all UNIX systems. On RCS UNIX workstations, vi is a full-screen editor. Vi starts up quickly and has adequate functionality for many text editing tasks, such as composing source code and mail messages. There are no menus; you use keystrokes to enter commands.

Prerequisites: Familiarity with RCS and UNIX
Introduction to emacs

This course introduces the emacs text editor, a standard file editor on RCS and many other UNIX systems. On RCS UNIX workstations, emacs provides a graphical interface with menus. Emacs is slower to start up, but has more functionality than vi, including special features to simplify writing source code in several programming languages, including C and TeX/LaTeX.

Prerequisites: Familiarity with RCS and UNIX

Parallel Programming with MPI

This course introduces parallel processing using the Message Passing Interface (MPI) subroutine library. The course assumes previous programming experience in Fortran or C (the example and exercise used in the course are written in Fortran), but no prior experience in using message passing parallelism. It is intended primarily for people who currently use -- or plan to use -- our Linux cluster for numerically-intensive computing projects.

Prerequisites: Previous programming experience in Fortran or C and familiarity with UNIX and a text editor on RCS

Getting Started with LaTeX

If you are writing a thesis, a book, an article for a technical journal, or just a long document containing a lot of equations, a bibliography, figures and tables, or cross references, consider using LaTeX.

LaTeX is a document preparation system based on the TeX language, which was designed especially for formatting mathematical and scientific text. LaTeX is not a WYSIWYG program like Word; rather it uses text markup that looks similar to HTML. Although you may consider this a disadvantage, consider that LaTeX handles long, complex documents with ease, does not crash, never corrupts your files, is not susceptible to viruses, is available for just about any computer platform, and produces output of the highest quality (particularly equations).

And, if you are writing a thesis, there is a local "thesis" template that meets the requirements of the Rensselaer Graduate School.

LaTeX is used world-wide on PCs, Macs, Unix, and Linux. Because the language is the same on all platforms, what you learn will apply on whatever comput ing system you use. This short course can only get you started, but the foundation should enable you to continue building your knowledge of LaTeX.

Introduction to Shell Programming

A shell script is a program written using Unix commands and shell programming constructs. Shell scripts can be used to automate repetitive command sequences and to perform actions on multiple files. Introduction to Shell Programming covers the following topics, illustrated by simple Bourne shell examples.

* what is shell programming?
* review of basic Unix
* pipelines of commands
* about shell scripts
* some new commands
* variables
* parameters and shift
* command substitution
* cut
* if-then-else-fi
* for-in-do-done
* sed
* gotchas 
There will be time for you to practice what you have learned by trying several exercises.

Prerequisites: In order to understand this course, you must already know enough about Unix to be comfortable using it interactively, and you must already know how to use a Unix editor such as vi, emacs, or nedit. THIS COURSE IS NOT A SUBSTITUTE FOR INTRODUCTION TO UNIX. If you lack the prerequisites, you should wait until they are offered again and take them first.

Linux System Administration

This course surveys topics in administering a Red Hat Linux system, introducing topics such as file systems, installing software, updates, security, network services, and backups. We will touch on remote administration and clusters. Students are expected to be familiar with Unix commands and concepts. Much of the course material will be applicable to different Linux distributions.

If you have suggestions for a particular topic you would like to see covered in this class, please send e-mail to the instructor, Lindsay Todd.

Prerequisites: Familiarity with UNIX

Advanced vi

This course covers window positioning; some additional cursor positioning commands; searching for a pattern; yank, put, and buffers; and some commands for repetitive and global changes. It assumes that the student has taken the short course "Introduction to Vi" and then used the editor for long enough to be comfortable with the concepts and commands discussed in that course. In Advanced vi, the students experiment with new commands as they are described by the instructor, and then practice using them on an exercise while the instructor circulates to provide individual help. The student takes away notes about the new features, and an expanded block diagram illustrating the editor's modes.

Prerequisites: "Introduction to vi" or equivalent

Handouts:

If you are unable to attend a course, you can click on the links in the left-hand column below to gain access to the course materials, or click on the instructor's name in the right-hand column to send email to request an appointment for individual help.

Course  Instructor 
Introduction to UNIX  Mike Kupferschmid
Introduction to vi
Advanced vi
 
Mike Kupferschmid
Introduction to emacs  Harriet Borton
Parallel Programming with MPI  Mike Kupferschmid
Getting Started with LaTeX  Harriet Borton
Intro to Shell Programming  Mike Kupferschmid
Linux System Administration  Lindsay Todd