COURSES INDEX PAGE
To search all Rowan pages reachable from this page,
enter one or more keywords into the box below and click ``Search....''
Note on Add/Drop period
The Add/Drop period ends the evening of Tuesday, September 8, 2009.
I require that
anybody showing up for the first time in any of my classes on
Thursday, September 10, 2009, be up-to-date with respect to readings,
announcements, and other assignments.
In general,
a student adding a class is responsible for contacting the instructor
to get a syllabus and find out how to catch up.
All readings, announcements, and assignments are in my Web pages,
which any responsible student can find easily.
Students found unprepared on Thursday, September 10, 2009,
will be charged a half day of attendance, as explained in
the course syllabus.
This page contains links to the home pages for the courses I currently teach
or have taught.
- CS 01.104 Introduction to Scientific Programming
- This course emphasizes algorithmic solutions of problems. The syntax
of the programming language is also studied, as well as the writing of
structured code. Proficiency equivalent to Intermediate Algebra (MATH
01.121) is expected.
Fall 2009 home page
- CS 04.390 Operating Systems
- (Prerequisites: CS 06.205 Computer Organization and
CS 04.222 Data Structures & Algorithms)
The course concentrates on the design and functions of the
operating systems of multiuser computers. Its topics include
time sharing methods of memory allocation and protection,
files, CPU scheduling, input-output management, interrupt
handling, deadlocking and recovery and design principles. The
course discusses one or more operating systems for small
computers, such as UNIX.
Fall 2009 home page
- INTR 01.265 Computers and Society non-WI
- (Prerequisites: COMP 01.112 College Composition II and
CMS 04.205 Public Speaking)
This interdisciplinary course focuses upon the
effects of computer systems on individuals and institutions:
the social, political, philosophical, constitutional, economic,
ethical, and legal issues involved.
Fall 2009 home page
- CS 04.391 Concurrent Programming
- (Prerequisites: CS 04.390 Operating Systems)
Introduces the motivation for and fundamental concepts of concurrent
programming.
Topics include processes, threads, context switching, atomic
instructions/actions, shared data, race conditions, critical sections,
mutual exclusion, synchronization, locks, barriers, semaphores, monitors,
shared-memory multiprocessors, and an
overview of distributed programming (distributed-memory multicomputers,
interprocess communication,
message passing, remote procedure call, rendezvous).
The course includes developing concurrent programming
skills by using a language that supports the multithreaded paradigm.
Spring 2010 home page
- CS 01.102 Introduction to Programming
- This course acquaints students with the logical structure of a computer,
the algorithmic formulation of problems, and a modern high-level
programming language. Extensive programming experience is included in
the course. Proficiency equivalent to Intermediate Algebra (MATH 01.121)
is expected for this course.
Spring 2009 home page
- CS 01.200 Computing Environments
- (Prerequisites:
CS 01.100 or equivalent
or have passed the Rowan Computer Competency Exam)
Students will be exposed to a variety of computing environments. The
course will include extensive hands-on use of a variety of software
applications. Topics covered will include user tools, user programming
techniques, application packages, and networking communications.
Students will gain an understanding of the principles of computing
which will enable them to adapt to future technological developments. A
solid and fundamental understanding of computers and current operating
systems, word processing and spreadsheet software are essential to this
course.
Spring 2008 home page
- CS 04.103 Computer Science and Programming
- This course emphasizes programming methodology, algorithms,
and simple data structures. A programming language rich enough
to allow easy implementation of data structures
is studied. Prior programming experience in any programming
language is expected for this course.
Spring 2007 home page
- CS 04.113 Introduction to Object-Oriented Programming
- (Prerequisites:
formal and declared status as a Computer Science major or minor
or permission of instructor,
MATH 01.121 or the high-school equivalent)
Introduces the fundamental concepts of
programming from an object-oriented perspective. Topics include simple
data types, control structures, an introduction to array and string data
structures and algorithms, as well as debugging techniques and the social
implications of computing. The course emphasizes modern software engineering
principles and developing fundamental programming skills in the context
of a language that supports the object-oriented paradigm.
Includes basic UNIX commands and editing.
Fall 2006 home page
- CS 04.114 Object-Oriented Programming and Data Abstraction
- (Prerequisites:
formal and declared status as a Computer Science major or minor
or permission of instructor;
CS 04.113,
or a score of 4 or 5 on the Computer Science Advanced Placement `A' Exam,
or CS 04.103 and CS 04.112;
MATH 01.122 or the high-school equivalent)
Objects and data abstraction.
Continues from
Introduction to Object-Oriented Programming
to the methodology of programming from an object-oriented
perspective. Through the study of object design, this course also
introduces the basics of human-computer interfaces, graphics, and
the social implications of computing, with an emphasis on software
engineering.
Includes advanced UNIX commands.
Fall 2005 home page
Use this link to provide an e-mail feedback.
Tanenbaum's
Ten Golden Rules
for teaching computer science.
``Hey, Prof!'' --- Forms of Address
You see your professor in the hall and you want to say hello
or you want to ask your professor a question.
Do you say ``Dr. Smith, ...,'' ``Mr./Ms. Smith, ...,''
''Professor Smith, ...,'' or ''John/Jane ...,''?
Until you get to know me, I prefer ``Professor Hartley'' or ``Mr. Hartley.''
After that, if you are comfortable with it,
feel free to call me ``Steve,'' but only outside the classroom.
It is probably better for your fellow students to stay a bit
formal in the classroom.
For the curious, why ``Professor'' or ``Mr./Ms.''?
I did my doctoral work at the University of Virginia,
founded by Thomas Jefferson.
By tradition,
all students there refer to faculty members this way.
Only in the medical and nursing schools is anybody called ``Dr.''
From the online
Chicago Manual of Style (September 12, 2005):
Q. If someone has a PhD and is a professor at a university, what would be
his or her title? Doctor or Professor?
A. Although this question doesn't really fall within the purview of CMS,
the manuscript editing department at Chicago is of course well versed in
etiquette, as we are in most things. Traditions vary from school to school
and from discipline to discipline. You're always safe with ``Mr.'' or ``Ms.,''
but I doubt that any teacher would be offended if you called her
``Professor,'' whether or not she is one. ``Doctor'' is usually reserved for
medical doctors, although some professors use it, and PhD's who don't have
tenure-track appointments (and who therefore don't hold the title of
professor) often like to use ``Doctor'' instead. (For other questions of
etiquette, you can browse the Internet for ``etiquette'' or ``manners'' or, in
this case, ``forms of address.'')
All contents herein
© 2000 Stephen J. Hartley. All rights reserved.
home page:
http://elvis.rowan.edu/~hartley/index.html
e-mail:
hartley@elvis.rowan.edu