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 Monday, January 23, 2012.
I require that
anybody showing up for the first time in any of my classes after that
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.
This page contains links to the home pages for the courses I currently teach
or have taught.
- CS 01.000 Learning in Bits and Bytes (LiBBy),
the Computer Science Learning Community
-
The Computer Science Learning Community is a place to meet
your fellow freshman majors and to meet the faculty of the
department.
Catalog description:
This course is a component of the department's Learning Community.
Registration in this course provides a mechanism for Learning Community
students to meet at the same time with faculty members and upperclass
majors for various Learning Community activities designed to promote
the goals of the Learning Community: academic and social adjustment;
formation of study groups; facilitate learning; nurture different
learning styles; interest students in faculty research; improve four
and five year graduation rates; improve retention, particularly of
females; interest students in professional societies; acquaint majors
with codes of ethics (professional and student); more internships; more
double majors; more minors; and acquaint majors with the computer
science specializations.
0.000 Credit hours.
Spring 2012 home page
- CS 04.114 Object-Oriented Programming and Data Abstraction
- (Prerequisites: minimum grade of C- in CS 04.113;
or a score of 4 or 5 on the Computer Science Advanced Placement Exam;
or CS 04.103 and CS 04.112)
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, and graphics,
with an emphasis on software engineering.
A second operating system/programming platform is introduced.
Spring 2012 home page
- CS 04.113 Introduction to Object-Oriented Programming
- (Prerequisites:
MATH 01.122 or MATH 01.123 or MATH 01.130)
Introduces the fundamental concepts of programming from an object-oriented
perspective. Topics are drawn from classes and objects, abstraction,
encapsulation, data types, calling methods and passing parameters,
decisions, loops, arrays and collections, documentation, testing
and debugging, exceptions, design issues, inheritance and polymorphic
variables and methods.
The course emphasizes modern software engineering and design.
Fall 2011 home page
- 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.
Spring 2011 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 07.595 Advanced Topics in Computer Science: Concurrent Programming
- (Prerequisites: CS 04.390 Operating Systems or equivalent)
A graduate-level version of CS 04.391 Concurrent Programming.
There will be more programming assignments, harder exams,
and additional readings.
Spring 2010 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 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
Use this link to provide an e-mail feedback.
Tanenbaum's
Ten Golden Rules (pdf)
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