Virginia Tech's 1st year in Computer Science

Background on VT's Intro Courses

  • CS1114 - Intro to software design
  • CS1124 - Introduction to Media Computation
  • CS2114 - Software Design & Data Structures

Our Approach

  • Large lecture (2 hrs per week)
  • Smaller closed-lab (2 hrs per week)
  • Pair programming
  • Object-first, Test-driven development
  • Java, with Python for Media Computation

Prerequisite and dependencies


CS-1114 Introduction to Software Design

Catalog Description: Fundamental concepts of programming from an object-oriented perspective. Basic software engineering principles and programming skills in a programming language that supports the object-oriented paradigm. Simple data types, control structures, array and string data structures, basic algorithms, testing and debugging. A basic model of the computer as an abstract machine. Modeling and problem-solving skills applicable to programming at this level. Partially duplicates 1054, 1124, and 1705. Programming experience may be substituted for pre-requisite ENGE 1024 with instructor's permission.

CS-1124 Intro to Media Computation

Catalog Description: This course teaches fundamental manipulations of digital media as an introduction to computer science. Basic software engineering principles and programming skills are taught with a programming language that supports object-oriented programming. Simple sata types, control structures, array and string data structures and algorithms, testing and debugging. Partially duplicates 1054 and 1705.

CS-2114 Software Design & Data Structures

Catalog Description: A programming-intensive exploration of software design concepts and implementation techniques. Builds on knowledge of fundamental object-oriented programming. Advanced object-oriented software design, algorithm development and analysis, and classic data structures. Includes a team-based, semester-long software project.

Back to Menu