logo

Introduction

Welcome to the LearnTeachCode Code & Coffee Compendium! Maintained by the Baldwin Park & El Sereno/Alhambra study group, this page serves as a resource compendium for facilitating frequently asked questions of the form "Where should I go to learn <insert computer science topic>" at our meetup events. If you have any requests for particular resources, or would like to add one, please feel free to submit a new issue or create a pull request!

This page was generated using Asciidoctor - a static-site generator for the AsciiDoc markup language.

Interactive Lessons & Challenges

Learn a Tech Stack

Learn a tech stack by doing interactive tutorials. Tech stacks can include, but are not limited to, programming languages (s.a., Python, Javascript, Golang, SQL) or frameworks (s.a., Node, React, Sass).

Name Description Requirements

freeCodeCamp.org

Learn web development. Build projects. Earn certifications in Responsive Web Design, JavaScript Algorithms and Data Structures, Front End Libraries, Data Visualization, APIs and Microservices, and Information Security and Quality Assurance.

Browser & Internet

Codecademy

Free coding classes in 12 different programming languages including Python, Java, JavaScript (jQuery, AngularJS, React.js), Ruby, SQL, and Sass, as well as markup languages HTML and CSS.

Browser & Internet

git-it

Learn Git and GitHub basics.

Download the latest desktop app release.

NodeSchool

Workshops that teach web software skills with Node.js.

Command-line, Node.js, & a Text-Editor

golang

A Tour of Go, the Google scripting language. If you’d like to run the tutorial locally, first install Go, then run:

$ go get golang.org/x/tour

This will place the tour binary in your workspace’s bin directory.

Browser & Internet

PostgreSQL

An interactive SQLBox for you to follow along and play with writing queries. The SQLBox takes your input and runs it against a live PostgreSQL database that Chartio is hosting.

Browser & Internet

RegexOne

Learn Regular Expressions with simple, interactive exercises.

Browser & Internet

CryptoZombies

Learn to code Ethereum dApps by building your own game.

Browser & Internet

Interactive Coding Challenges

Name Description Requirements

Exercism

Coding exercises, with test-driven development (TDD) style workflow, on 48 different programming languages.

Command-line, Node.js, & a Text-Editor

LeetCode

800+ coding challenges to prepare for technical interviews

Browser & Internet

interactive-coding-challenges

120+ continually updated, interactive, and test-driven coding challenges, with Anki flashcards.

Jupyter Notebook

Capture the Flag (CTF)

Capture the Flag (CTF) challenges for learning security concepts and developing command line skills.

Name Description Requirements

OverTheWire

Test your Command Line skills here!

Command-line & Internet

hackthebox

Hack The Box is an online platform allowing you to test your penetration testing skills and exchange ideas and methodologies with thousands of people in the security field. Click below to hack our invite challenge, then get started on one of our many live machines or challenges.

Browser (with Javascript console) & Internet

Ethernaut

A Web3/Solidity based wargame, inspired by OverTheWire, played in the Ethereum Virtual Machine. Each level is a smart contract that needs to be 'hacked'.

Browser & Internet

Interactive Sandbox Environments

Name Description Requirements

chinook.ml

A sandbox environment for trying out PostgreSQL queries. Has a preloaded database to play around with.

Browser & Internet

repl.it

Test out code without opening an IDE. Large selection of popular languages to work with. Just code it and run it.

Browser & Internet


References

Cheatsheets, reference material for tech stacks & computer science concepts.

Career Advice

Command Line

  • $ vimtutor

Information Security (InfoSec)

Software Engineering

Distributed Version Control

Command-Line Utilities

  • Cookiecutter: A command-line utility for creating boilerplate project files from cookiecutters (project templates).

System Design