CS A to Z

A comprehensive dictionary of CS terms for new Computer Science students at UT Austin.

It's possible some content may be outdated. Please check with an officer or online if you are unsure about information presented here.

UT Campus

Speedway

The yellow brick road that runs down the middle of campus. Most of the buildings you'll need to go to will probably be right off of Speedway.

PMA

The building at the interesction of Speedway and Dean Keaton, which you will probably have math classes in. The ground floor is actually the 4th floor, and you have to use the escalators to get to levels 5-7 since the elevators only go to level 8 and above.

UTC

The building that's semi-attached to the PCL, which houses some of the largest classrooms on campus. You may have some core credit classes here since they're usually pretty big. To get to it, walk past the PCL on the right and then turn left when you see the escalators.

PCL

The Perry-Castañeda Library, which is the largest library on campus. It's technically not open 24/7, but if you are already in the library before closing time you won't be kicked out. There are quiet floors and collaboration floors so make sure you go to the one that suits your study needs best!

WCP

The Student Activity Center, one of the two Student Unions on campus. It has Chick-Fil-A, Zen, Taco Cabana, Starbucks, and POD, which is like a mini grocery store that you can get snacks and drinks from.

Gregory Gymnasium

The largest gym on campus, that has gymnasiums, cardio machines, weightlifting equipment, racquetball courts, a climbing wall and more. Right near the main entrance is the Amazon Hub, where you can receive and return Amazon packages.

Jester

The largest dorm on campus (split into Jester East and Jester West) and houses some of the bigger UT dining locations. It has JCL (a la carte), J2 (buffet style), JCM (a small market), Jesta Pizza, Starbucks and Wendy's (also known as Jendy's).

UTCS Courses

UDEs

Upper Division Electives are the classes you will probably start taking your sophomore or junior year when you finish the "lower division" CS courses (312, 311, 314, 429). There are usually 15-20 offered every semester.

Numbering System

The first number in a course number is the number of credit hours. Most classes are 300s or 400s. The second number indicates lower division (1-2), upper division (3-7) or graduate (8-9) level. The last number doesn't have specific meaning.

CS312

Introduction to Programming is the first CS course you will take at UT (assuming you don't claim credit for it). You will be programming in Java and learn the basics of programming.

CS314

Data Structures will be either your first or second CS course at UT. You will program in Java, and will learn about different data structures and control flow structures.

CS311

Discrete Math will be your first theoretical CS course. You don't do any programming in 311; instead you learn about boolean logic, proofs, and complexity classes.

CS429

Computer Architecture is the last class in the entry-level sequence where you will learn about the low level parts of a computer. You will learn how to write C and Assembly.

CS439

Operating Systems is one of the more difficult required courses at UTCS. You will learn about how the operating system works, and implement aspects like file systems, user programs, and virtual memory.

CS331

Algorithms and Complexity is the last required course at UTCS. You will learn about common algorithms and algorithm classes, as well as the different complexity classes.

Places of UTCS

GDC

The Gates Dell Complex, UT Austin's CS building.

3rd Floor Lab

The 3rd floor lab (GDC 3.302) has lab machines pr,inters, lockers, student organization offices, and TA stations. It's accessible 24/7 with your ID card.

2nd Floor Lab

The 2nd floor lab (GDC 2.402) is towards the back of the North Tower on the 2nd floor.

Atrium

The big open "lobby" area on the ground floor of the GDC with the red couches and white tables.

Auditorium

The Auditorium (GDC 2.216) is the largest lecture hall in the GDC.

Gateshenge

The circular statue in front of the GDC.

North Tower

The half of the GDC that is to the left of the atrium. Most professors' offices and classrooms are on this side.

South Tower

The half of the GDC that is to the right of the atrium.

TA Stations

Located in the 1st and 3rd floor labs. The 3rd floor stations are in front of the lockers at tall tables.

UTCS Student Organizations

ACM

The Association for Computing Machinery is focused on creating a community among CS students and advancing computer science studies and research.

ABCS

Association of Black Computer Scientists creates paths to educational and professional success for Black and underrepresented students.

HACS

Hispanic Association of Computer Scientists provides support for Hispanic and Latinx students through academic, professional, and social development.

WiCS

Women in Computer Science builds a network and community of women through outreach, professional development, and academic initiatives.

Turing Scholars

An honors program for outstanding Computer Science undergraduates.

EGaDS!

Electronic Game Developers Society focuses on computer and video game development.

Freetail Hackers

Organizes hackathons including HackTX (24-hour) in fall and a 12-hour themed hackathon in spring.

Longhorn Developers

A group of student developers that update and manage open-source projects serving UT Austin students.

And Many More...

There are too many orgs to list within this page. Most orgs fall under three categories: identity-based, specialization-based, or software engineering. If you are unsure if an org exists for a specific identity/specialization, ask one of the officers!

Development Tools

Git

The most commonly used version control system for tracking changes in code.

VS Code

A popular code editor made by Microsoft with lots of useful extensions.

IntelliJ

A powerful IDE primarily used for Java development.

Eclipse

A commonly used Java IDE, especially in CS312 and CS314.

Docker

A program that allows you to create isolated "containers" which act like lightweight virtual machines.

Terminal

A text interface for executing commands on your computer.

SSH

Secure Shell - allows you to securely access and control remote computers. You can use this to remotely access lab machines in the GDC.

Programming Concepts

Algorithm

A step-by-step procedure or formula for solving a problem.

Big O Notation

A way to describe the time or space complexity of an algorithm.

API

Application Programming Interface - a set of rules allowing one program to interact with another.

Object-Oriented Programming

A programming paradigm based on "objects" that contain data and code.

Front-End

The user-facing part of software that users directly interact with.

Back-End

The server-side of applications that handles business logic and data storage.

Full Stack

Development that covers both front-end and back-end.

Computer Science Theory

Amortized Analysis

Average performance of algorithms over time, useful when worst-case occurs infrequently.

Dynamic Programming

Problem-solving method that breaks down problems into smaller subproblems and stores results for reuse.

Inheritance

OOP concept where a class can inherit properties and methods from another class.

Ternary Operator

Conditional expression that takes three operands: condition ? value-if-true : value-if-false.

Turing Complete

System capable of simulating a Turing machine, meaning it can compute any computable function.

Frequent Events

CTF

Capture The Flag security competitions solving challenges in cryptography, exploitation, and web security. Hosted by ISSS every 2 weeks.

Programming Contests

Competitive coding events where participants solve algorithmic problems. Includes ICPC and local competitions.

Terminal & Command Line

Directory

Another name for what you would usually call a folder.

Absolute Path

A path starting from the root directory (~) that always leads to the same location.

cd

Change directory command allows you to move between folders.

ls

Lists files in the current folder. Use -a for hidden files, -l for detailed view.

grep

Search tool to find text patterns in files.

sudo

Command to run programs with security privileges of another user, typically root.

Technology Terms

64-bit vs 32-bit

Refers to the size of memory addresses a machine can handle. 64-bit can address much more memory than 32-bit.

Asynchronous

When a computer performs multiple tasks simultaneously, requiring careful resource management.

API

Application Programming Interface - allows different software components to communicate.

Bit & Byte

A bit is a single binary unit (0/1). A byte is 8 bits - the basic unit of digital storage.

GRUB

GNU GRUB bootloader that manages startup and OS selection on Linux systems.

GUI

Graphical User Interface - visual way for users to interact with software.

IoT

Internet of Things - network of physical devices embedded with sensors and software for data exchange.

Package Manager

Software tools that automate installing, updating, and removing programs (apt, npm, pip).

Virtual Machine

Software simulation of a computer system, allowing one OS to run inside another.

Daemon

Background process that runs without direct user interaction.

Debugger

Tool for finding and fixing software bugs with features like breakpoints and memory inspection.

Development Methodologies

Scrum

Agile framework where work is broken into sprints with daily standup meetings.

Kanban

Work tracking system using boards with columns representing different stages of development.

Unit Testing

Testing individual components of code to ensure they work as expected.

Agile

Development methodology emphasizing flexibility, customer collaboration, and iterative development.

UT CS Figures

Peter Stone

Head of Learning Agents Research Group (LARG). Research focus on AI and robotics.

Scott Aaronson

Head of the quantum information center at UT. Teaches quantum information courses.

Mike Scott

Teaches CS312 (Introduction to Programming) and CS314 (Data Structures).

Alison Norman

Teaches CS439 (Operating Systems). Known for the Pintos project series.

Ahmed Gheith

Teaches CS439 (Operating Systems). Known for individual weekly projects and excellent lectures.

Glenn Downing

Teaches software engineering and object oriented programming.

And Many More...

If you hear about a professor and are unsure about who they are, many professors host their own UT webpages with a short bio and their related works. You can also ask a friend or an officer for more information about a particular professor.

Annual Events

Career Fair

A career fair put on by the College of Natural Science once per semester. Most companies recruit in fall.

Div Day

A conference empowering historically marginalized communities in STEM through discussions, speakers, and workshops.

HackTX

UT's annual 24-hour hackathon. Great for creating side projects and attending workshops.

WiCS Hacks

Annual hackathon by WiCS aimed at female-identifying students. Includes workshops, talks, and project development.

Recruiting Season

For summer internships, larger companies usually start recruiting the fall beforehand. Prime recruiting season runs September to November.

Technology: Computer Parts

CPU

The Central Processing Unit is the "brains" of the computer, handling computations and determining operations.

GPU

The Graphics Processing Unit is specifically designed to handle graphics-related calculations and operations.

RAM

Random Access Memory provides quick-access storage for frequently used information. Contents are wiped on reboot.

HDD

Hard Disk Drives use spinning disks for permanent file storage of documents, photos, programs, etc.

SSD

Solid State Drives provide permanent storage without moving parts, making them faster and more reliable than HDDs.

Operating Systems

Windows

Microsoft's operating system. Not UNIX based, requires special programs for UNIX-like functionality.

Linux

An open source operating system with many distributions (distros). All lab machines run Linux, specifically Ubuntu.

UNIX

A family of operating systems including Linux, MacOS and BSD. When people say UNIX, they usually refer to these combined families.

Version Control

Git

The most commonly used version control system for tracking code changes.

GitHub

Popular platform for hosting Git repositories, offering collaboration features and version control tools.

Git Commands

Common commands include push (upload changes), pull (download updates), commit (save changes), and merge (combine changes).

Cloud Services

AWS

Amazon Web Services - the most commonly used cloud hosting platform.

Azure

Microsoft's cloud platform offering hosting and computing services.

GCP

Google Cloud Platform - often provides free credits for hackathons.

CS Pioneers

Ada Lovelace

Wrote one of the first computer programs and recognized the utility of general purpose computers.

Alan Turing

Created the Turing machine and helped crack the Enigma cipher in WWII.

Grace Hopper

Pioneering computer scientist and US Navy Rear Admiral who invented one of the first linkers.

Edsger W. Dijkstra

Created Dijkstra's algorithm and the semaphore concept. Worked at UT from 1994 to 1999.

Career Development

FAANG/Big Tech

Facebook/Meta, Apple, Amazon, Netflix, Google - top tech companies known for high compensation and competitive positions. Other companies of note include Nvidia and Microsoft.

Software Engineer

Develops software applications and systems. Role involves coding, testing, and maintaining software.

Project Manager

Oversees project lifecycle and team coordination. Technical background helps in planning and feasibility assessment.

Technical Interview

Coding interviews where you solve problems on a whiteboard or collaborative editor.

Behavioral Interview

Non-technical interviews focusing on experience, projects, and soft skills.

Interview Prep

Resources include LeetCode, HackerRank, and "Cracking the Coding Interview" book.

Tech Hubs

Major centers: Bay Area (SF, Silicon Valley), Seattle (Amazon, Microsoft), New York (Finance Tech), Austin (Growing Hub).

CS Fields

AI/Machine Learning

Field focused on creating systems that can learn and adapt from experience.

Data Science

Combines CS and mathematics to extract insights from structured and unstructured data.

Security

Focus on protecting computer systems from unauthorized access and attacks.

UI/UX

Design of user interfaces and experiences for software applications.