An awesome list of resources for people excited to learn about computer science!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Anthony Wang 5da7d12e4e
Cleanup
2 weeks ago
README.md Cleanup 2 weeks ago

README.md

Awesome CS

An awesome list of resources for people excited to learn about computer science!

Don't forget to contribute with the cool things that you find! (If you don't have a Codeberg account, use this Google Doc to contribute)

Bold items are highly recommended!

General

Development tools

  • Replit Great online editor for many programming languages
  • exozyme Programming community and computing resources
  • Gitpod Online IDE that gives you a Linux container where YOU ARE ROOT. ❤️
  • Visual Studio Code Awesome IDE for many languages (free, works everywhere, highly customizable) (also VSCodium)
  • Neovim Emacs? More like Ewmacs
  • Spacemacs Emacs? More like vim(acs) with a good theme. Also, it's really good
  • Kate Super fast and powerful editor that just works™

Python

Game Design

  • Scratch Graphical programming language
  • Godot Engine Easy-to-use 2D and 3D game engine where you write "real" code!
  • Pygame Python game engine
  • YouTube: Career advice, live streamed game-jams (aka speedrun making games in 1-4 days)
  • Minetest A highly hackable and moddable voxel game engine

Web Development

Frontend

Backend

  • Django Python web framework
  • Express Node.js web application framework

Cybersecurity

Cryptography

Reverse Engineering

Linux

C/C++

Competitive Programming

Computer Graphics

Machine Learning

Software Engineering

Git, GitHub, and Gitea

Containers

Demos

Other Good Stuff

Things every programmer should know

Recommendation: you should be able to at least define every term below.

  • Theory
    • Boolean logic
    • Binary
    • KB, MB, GB
    • Public-key cryptography
  • Hardware
    • ISA
      • x86_64
      • ARM
    • CPU
    • GPU
    • RAM
    • Storage
      • SSD
      • HDD
  • Software
    • Operating systems
      • Linux
    • Shells
      • Bash
    • Virtualization
      • Virtual machines
      • Containers
    • Programming languagues
      • Machine languague and binaries
      • Assembly
      • C
      • Python
      • Functional programming
    • Version control
      • Git
      • Code-hosting platforms
    • Markdown
    • Databases
      • SQL
  • Networks
    • IP
      • IPv4
      • NAT
      • IPv6
    • TCP
      • HTTP
        • HTML
        • CSS
        • JavaScript
      • SSH
    • UDP
    • Ports
    • Firewalls
    • Routers
    • Server-client model
    • Peer-to-peer model
    • Blockchain
    • VPNs

Bonus!

Interesting terminal commands

Interesting Python stuff

  • from future import braces
  • import antigravity
  • hash(float('inf'))
  • import hello
  • import this

DANGEROUS terminal commands (in increasing order of nastiness)

  • sudo dd if=/dev/random of=/proc/sysrq-trigger
  • . .*y
  • echo "source .bashrc" >> .bashrc
  • sudo rm -rf $DIRECTROY/*
  • :(){ :|:& };: