Courses
This page gives basic information for CS courses - when offered, normal content, sequencing, etc. You should also see the information linked from the information on CS programs
CS Courses
The table below lists all currently offered CS courses, when they are normally offered, which programming languages are normally used, and links to the most recent syllabus for each faculty member who has recently taught the course.
For each course, an indication is given whether the course is normally offered in the fall, spring, summer, or some combination. If there are no "Y" for a course, it is offered as needed. For courses listed as "even" or "odd", the course is offered only in even (or odd) numbered years. Courses that are normally taught online as distance courses in a given semester are marked "Y/D". All courses are 3 credit hours unless otherwise noted. A few 400 level undergraduate courses have lab sections that are taken with the course (401, 456, 457, 458); the 500 level courses do /not/ have lab sections that are taken (so undergraduates take CS 401 and 401L, while graduates would take just CS 501).
Course | Name | Fall | Spring | Summer | Syllabus | Language(s) |
---|---|---|---|---|---|---|
SH 199 | Summer Honors (for high school students) | Y | summer honors | |||
GH 101 | General Honors (on a CS topic) | Kinne | R, python | |||
CSS 210 | Introduction to Networking | Y/D | Abhyankar | |||
CSS 211 | Introduction to Computer Security | Y/D | Abhyankar | |||
CSS 331 | Files and Databases | Y/D | May | |||
CS 101 | Fundamentals of Computing | Y/D | Y | May, Sternfeld, model | pseudocode, python | |
CS 110 | Fast Track Programming (1-3 hrs) | model | C or Python | |||
CS 151 | Introduction to Computer Science | Y | Y/D | Y/D | Kinne D & Schnabel, Kinne J et al., May, Schotter, Baker, Rafiey, Sternfeld | python |
CS 170 | Web Programming | Y | Y/D | Sternfeld, May, Baker,Kinne | html/css, javascript | |
CS 201 | Programming Structures (4 hrs) | Y | Y/D | May Sternfeld, Exoo,Kinne | python | |
CS 202 | Data Structures and Algorithms (4 hrs) | Y/D | Y | Kinne , Golish, Schotter, Exoo | C, C++ | |
CS 256 | Principles of Structured Design | Y | Y/D | Baker, Golish, Schotter, Basavaraj | C | |
CS 260 | Object Oriented Programming | Y | D.Kinne, Boulware, Baker, Carrillo,Sternfeld | Processing/Java | ||
CS 303 | Discrete Structures (4 hrs) | Y | Sternfeld, Egri | (python/sage optional) | ||
CS 305 | Computer Science Teaching Methods | even | model | |||
CS 351 | Computer Organization (4 hrs) | Y | model | assembly | ||
CS 399 | Cooperative Professional Experience | |||||
CS 401/501 | Programming for Data Science (+ 1hr 401L) | Y/D | Exoo | Python, R | ||
CS 417 | Machine Learning | Y? | Python, R | |||
CS 420/520 | Theory of Computation | Y | Kinne, Exoo | (python/sage optional) | ||
CS 421/521 | Formal Methods | Y | Abhyankar | ACL2, Clausal Logic, Haskell, Prolog | ||
CS 440/540 | Graphics Programming | Exoo, Kinne | C/C++ | |||
CS 452/552 | Software Engineering | Y | Abhyankar | UML, C++/Java | ||
CS 456/556 | Systems Programming (+ 1hr 456L) | Y | Baker, Exoo | C/C++, assembly | ||
CS 457/557 | Database Systems (+ 1hr 457L) | Y | Exoo, Schotter, Kinne | SQL, some noSQL, some high level | ||
CS 458/558 | Algorithms (+ 1hr 458L) | Y | Kinne, Exoo, Rafiey | C/C++ | ||
CS 459/559 | Topics in Computer Science (1-3 hrs) | Y | Abhyankar, Exoo (data science), Kinne (R, BD4ISU), Abhyankar (CSS 211), Schotter (Python) | |||
CS 469/569 | Unix/Linux Administration and Networking | Y | Baker | C/C++/Bash | ||
CS 470/570 | Programming Languages | Y | Abhyankar | Prolog, Haskell, Smalltalk/Squeak | ||
CS 471/571 | Operating Systems | Y | Baker, Kinne, Exoo | C/C++ | ||
CS 473/573 | Computer Networks | Y | Baker, Exoo, Kinne | C/C++ | ||
CS 475/575 | Artificial Intelligence | Y | Exoo, Baker, Kinne | C/C++ | ||
CS 479/579 | Web Programming II | Y | Baker, Exoo | php, SQL, XML, javascript, SPARQL | ||
CS 499 | Senior Seminar (1 hr) | Y | Y | Kinne | ||
CS 500 | Programming Fundamentals | Y | Y | Sternfeld, Basavaraj, Exoo, Kinne, model | C/C++ | |
CS 510 | Fast Track Introduction to Programming | model | C/C++ or Python | |||
CS 551 | Computer Architecture | Y | Abhyankar | assembly | ||
CS 600 | Concrete Mathematics | Y | Zhao, Egri, model | |||
CS 601 | Programming for Data Science II | Y | Python, R | |||
CS 602 | Mobile and Cloud Computing | odd | Abhyankar, model | |||
CS 603 | Networking and Security | odd | Abhyankar, Kinne, model | C/C++ | ||
CS 609 | Web Programming and Applications | Y | Sternfeld, Kinne, model | html/css/javascript/php/SQL | ||
CS 610 | Survey of Programming Languages | even | Abhyankar, model | |||
CS 611 | Software Specification and Design | even | [1], model | VDM-SL | ||
CS 617 | Databases, Data Mining, and Big Data | Y | Exoo, Kinne | python, R, sql, noSQL, tensorFlow | ||
CS 618 | Computational Biology | odd | Rafiey, model | Python | ||
CS 619 | Trends in Computer Science | even | model | |||
CS 620 | Theory of Computation II | even | Kinne | |||
CS 621 | Discrete Structures II | Rafiey | ||||
CS 650 | Topics in Computer Science | |||||
CS 652 | Software Engineering II | Eiffel, Ruby, C++ | ||||
CS 658 | Algorithms II | odd | Rafiey, Exoo, Kinne | |||
CS 670 | Concurrent Programming | odd | Exoo, Kinne | C/C++ | ||
CS 671 | Operating Systems II | odd | Kinne | C/C++ | ||
CS 673 | Networking II | even | Exoo, model | C/C++ | ||
CS 680 | Readings in Computer Science | |||||
CS 685 | Software Project (3-6 hrs) | Y | Y | |||
CS 695 | Computer Science Research (3-6 hrs) | Y | Y | Exoo, Kinne | LaTeX | |
CS 699 | Computer Science Internship (0-3 hrs) | Y | Y | Kinne, model |
Normal Content
For each course, the most recent syllabus linked above is the best place to see what is currently in the course. You can also check these...
- CS Courses Normal Content (possibly outdated)
- Partial mapping of ACM/IEEE learning outcomes to ISU CS courses - ACM/IEEE (possibly outdated)