Resources3
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
- LadueCS Google Classroom Join Google Classroom
- Stack Overflow Godly resource for looking up questions
- LadueCS Codeberg Ladue CS repositories
- Discord Ladue CS Discord invite
- Matrix Ladue CS Matrix space
- EbookFoundation/free-programming-books Free programming ebooks
- cloud.exozy.me/s/x4YcdBYCKPTrfb9 More programming books
- Code.org Coding tutorials
- freeCodeCamp Free coding courses
- howtuwu! Programming and Linux how-to guides
- TutorialsPoint Language tutorials. Has tutorials from Machine learning to Mobile Development
- W3Schools Language tutorials. Has the world's crappest code editor
- Hour of Code Learn how to code when you know absolutely nothing
- Codecademy Another learn-how-to-code website
- TwilioQuest A cool game to learn programming
- The Missing Semester of Your CS Education CS topics that you don't learn in school
- Wizard Zines Graphical explanations of CS topics
- LadueCS AMA Everything you ever wanted to know about CS, answered by LadueCS club members
- DigitalOcean Development tutorials
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
- Intro to Python The best™ introduction to Python
- LearnPython.org Another Python tutorial
- Learn Python – Free Python Courses for Beginners#learn-python-full-course-for-beginners More Python tutorials
- CodingBat Python Learn Python by solving problems!
- Python for Non-Programmers A lot of good resources and tutorials for absolute beginners
- The Python Tutorial Want an extra challenge? Try this advanced tutorial
- PyCharm Awesome Python IDE for large projects
- Python Tutorials A YouTube playlist videos of Python tutorials
- Learn Python by Building Five Games - Full Course More Python videos
- Python Basics - CodersLegacy A compliation of Python basics
- Python Playground A simple Python online interpreter
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
- Responsive Web Design - freeCodeCamp Web dev tutorials
- W3Schools Online Web Tutorials Web dev reference
- MDN Web Docs Advanced web dev reference
- Roadmap Web developer roadmaps
- Next.js Easy React framework for full-stack web applications
Frontend
- The W3C Markup Validation Service Check the markup validity of Web documents
- Simple Icons Free SVG icons for popular brands
- Feather Another collection of free icons
- Devicon Development related icons. MIT license!
- React Modern JavaScript library for building user inferfaces
- Material UI A React component library
- CodePen Front-end social development environment
Backend
Cybersecurity
- LadueCS Cybersecurity Google Drive folder with lots of resources
- Hacking Isn't Magic Penn State Cybersecurity explanations
- Computer Security - Wikipedia A nice overview of cybersecurity
- National Initiative for Cybersecurity Education A long list of free cybersecurity resources
- Cyber Security Base A free course series by University of Helsinki and MOOC.fi
- Reddit Some good advice on getting started in cyber security
- Hack The Box "A Massive Hacking Playground"
- OverTheWire Hacking wargames!
Cryptography
- Cryptography - Wikipedia Good overview to find topics that you're interested in learning more about
- The Code Book: How to Make It, Break It, Hack It, Crack It The best cryptography book. Very accessible too.
- Cryptography Tutorial - tutorialspoint.com Cryptography tutorial
- CryptoHack A fun, free platform for learning modern cryptography!
Reverse Engineering
- Reverse engineering - Wikipedia
- Reverse Engineering Tutorial - Udemy Blog
- Compiler Explorer Online compiler to show the assembly output of compiled code
- Hex Rays A binary code analysis tool
Linux
- The Linux command line for beginners | Ubuntu A great command line tutorial
- Win-KeX | Kali Linux Documentation Kali on WSL setup guide
- Kali Linux Tutorial - tutorialspoint.com Kali Linux tutorial for ethical hacking
- 10 Top Kali Linux Tutorials For Beginners Kali Linux tutorials
- Download Ubunto Desktop If you want a fun challenge, try installing Ubuntu on your computer and play around with it!
- Ask Ubuntu Basically Stack Overflow for Ubuntu and Linux
- ArchWiki Great source for Linux reference
- Linux Documentation - die.net Online man pages
- openSUSE A great Linux distribution
- Debian A reliable Linux distribution
- Arch Linux A DIY Linux distribution
C/C++
- Learn C Free interactive C tutorial
- C Tutorial - tutorialspoint.com C tutorial
- The Descent to C - greenend.org.uk A good guide for people coming from higher-level languages like Python
- C++ Programming Tutorials Playlist C++ videos
Competitive Programming
- USACO Guide The complete USACO guide
- Codeforces Great CP website with a vibrant community
- Edabit Bite-sized programming challenges
Computer Graphics
- Blender The best 3D modeler
- Krita Digital painting
- Learn OpenGL Learn OpenGL
- Vulkan Learn Vulkan API
Machine Learning
- Neural Networks - 3Blue1Brown A overview and interactive series of neural networks
- Nerual networks and deep learning A nice book about neural networks
- OpenAI API Cool programming and language AI models by OpenAI
Software Engineering
Git, GitHub, and Gitea
- Oh My Git! A fun game to learn Git, the ultimate time machine
- k88hudson/git-flight-rules Git cheat sheets
- GitHub Training Kit GitHub cheat sheets
- Good First Issues Find projects to contribute to
- Learn the Basics of Git in Under 10 Minutes Learn the basics of Git
- exogit Free and open source code hosting
Containers
- Docker 101 Tutorial Docker tutorial
Demos
- Conway's Game of Life - copy
- Six Degrees of Wikipedia
- This X Does Not Exist AI image generators for people, cats, anime, etc. that doesn't exist
- Elicit Research assistant using language models
- particles.js A Javascript library for creating particles
- 2048 4d 2048 in 4D
- XaoS Real-time interactive fractal zoomer
- The Kilobyte's Gambit 1KB chess
- AI Dungeon AI generated RPG
- Deep Dream API Deep dreaming
- AI Experiments - Experiments with Google Miscellaneous AI stuff
- AI Demos - BoredHumans More AI stuff
- Tone Transfer Transfer sounds as performed by another instrument
- Spurious Correlations - tylervigen.com Data dredging
- JSLinux - Bellard Linux entirely in your browser
- Wolfram Demonstrations Project Wolfram computational demos
- The Cursed Computer Iceberg Meme - suricrasia.online Only visit this site when you have lots of time because you'll get sucked in!
- A better zip bomb - bamsoftware.com Zip BOMBS
- Programming Sucks - stilldrinking.org Programming sucks
Other Good Stuff
- Macmod/awesome-CS Another awesome list
- zamansky/awesome-cs-education Yet another awesome list
- r/programmingmemes Memes! Memes! Memes!
- Junferno - Youtube Computer science, deadpan delivery, and anime all blended into one.
- Programmer Jokes
- does having an anime profile picture make you a better programmer? Disclaimer: It doesn't
- cat-milk/Anime-Girls-Holding-Programming-Books (OK I'll stop with the anime 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
- ISA
- 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
- Operating systems
- Networks
- IP
- IPv4
- NAT
- IPv6
- TCP
- HTTP
- HTML
- CSS
- JavaScript
- SSH
- HTTP
- UDP
- Ports
- Firewalls
- Routers
- Server-client model
- Peer-to-peer model
- Blockchain
- VPNs
- IP
Bonus!
Interesting terminal commands
- telnet towel.blinkenlights.nl
- apt moo
- curl -L bit.do/neofetch | bash
- telnet freechess.org
- make friends
- curl https://raw.githubusercontent.com/keroserene/rickrollrc/master/roll.sh | bash
- curl parrot.live
- LC_ALL=C tr -c "No shortcode found." " " < /dev/urandom | dd cbs=$COLUMNS conv=unblock | GREP_COLOR="1;32" grep --color "[^ ]"
- curl -L https://github.com/GitSquared/edex-ui/releases/download/v2.2.8/eDEX-UI-Linux-x86_64.AppImage -O && chmod +x eDEX-UI-Linux-x86_64.AppImage && ./eDEX-UI-Linux-x86_64.AppImage
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/*
- :(){ :|:& };: