-
Program
-
Online program
-
People
-
Opportunities
-
Contact
|
Computer science facultyMark Vellinga, M.A.Professor of Computer Science Department Chair M.A., University of South Dakota M.S., Northwest Missouri State University B.A., Northwestern College (Iowa) 712-707-7027 vellinga@nwciowa.edu VPH 109
ProfileProfessor Vellinga teaches a wide range of Northwestern’s computer science classes, from the introductory courses to the upper level courses in programming languages. A graduate of NWC, he has a Master of Arts degree in computer science and a Master of Science degree in school computer studies. Professor Vellinga has served as a site director and team coach for the Association of Computing Machinery (ACM) programming contest. Two of NWC's teams qualified and participated in the World Finals in Stockholm, Sweden (2008) and in Harbin, China (2009). Memberships include ACM, the Consortium for Computing in Small Colleges, the Association of Christians in the Mathematical Sciences, and the Institute of Electrical and Electronics Engineers.
Courses- Computer Science I
Computer Science I This is the first in a two-semester sequence of courses that introduces students to fundamental aspects of the field of computing; focusing on problem-solving, software design concepts and their realization as computer programs. Topics include procedural abstraction, control structures, iteration, data types and their representation. An introduction to a high-level language, for the purpose of gaining mastery of these principles, will be provided in lectures and hands-on laboratory experiences. Prerequisite: C- or better in MAT090, an ACT math score of 20 or above (SAT 480 or above), or a passing score on the MAT090 placement exam. (4 credits) - Data Structures
Data Structures This course deals with data structures and their algorithms. Emphasis is given to good data abstraction and efficiency. The data structures covered include arrays, linked lists, trees, graphs and strings. Other topics covered may include design patterns, analysis of algorithms, and complexity classes. Programming is done in an object-oriented language.Prerequisite: CSC172.(4 credits; alternate years, consult department) - Advanced Spreadsheets
Advanced Spreadsheets - Computer Science II
Computer Science II This course moves students into the domain of software design, introducing principles that are necessary for solving large problems. Here, the classical software design process serves as a basis for treating such topics as abstract data types, specifications, complexity analysis and file organization. Basic data structures and transformations are introduced as representative of the fundamental tools that are used to aid in this process. A high-level language will be used for the purpose of gaining mastery of these principles through lectures and independent hands-on laboratory experiences. Prerequisite: CSC171. (4 credits) - Enterprise Architecture
Enterprise Architecture Provides a practical introduction to the management and administration of a computer system. This course covers what it takes to keep a computer system going and how to ensure that users can and do use the computer efficiently. Topics covered include managing users, managing networks, hardware, operating systems and software management, developing administration policy, ethics and various related topics. The Unix operating system is used to provide practical demonstration of the topics covered. A version of Unix that can operate on a 386 or better machine will be provided.Prerequisites: CSC171, 172,and 270.(2 credits; alternate years, consult department) - Programming Languages
Programming Languages This course discusses programming languages from a general viewpoint-what are the properties of all successful programming languages? Also discussed are various programming paradigms: iterative programming, object-oriented programming, functional programming, logic programming, concurrent programming, etc. Programming may be done all in one language (emulate other paradigms), in a few select languages (one for each paradigm), or in a large variety of languages.Prerequisites: CSC270 and 351.(4 credits; alternate years, consult department) - Senior Project
Senior Project This course gives the student an opportunity to branch off into an area of their own selection. The student must obtain approval of a project proposal from a member of the department before registering for this course. The project will require planning, design, and implementation of a computer application in such a way as to integrate the material from computer science courses and courses outside computer science. Students with career concentrations or minors are encouraged to make use of materials from their other subject areas.(2 credits)
Professional experience- Professor of Computer Science since 1990
Memberships- Association of Computing Machinery
- Consortium for Computing in Small Colleges
- Association of Christians in the Mathematical Sciences
- Institute of Electrical and Electronics Engineers
|
|
|
|