Algorithms & Data Structures
Time Complexity The amount of steps required for an algorithm to execute. Big O Notation Maximum time for n input size. (Upper bound - worst case) β¦
Building a Computer From Scratch
From diodes and transistors, to a Turing complete computer.
C Compiling
A compiler converts C code into machine code in 4 steps: Preprocessing (Convert all preprocessor instructions (#β¦) to C code.) Compiling (Convert C β¦
C Language
The C Programming Language
C Snippets
Cast Strings to Numbers The atoi() function in stdlib is implemented similarly to the one below. ASCII encodes numbers in order, after special β¦
Databases [SQL]
Flat-File Databases A “table” written into a single file. The most common file type for this purpose is CSV. The CSV format reads each β¦
Debugging [GDB]
GDB Debugging Compile with Debug Information To allow gdb access to the source code (Provides debug symbols - Do not share publicly as it contains the β¦
Encryption [GPG]
Symmetric Encryption User A sends a password to user B. The password is used to encrypt the messages. A secure way to share the password is required. β¦
Firewall [UFW]
A firewall monitors and controls all incoming and outgoing network traffic, and can be implemented at the hardware or software level. See All Open β¦
Flask
Flask is a web framework for Python. It facilitates the creation of web apps (dynamic web pages). Run Flask Flask comes with its own server for β¦
HTML
HTML is a markup language: The foundation of every website, as it structures content and provides information such as text, images and other media to β¦
HTTP [CURL]
HTTP HTTP (Hypertext Transfer Protocol) is a communication protocol used to send messages between the client and server, mainly used for the web. β¦
HTTPS and SSL Certificates
HTTP(s) The http protocol sends data as plaintext, which is an issue when sharing sensitive data such as messages and passwords. https uses TLS to β¦
IRC
The IRC Protocol IRC is a very simple communication protocol that allows users to chat in real time. IRC is very lightweight, but does not encrypt β¦
Linux
Kernel Linux is a kernel: the core of an operative system. Operating systems that use the Linux kernel are called Linux Distros (Distributions). A β¦
Password Manager [PASS]
Password Managers A password manager is a program responsible for saving all your passwords. You could have a single password and use it for β¦
Python
Python3 Documentation number: Replace with a number. *object: Any number of objects. [, ndigits]: Anything between [] is optional. Run Python Code β¦
SSH
SSH is a protocol for accessing a terminal remotely. For SSH to work, the remote machine needs to have an OpenSSH instance running and listening for β¦
Terminal Multiplexer [TMUX]
Overview tmux is a multiplexer that, among other things, is able to: Preserve a terminal session if it is closed or lost. Access an old session from a β¦
Version Control [GIT]
Git is a version control system first developed by Linus Torvalds. It facilitates collaboration on large projects, keeps track of changes, and allows β¦
WSL2
Windows’ WSL allows for installing a Linux subsystem on a Windows host. WSL2 enhances WSL with support for launching GUI apps as if they were β¦
