Computer Science

Saint Michael's Computer Science

As you ponder all the career fields open to a Saint Mike’s computer science major (software engineer? artificial intelligence? computer graphics? eCommerce?), think also about two famous quotes shared by our professors: 

  • "Computer Science is no more about computers than astronomy is about telescopes."-Edsger Dijkstra
  • "Computers are good at following instructions, but not at reading your mind."-Donald Knuth

Our program will help you become proficient developing basic software after three initial required courses, but you’ll also be broadly educated in liberal arts and take focused electives in the major. Once secure in computer theory and practice, you might work alongside the college’s IT staff pros, present your work at conferences, use our Linux lab or intern at IBM. Small personalized classes, department picnics, contests and guest-lectures help build a tight community of friendly, hard-working students who tackle great special projects together. Our graduates have a strong track record landing desirable jobs upon graduation.

Computer Science as presented in our courses is primarily concerned with discovering new knowledge, with strong foundations in theory and selected application domains. The field is the basis for software engineering, just as chemistry forms the basis for chemical engineering or physics the basis for electrical engineering. Some important topics in this science are the theory of data structures, algorithms, programming languages, networks, operating systems, compilers, databases, architecture, artificial intelligence, robotics and graphics.

You’ll benefit from a carefully-planned balance between theory and practice, rooted in early proficiency with basic software development from your first three courses. After that, it’s largely up to you. Electives let you zero in on:

  • Artificial Intelligence
  • Data Communications and Networks
  • Computer Graphics
  • Software Engineering 
  • Database
  • Advanced Algorithm Analysis
  • eCommerce
  • Computer
  • Information Security

Here are some definitions to think about in order to better understand our program’s strong emphasis on software development or software engineering:

Engineering is building useful products for real people – that is, the development of solutions to technical problems within economic, social and technical constraints, under conditions of uncertainty. Examples include bridges, highways, skyscrapers, automobiles, dams, nuclear reactors, power grids, airplanes, space shuttles, lunar bases …and computers.

Software engineering (SE) is the engineering of computer software systems, encompassing the requirements, design, construction, management and evolution of software for use by others in industry, office and home. SE applies the scientific background acquired in the foundations of computer science to the development, operation, and maintenance of reliable, efficient, large-scale systems. Examples include Windows XP, space shuttle launch, flight, and landing software systems, micro-controllers for automobile engines, ATM software systems, C++, Internet/WWW, scanning systems in retail outlets and ordering systems for e-commerce.

Michael Battig, PhD

Professor of Computer Science
View Full Profile

Ph.D. Mississippi State University
M.S. University of North Texas
B.S. Miami University

View my Curriculum Vitae

Areas of Expertise

Software engineering; testing object-oriented software; and computer science/information systems education.

Courses I Teach:

  • Database Management
  • Introduction to Computer Science II
  • Organization of Programming Languages
  • Software Engineering

The class I enjoy teaching most is probably Introduction to Computer Science -- I like working with first-year students and helping them to discover the breadth of the computing field.

Greta Pangborn, PhD

Computer Science and Information Services Department Chair, Associate Professor of Computer Science
View Full Profile

B.S., M.S., Ph.D. Cornell University

View my Curriculum Vitae

Areas of Expertise:

Computational optimization and algorithms. Recent applications I have  looked at include: self-assembling DNA nanostructures, VLSI chip layout, and unit rectangle visibility graphs.

Courses I Teach:

  • Data Structures & Algorithms
  • eCommerce
  • Introduction to Computing
  • Machine Organization
  • Programming Languages for Information Systems

My Saint Michael's:

I am always struck by the number of Saint Michael's students who participate in volunteer activities to make a difference both locally and globally, and I really appreciate the strong sense of community. My classes are small, so I am able to get to know my students well. We are able to have events, such as class dinners, that would not be possible at a larger institution. There also are many independent study and student research opportunities available that might not be possible at a larger institution. In my five first years at Saint Michael's I have been able to work with 10 students on projects beyond the scope of an ordinary class.

My students are smart, hardworking, and friendly. I am always impressed, not just by their performance in my classes (which is very good), but by the wide range of their interests beyond the field of computer science.

I really enjoy all of my classes, but if pressed to pick a favorite I would say Data Structures and Algorithms, which is closely tied to my area of research.

John Trono, MS

Professor of Computer Science
View Full Profile

M.S. Purdue University
B.S. University of Vermont;

View my Curriculum Vitae

Areas of Expertise:

