Resource Library
Below you can find all of the different resources in the Guide: practice problems, former Google interview questions, online courses, videos, and more.
How to contribute to an open source project
Are you interested in writing code for an open source project? This site lists resources you can use to find open source projects to contribute to. It's a great resource for those no open source experience.
ESTIMATED TIME: 20-30 MINSCommand Line tutorial
Are you new to the command line? Learn the basics of the command line interface through this tutorial in which you'll learn to write and execute your first few commands. (Django Girls)
ESTIMATED TIME: 20-30 MINSHow to use the command line
Have you ever opened the terminal window on your machine, but weren't shown what commands to use? Check out this video to learn all about the basics, including the most common commands. (YouTube)
ESTIMATED TIME: 10-20 MINSWhat is version control?
What is version control and when should you use it? This video explains what version control is while walking you through the basics of Git, the most popular version control tool used today. (YouTube)
ESTIMATED TIME: UNDER 10 MINSGit Handbook
Git is a version control tool that software engineers use to collaboratively write code. This article gives a high-level overview of how Git works while explaining what a version control system is. (GitHub)
ESTIMATED TIME: 20-30 MINSGit Branching tutorial
Git can be confusing, but is easier to understand in parts. This interactive tutorial zooms in on Git branching and gives you a step-by-step demonstration of how branching works — visuals included! (LearnGitBranching)
Git cheat sheet
There are many Git commands, sometimes too many to even keep track of! Keep this cheat sheet, which lists and explains different Git commands, on hand for reference when you need a refresher. (GitHub)
ESTIMATED TIME: 10-20 MINSHow to read other people's code
Picking up where someone else left off can be intimidating. This article provides 8 tips on how you can best read others' code when investigating an already existing codebase. (Atomic Object)
ESTIMATED TIME: 10-20 MINSWhat to look for in a code review
Reviewing and approving other people's code is an integral part of software engineering. Check out this article by Google to learn about what you should look for when reviewing code written by others. (GitHub)
ESTIMATED TIME: 10-20 MINSGoogle Summer of Code Archive
Whether or not you're a student, you can look back and learn from this archive of past open-source Google Summer of Code projects dating back to 2005. (Google Developers)
Benefits of open source projects
Illustrate the benefits of participating in the open source community and tout the advantages of mentorship to your students by reading this interview with the winner of Red Hat's Open Source Award. (OpenSource)
ESTIMATED TIME: 20-30 MINSGoogle Code Jam
Code Jam is Google's international computer programming competition. Test your skills against the best by trying these enjoyable but demanding problems from past rounds. (Google)