Mark Haselhoff '12 Professor of Practice in Computer Science; Department Chair


M.S., Georgia Institute of Technology
B.A., Northwestern College

VPH 109B

Before joining the computer science department as a full-time professor, Haselhoff taught as an adjunct professor while serving as the college’s web development manager and, previously, on the computing services staff. A Northwestern graduate, he was a member of the college's student computer programming team that competed in the Association for Computing Machinery International Collegiate Programming Contest in China—an event to which only the top 100 college-level teams in the world are invited. He completed a master's degree in computer science at Georgia Institute of Technology in 2017.

CSC120 - Business Data Analysis using Spreadsheets

(2 credits) This course teaches students to use spreadsheets to organize, calculate, analyze, and report on business data. Topics include using built-in statistical, logical, lookup, and financial functions, writing custom formulas and conditional formulas, using built-in data analysis tools, presenting information with charts and graphs, creating PivotTables and PivotCharts, exporting and importing data to and from other applications, sharing data on the World Wide Web, and using macros to automate tasks. The course will culminate by developing key performance indicators (KPIs) and dashboards.

CSC270 - Computer Organization

(4 credits; alternate years, consult department) This course explores architecture and computer design issues in modern computers. Part of the course is spent looking at the basic building blocks used to design and build a computer. The rest of the course deals with how to work with the computer at the level of the central processing unit, main memory and registers. Programming assignments are done in assembly language to see what commands the computer really understands. Corequisite: CSC172WI.

CSC300 - Electronic Commerce Development

This course provides an introduction to electronic commerce strategy and the development and architecture of electronic business solutions and their components. Topics covered include the business models and economics associated with e-commerce, system design and implementation, building a Web interface for e- commerce, reliability, security concerns, and legal and ethical issues.Prerequisite: CSC172.(4 credits; alternate years, consult department)

CSC331 - Cybersecurity

(4 credits; alternate years, consult department) This course will introduce the topic of computer security. Topics covered will include user authentication and access control, malicious software, firewalls, intrusion detection, buffer overflows, and website security. The human aspects of security including legal and ethical concerns will also be examined. Prerequisite: CSC172WI.

CSC351 - Data Structures

(4 credits; alternate years, consult department) 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: CSC172WI.

CSC361 - Networking

(4 credits; alternate years, consult department) This course introduces the student to the field of computer networking. Students will develop an understanding of the general principles of computer communication as they are worked out in an appropriate protocol suite. Specific attention will be paid to principles of architecture, layering, multiplexing, addressing and address mapping, routing and naming. Problems considered include the writing of network software, the physical construction of networks, the Internet and its future development, and network security. Prerequisite: CSC172WI.

Lecturer in Computer Science, Northwestern College

Web Developer, Northwestern College

Computer Support Specialist, Northwestern College

Association for Computing Machinery

Northwestern College team member, World Finals of the Association for Computing Machinery (ACM) International Collegiate Programming Contest, Harbin, China, 2010