Simulation and predictive modeling; minimal perfect hashing functions; computer science education, concurrent programming using semaphores; Sidon set discovery; the MIPS architecture, analysis of algorithms' and cryptography

Courses I Teach:

  • Computer Architecture
  • Crypto/Security
  • Data Communications and Networks
  • Intro to Computer Science
  • Operating Systems

My Saint Michael's:

I came to Saint Michael's College when the Computer Science department began back in 1982. I use my computer (which is not just for e-mail and searching the Web!) as a tool to solve problems that involve a significant amount of tedious calculations. Many of these problems require a mathematical model to simulate inside the computer what is happening in the real world. The computer can then be used to evaluate these "virtual worlds", and examine their ability to predict the future. The computer can also be used to help determine how realistic these models are in relation to our own physical world. In my classes, if I see that some topics are very difficult for students to learn, I try to develop some pedagogical tools to aid in their understanding, and if these are successful, I then share them with colleagues at other institutions.

Because my classes have fewer than 15 students in them, I really get to know the students fairly well each semester, and therefore, I can give them more individual help (if they need it) than if I were teaching much larger classes. The atmosphere in the classroom is also less formal, which hopefully encourages the students to feel more relaxed and comfortable asking questions or putting forth their ideas during class.

As a St. Mike's computer science major, you can experience what computers do for people in the "real world" by working part-time during the school year either for the college's Information Technology Department or for local companies such as IBM, MyWebGrocer and Mylan Technologies. You’ll have the chance to participate in independent study and research projects leading to conference presentations, published papers and software packages. The department also sponsors picnics, dinners, programming contests and speakers. For example, two of our recent guest lecturers explored "Global Product Management at Yahoo" and "Cyberterrorism, Information Warfare, and Critical Infrastructure Protection."

Students also regularly travel to regional programming contests, including the regional Consortium for Computing Sciences in Colleges (CCSCNE) and Association for Computing Machinery (ACM) contests in the Northeast. After your first-year courses, you may want to work in our campus Linux-based lab. It is not uncommon for a CS major to work on special computer-related projects in collaboration with professors outside our department too - journalism, mathematics and economics are a few recent examples.

 After graduation, our majors go on to careers like:

  • Information Technology Support Technician
  • Information Systems Analyst
  • Project Manager/Developer
  • Software Developer
  • Application Developer
  • Software Engineer
  • Programmer Analyst

Our graduates build excellent careers with the skills they learn at St. Mike's. While normally it's in a field directly connected to their computer training, it doesn't have to be. For instance, Zachary Pratt '10 is now in law school at the University of Iowa.

Graduate Programs Attended

  • University of Arizona
  • Boston University
  • University of Illinois at Chicago
  • John's Hopkins
  • National Technical University (NTU)
  • Rochester Institute of Technology (RIT)
  • Rennsalaer Polytechnical Institute (RPI)
  • University of Virginia
  • University of Wisconsin (Madison)
  • Worchester Polytechnical Institute (WPI)

Here's a small sample of recent graduates and the jobs they hold:

Employer – JPMorganChase
title: Application Developer

Employer - IBM
title: Software Engineer
developing application programs for IBM Global Services division

Employer - iBizVision
title: Developer
creating active web content (and GUI programming)

Employer - Raytheon
title: Systems Analyst
software design and development for some of their proprietary systems

Employer – GE Healthcare (formerly IDX)
title: Software Engineer
programming for the GPMS system (hospital database)

Employer - IBM
title: Network Support
maintaining all Internet connections and LANs on a large manufacturing campus/site

Employer - PeopleSoft
title: Programmer Analyst
software customization, development, and customer relations

Graduate Programs Attended

  • University of Arizona
  • Boston University
  • University of Illinois at Chicago
  • John's Hopkins
  • National Technical University (NTU)
  • Rochester Institute of Technology (RIT)
  • Rennsalaer Polytechnical Institute (RPI)
  • University of Virginia
  • University of Wisconsin (Madison)
  • Worchester Polytechnical Institute (WPI)

To contact the Department of Computer Science:

Department of Computer Science
Saint Michael's College
One Winooski Park, Box 279
Colchester, VT 05439
Fax: 802.654.2664

Department Chair:
Professor Greta Pangborn
Jeanmarie Hall 257
802.654.2791
gpangborn@smcvt.edu  

Administrative Assistant:
Denise Brault
St. Edmunds Hall 133
802.654.2866
dbrault@smcvt.edu

Learn What Matters