- Subject
- CSCI
- Credits (min)
- 4
- Credits (max)
- 4
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- Has not completed any other Computer Science course. FDR: Math and Computer Science Foundation (FM) Credits: 4 An overview of the discipline of computer science achieved through an introductory-level survey of major areas of computer science. Topics include algorithms used for computer solutions of important practical problems, computer programming, digital logic applied to computer circuitry, computer architecture, data representation and organization, Web page basics, computer networks, and theoretical limits of computation. Lectures and formal laboratories.
CSCI
36 courses with the subject CSCI, each shown exactly as we captured it from the college's catalog, with every element we hold. Where the wording looks broken, that is our reading of the catalog, not the college's text.
- Subject
- CSCI
- Credits (min)
- 4
- Credits (max)
- 4
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Subject
- CSCI
- Credits (min)
- 4
- Credits (max)
- 4
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 1100 FDR: Science, Math, Computer Science Distribution (SC) Credits: 4 This course continues the introduction to computer science begun in CSCI 1100 . Emphasis is on the use and implementation of data structures (i.e., how to store information and access it efficiently), introductory algorithm analysis, and object-oriented design and programming with Python. Lectures and formal laboratories.
- Subject
- CSCI
- Credits (min)
- 4
- Credits (max)
- 4
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- First-year student class standing. Credits: 3 First-year seminar. Topics, applicability to FDRs, and other requirements vary by term.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 1200 Credits: 3 An examination of the theories and design techniques used in software development, with an emphasis on making software maintainable and developers productive. Hands-on implementation of those techniques. Topics include the software life cycle, design patterns, version control, unit testing, and program documentation.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 1200 Credits: 3 Multilevel machine organization studied at the levels of digital logic, microprogramming, conventional machine, operating system, and assembly language.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 1200 and either MATH 1400 or MATH 2400 Credits: 3 Methods for designing efficient algorithms, including divide-and-conquer, dynamic programming, and greedy algorithms. Analysis of algorithms for correctness and estimating running time and space requirements. Topics include advanced data structures, graph theory, network flow, and computational intractability.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 1200 Credits: 3 An overview of computational methods inspired by the nervous systems of animals. Topics include philosophical foundations of neuromorphic computing, fundamental mathematical concepts, Hopfield nets, Kohonen’s Self-Organizing Map, Sparse Distributed Memory, Latent Semantic Analysis, Tensor Products, and current neuromorphic hardware. Readings come from both popular textbooks and the scholarly literature. A major focus of the course is on writing programs to implement and apply the concepts and algorithms studied in the course.
- Subject
- CSCI
- Credits (min)
- 4
- Credits (max)
- 4
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 1200 FDR: Science, Math, Computer Science (SC) Credits: 4 This course combines readings from the contemporary robotics literature with hands-on lab experience building robots (equipment provided) and programming them to do various tasks. The lab experience culminates with a peer-judged competition of robot projects proposed and built during the second half of the term.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Repeatable
- May be repeated for degree credit if the topics are different.
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 1200 Credits: 3 Readings and conferences for a student or students on topics agreed upon by the directing staff. May be repeated for degree credit if the topics are different. A maximum of six credits may be used toward the major requirements.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 3 Introduction to the theory and design of modern programming languages. Using the programming language Haskell, students will explore core topics like grammar specification, parsing, data structuring and data typing, modularity, scoping, and expression semantics / evaluation. The insights and habits gained in this course will enable students to understand common problems they will encounter in everyday programming practice and to sharpen their programming skills for the challenges of real-world applications.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 and CSCI 2200 Credits: 3 Procedure initiation, environment construction, reentrancy, kernel functions, resource management, input/output, file structures, security, process control, semaphores and deadlock, and recovery procedures. The laboratory includes the opportunity to examine and modify the internals of an operating system.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 3 In this course we develop several graphical systems via programming. The course covers, among other topics, the application of linear algebra for the creation of graphical images, raytracing, and polygonal graphics. Knowledge is developed about the computer generation of shapes, lighting, textures, material properties, camera parameters, and perspective. The necessary mathematical background is developed during the course.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- MATH 1400 or MATH 2400 Credits: 3 A study of the principles of computer science embodied in formal languages, automata, computability, and computational complexity. Topics include context-free grammars, Turing machines, and the halting problem.
- Subject
- CSCI
- Credits (min)
- 4
- Credits (max)
- 4
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 4 In this course, students learn to develop high-performance software for Web applications using advanced software engineering techniques. The concepts of client-server computing, theories of usable graphical user interfaces, models for Web-based information retrieval and processing, and iterative development are covered.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 3 In this course, students learn to design and program video games using Python and the Pygame module. Concepts covered include video game code organization utilizing object-oriented programming, OOP design patterns, 2D animation, artificial intelligence, and responding to user feedback.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 3 Intended as a first course in communication networks for upper-level students. Covers concepts and protocols underlying modern computer networks. Topics include network architecture and layering, routing and switching, the TCP/IP protocol and network applications. Theory and programming.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 3 This course introduces the principles of parallel computing. Students will explore the benefits and challenges of developing programs for the multi-core processors found on virtually all modern computers. Students will attain an understanding of the theory of parallel computing and gain hands on experience writing efficient programs in C using parallelization frameworks such as OpenMP. Topics include race conditions, parallel algorithms, dynamic multithreading, and scheduling.
- Subject
- CSCI
- Credits (min)
- 4
- Credits (max)
- 4
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 4 In this course, students learn to design and develop distributed systems, i.e., collections of independent networked computers that function as single coherent systems. The concepts of communication, synchronization, consistency, replication, fault tolerance, and security are covered. In addition, case studies of real-world distributed systems (e.g., the Internet, distributed file systems, grid computing) are analyzed.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 3 In this course, students are introduced to Cloud Computing. Clouding Computing focuses on implementing programs on distributed computers and delivering them as a service. Students will explore diverse aspects of this broad area, ranging from the design of cloud systems to creating applications on cloud systems. Selected topics include the theory of distributed systems, the benefits and challenges of the cloud, MapReduce and Spark, algorithm design on distributed systems, Amazon Web Services, and data analysis.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 3 This course will provide a theoretical and practical implementation of database systems. Students will learn how databases work, particularly how they store, index, and query data. Broadly, the course will focus on the fundamentals of database design, data models, relational algebra and the description and semantics of query languages including SQL and NoSQL. Advanced topics will include database security, distributed and Internet databases, and large-scale data analysis.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 3 A review of advanced topics in robotics, including well-established topics like Bayesian filtering and control theory and current trends like intelligent robots and neuromorphic control. Readings in these areas are reinforced by hands-on projects with robot hardware and simulators. Students present their final projects at the culminating annual Spring Term Festival. Each class meeting includes lecture, discussion, and project work done in teams of one to four students, with weekly quizzes on the readings.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- CSCI 2100 Credits: 3 In this course, students learn the basics of Human-Computer Interaction. Students learn to design user studies, conduct user studies ethically, and analyze user feedback with statistics and the programming language R. Concepts covered include analysis of user data, programming in R, user studies, study ethics, UML, user experience design, designing questionnaires, IRB submissions and CITI training, as well as guest lectures in special interest topics.
Readings and conferences for a student or students on topics agreed upon with the directing staff. May be repeated for degree credit if the topics are different. A maximum of six credits may be used toward the major requirements.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Repeatable
- May be repeated for degree credit if the topics are different.
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Subject
- CSCI
- Credits (min)
- 1
- Credits (max)
- 1
- Credit unit
- Credits
- Type
- course
- Repeatable
- May be repeated for degree credit if the topics are different.
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- Instructor consent Credits: 1 Individual conferences. May be repeated for degree credit if the topics are different.
- Subject
- CSCI
- Credits (min)
- 2
- Credits (max)
- 2
- Credit unit
- Credits
- Type
- course
- Repeatable
- May be repeated for degree credit if the topics are different.
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- Instructor consent Credits: 2 Individual conferences. May be repeated for degree credit if the topics are different.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Repeatable
- May be repeated for degree credit if the topics are different.
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- Instructor consent Credits: 3 Individual conferences. May be repeated for degree credit if the topics are different.
Each student conducts primary research in partnership with a faculty member, by prior mutual agreement and according to departmental guidelines. Consult the department web page or individual faculty for a description of current research areas.
- Subject
- CSCI
- Credits (min)
- 1
- Credits (max)
- 1
- Credit unit
- Credits
- Type
- course
- Repeatable
- May be repeated for degree credit.
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
Each student conducts primary research in partnership with a faculty member, by prior mutual agreement and according to departmental guidelines. Consult the department web page or individual faculty for a description of current research areas.
- Subject
- CSCI
- Credits (min)
- 2
- Credits (max)
- 2
- Credit unit
- Credits
- Type
- course
- Repeatable
- May be repeated for degree credit.
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
Each student conducts primary research in partnership with a faculty member, by prior mutual agreement and according to departmental guidelines. Consult the department web page or individual faculty for a description of current research areas.
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Repeatable
- May be repeated for degree credit.
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Subject
- CSCI
- Credits (min)
- 3
- Credits (max)
- 3
- Credit unit
- Credits
- Type
- course
- Edition
- 2026-2027
- Catalog
- 2026-2027 Undergraduate Catalog
- Source
- catalog.wlu.edu
- Prerequisite
- Instructor consent Credits: 3 Honors Thesis.
Source: Washington and Lee University's catalog, linked per course · table learning_unit · CourseShelf publish 59