Resources and reference materials for computer scientists and engineers: A work in progress.
Algorithms
- Introduction to Algorithms, Third Edition My Favorite reference Answer Key for 2nd Ed. , 3rd Ed.
- Algorithms Jeff Erickson's wonderful free resource
- Models of Computation Intro/ Intermediate theory
- The Algorithm Design Manual, 3rd Edition A good practical reference
- The Stony Brook Algorithm Repository The companion site to The Algorithm Design Manual
- The Git repos for the 2nd and 3rd edition of The Algorithm Design Manual
- Algorithms in C, Parts 1-4: Fundamentals, Data Structures, Sorting, Searching, 3rd Edition An excellent read for the C programmer
- Algorithms in C, Part 5: Graph Algorithms, 3rd Edition
- VISU ALGO Visualizing data structures and algorithms through animation
- Visualizations of Graph Algorithms A great site from TUM's math department
- Algorithms for Modern Hardware A practical site
- A Gentle Introduction to Algorithm Complexity Analysis
- Algorithms for Big Data Jelani Nelson's Harvard lecutures for Advanced Algorithms
- Hello, Algorithms! GitHub's largest open-source algorithm library
Discrete Math
- Mathematics for Computer Science Not for the faint of heart
- Mathematics for Computer Science The MIT OCW course using the above text
- The Discrete Math Resources and Help Page
- Study notes for Discrete Mathematics
- Discrete Mathematics An Open Introduction, 3rd edition
- Notes on Discrete Math Pdf Book
Data Structures / Object Oriented Design
- Design Patterns: Elements of Reusable Object-Oriented Software The essential OOAD reference
- Open Data Structures (C++) A very good and Free resource
- Design Patterns in Modern C++
- A pplying UML and Patterns. A free book
- Object Oriented Programming A free book
General Programming
- The Architecture of Open Source Applications
- Elements of Programming Theoretical and very useful
- Docs as Code
- Performance Engineering Of Software Systems
- Crafting Interpreters
Networking
- Trex: intel traffic generator
- The Cyber Plumber's Handbook
- netlink - netlink library for go
- Peterson's Computer Networks: A Systems Approach
- Computer Networking Fundamentals
- speedbump - TCP proxy with variable latency
Framework examples/Implementations
- Google Online Boutique FKA: Hipster Shop. A microservices example
- Mastodon Open Source social networking
- Sock Shop
- Robot shop
- Project pod tato Head
Benchmarking
Graph Theory
Certificates
Visualization
- Flamegraphs
- Matplotlib
- Graphviz
- Rust Macro Railroad live demo link
- D3 Tidy Tree Have not used it but it looks great
- El Grapho Looks cool haven't tried it.
- Permutation Group Visualizer parent site here
- Physically Based Rendering: Computer graphics
Data Analysis
Networking Tools
C++ Libraries
Rust
-
More Rust Links -->
- Rust for Linux
- The definitive guide to error handling in Rust
- Arenas A list of Arena crates.
- Awesome Rust Cryptography A list of actively maintained crypto libraries.
- Git Delta A syntax-highlighting pager for git, diff, and grep output.
- Tauri A framework for building tiny, blazingly fast binaries for all major desktop platforms.
- Awesome Yew List of projects using Yew
- Kellnr - The private crate registry
- Rust Is Beyond Object-Oriented, Part 1: Intro and Encapsulation
- The dark side of inlining and monomorphization
- Rust Snags
- How I Use Declarative Macros in Rust
- Rust without crates.io
- A Rust Controller for Kubernetes
- Rust programming by Gabor Szabo
- Rust Companies: a list of firms using Rust
- Rust to Assembly: Understanding the Inner Workings of Rust
- Trippy
- Small projects with Elegant code base
- What would SQLite look like if written in Rust?
- Aya
- 50 Shades of Rust Or emerging Rust GUIs in a WASM world
- Blessed: An unofficial guide to the Rust ecosystem
- Why is building a UI in Rust so hard?
- https://github.com/OWASP/API-Security
- Experiment: Improving the Rust Book
- Rust Design Patterns
- The Rust Performance Book
- Rust Companies
- Rust Core Utils
- Nmstate: A Declarative Network API
- Rust for Rustaceans by Jon Gjengset
- Comprehensive Rust
- The Algorithms - Rust
- Rust Atomics and Locks
- Awesome Rust Books
- Youtube Video: "Type-Driven API Design in Rust" by Will Crichton
- Network Programming crates
- Crate rayon: Data-parallelism library
- Crates.io: The Rust community’s crate registry
- Clippy Lints
- Easy Rust
- Rust tokens
- Rust + vim + code completion
- Rust Meetup Linz
- Awsome Rust Mentors
- Rust Programming Language Internals Forum
- Inside Rust Blog
- Rust Edition Guide
- Rust Blog
- Rust Atomics and Locks: Low-Level Concurrency in Practice
- Are we learning yet? A work-in-progress to catalog the state of machine learning in Rust
- Cargo Release
- cargo-audit: Security vulnerability check
- Cargo-Tarpaulin: A tool to determine code coverage achieved via tests
- Macros By Example
- Macros in Rust: A tutorial with examples
- Miri: An experimental interpreter for Rust's mid-level intermediate representation (MIR).
- An Introduction To Property-Based Testing In Rust
- Rust Fuzz Book
- Cargo Manifest Format
- Rustup component history
- Docs as Code: Mermaid inline diagrams
- An adventure with optimization, Rust and Z3
- My Year With Rust: The Good, The Bad, The Ugly
- Rust Anthology
- Rust quiz
- Comprehensive Rust: Goolge Android Team course
- This week in Rust
- Rust repo
- Rust Playground
- Idiomatic Rust
- Rust RFCs
- 35 Rust Learning Resources Every Beginner Should Know in 2022
- The Rustonomicon
- SERDE rust: ser/deserialization
- Beginners series to Rust
- A Guide to Porting C/C++ to Rust
- Rust API Guidelines Checklist
- How to Learn Modern Rust
- The Little Book of Rust Macros
- Create Your Own Programming Language with Rust
- Rust Language Cheat Sheet
- Rust Team Curated Videos
- Let's Get Rusty
- Crust of Rust
- Lifetime variance in Rust
- graph: A library of high-performant graph algorithms.
- CLAP: Command Line Argument Parser for Rust
- Actix: Web Framework
- Rocket: Web Framework
- Warp: Web Framework
- Tokiko: Asynchronous framework
- A list of web frameworks
Operating Systems written in Rust
Data Sources
Monitoring
Vulnerability Scanning
Programming Languages
- Stanford CS 242 Haven't looked at it in depth but it might be useful
- Introduction to Compilers and Language Design Looks good haven't read it
- Practical Foundations for Programming Languages (Second Edition) by Robert Harper. Looks good.
Architecture
Machine Learning
- The Principles of Deep Learning Theory Free (for now)
- Postgres ML Looks promising
- A CRITICAL FIELD GUIDE FOR WORKING WITH MACHINE LEARNING DATASETS
- Awesome ChatGPT Prompts
- Hugging Face Models, datasets stuff
K8s
- Awesome Docker Compose Examples
- CNCF Cloud Native Interactive Landscape
- Kubetools - A Curated List of Kubernetes Tools
- k3s lightweight Kubernetes
- Kubecon '20 slides
- Container Network Interface Specification
- loxilb
- Plugins
- bandwidth : Allows bandwidth-limiting through use of traffic control tbf (ingress/egress)
- firewall : A firewall plugin which uses iptables or firewalld to add rules to allow traffic to/from the containe
- portmap : An iptables-based portmapping plugin. Maps ports from the host’s address space to the container
- sbr : A plugin that configures source based routing for an interface (from which it is chained)
- tuning : Changes sysctl parameters of an existing interface
- bridge : Creates a bridge, adds the host and the container to it
- ipvlan : Adds an ipvlan interface in the container
- macvlan : Creates a new MAC address, forwards all traffic to that to the container
- ptp : Creates a veth pair
- host-device : Moves an already-existing device into a container
- dhcp : Runs a daemon on the host to make DHCP requests on behalf of a container
- host-local : Maintains a local database of allocated IPs
- static : Allocates static IPv4/IPv6 addresses to containers
- Docs
- Related Non Academic Articles:
- Productivity Tools:
OpenSource