For Students

Learning Resources

Courses, tutorials, and references to sharpen your skills and get you client-ready.

Languages, Tools & Technology

Computer Science: Algorithms, Theory, and Machines

Introduces the broader discipline of computer science to people with basic familiarity with Java programming.

Open on Coursera
Learn to Program: The Fundamentals

Introduces the fundamental building blocks of programming and teaches you how to write useful programs using Python.

Open on Coursera
An Introduction to Interactive Programming in Python

A fun introduction to Python basics. Build simple interactive games such as Pong, Blackjack, and Asteroids.

Open on Coursera
Learn to Program: Crafting Quality Code

Focus on writing quality code that runs correctly and efficiently. Design, code, and validate programs, and compare different approaches to the same task.

Open on Coursera
Algorithms I

Essential algorithms and data structures with emphasis on applications and performance analysis of Java implementations. Covers sorting, searching, and iterable data types.

Open on Coursera
Algorithms II

Continues Algorithms I with deeper coverage of graph search, shortest paths, maximum flow, and string algorithms with Java implementations.

Open on Coursera
General OO Concepts and Java Development

Use Eclipse to explore the Java language — essential classes, collections, and OO fundamentals through Oracle's official tutorial.

Open on Oracle
Introduction to Programming in Java

Princeton's free online book covering the fundamentals of programming in Java — a great companion to formal coursework.

Open on Princeton
Introduction to Software Testing

Understand the fundamental principles and processes of software testing — essential for any developer working on quality-critical projects.

Open on Coursera

Ready to put these skills to work?

Apply now and start building real experience with real clients while you finish your degree.

Apply Now