2023-08-04 11:13:47 -04:00
-- Starting off:
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Hello world ' , 1 , 1 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Fizz Buzz ' , 1 , 1 ) ;
2023-08-06 22:51:57 -04:00
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Data Structures (Stack, List, Heap, Binary Tree, etc) ' , 2 , 7 ) ;
2023-08-04 11:13:47 -04:00
-- AI:
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Neural Network ' , 2 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Tensorflow Clone ' , 3 , 30 ) ;
-- Algorithms:
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Custom Allocator ' , 2 , 1 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Custom Compression Library ' , 2 , 1 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' ROT 13, ROT 47, ROT with any series ' , 1 , 1 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Vectorized SIMD Matrix Multiplier ' , 3 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Printf Suite Implementation ' , 2 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' String Manipulation Library ' , 1 , 1 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Pathfinding: Dijkstra '' s Algorithm ' , 2 , 1 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Pathfinding: A* Search Algorithm ' , 2 , 1 ) ;
-- Applied Math and Problems:
INSERT INTO project ( title , difficulty , span ) VALUES ( ' General Lambert '' s-Problem Solver ' , 0 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Solution to the 8 Queens Problem ' , 3 , 7 ) ;
-- Calculators:
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Graphing Calculator ' , 3 , 30 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Normal Calculator ' , 1 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Reverse Polish Notation Calculator (Look into dc(1)) ' , 1 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Spreadsheet (CSV Read/write) (With Excel features) ' , 2 , 7 ) ;
-- Compiler (Or Interpreter) Theory:
INSERT INTO project ( title , difficulty , span ) VALUES ( ' C Compiler ' , 3 , 30 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Holy C Compiler ' , 3 , 21 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Scheme/Lisp Compiler ' , 3 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Language Virtual Machine ' , 4 , 365 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Custom LLVM Language ' , 1 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' YACC Implementation ' , 2 , 30 ) ;
-- Networking:
INSERT INTO project ( title , difficulty , span , body ) VALUES ( ' E2EE PSK Messenger (either GUI or CLI, preferably detached from servers) ' , 5 , 7 , ' E2EE PSK Messenger (either GUI or CLI, preferably detached from servers) ' ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' HTTP Web Server ' , 5 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' IRC Client ' , 2 , 30 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Matrix Client ' , 2 , 30 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' BitTorrent Client ' , 2 , 30 ) ;
-- OS:
INSERT INTO project ( title , difficulty , span , body ) VALUES ( ' Your own Operating system ' , 4 , 30 , ' wiki.osdev.org ' ) ;
-- Rendering:
2023-08-06 22:51:57 -04:00
-- INSERT INTO project (title, difficulty, span) VALUES ('3D CAD Software', 4, 7);
INSERT INTO project ( title , difficulty , span ) VALUES ( ' 2D Vertex Editor ' , 3 , 30 ) ;
2023-08-04 11:13:47 -04:00
INSERT INTO project ( title , difficulty , span ) VALUES ( ' 3D Vertex Editor ' , 3 , 30 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Bitmap Raytracer ' , 3 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Media Player (Think MPV & VLC) ' , 3 , 30 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Music Player Daemon Implementation ' , 2 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Image to ASCII (BONUS: Use Unicode or Color) ' , 2 , 7 ) ;
-- Simulation:
2023-08-06 22:51:57 -04:00
-- INSERT INTO project (title, difficulty, span) VALUES ('Hydrodynamics', 2, 7);
-- INSERT INTO project (title, difficulty, span) VALUES ('Aerodynamics', 2, 7);
2023-08-04 11:13:47 -04:00
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Rigid Body Physics ' , 2 , 7 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Voronoi Diagram (HARDMODE: hardware rendering) ' , 1 , 7 ) ;
-- Tools (Usable and Applied Algorithms):
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Terminal Emulator ' , 3 , 7 ) ;
2023-08-06 22:51:57 -04:00
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Text Editor (Autosave with dates, Configurable binds) ' , 3 , 7 ) ;
2023-08-04 11:13:47 -04:00
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Syntax Highlighter (preferably for your own editor) ' , 2 , 30 ) ;
2023-08-06 22:51:57 -04:00
INSERT INTO project ( title , difficulty , span ) VALUES ( ' General Compression Library ' , 2 , 30 ) ;
2023-08-04 11:13:47 -04:00
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Multi-Threaded GREP Implementation (BONUS: Highlighting and line numbers)(Hint: use pThread and AIO) ' , 2 , 30 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Vector/Bitmap Image Manipulation Program ' , 2 , 30 ) ;
2023-08-06 22:51:57 -04:00
-- V4, pruned and slightly revised
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Download Manager ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Make an elastic producer/consumer task queue ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Markov Chain Sentence Generator ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' English Sentence Parser that points the Context of a Sentence ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' MIDI Player + Editor ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Stock Market Simulator Using Yahoo Spreadsheet Data ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Parametric/Graphic Equalizer for .wav files ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' To-Do List Application ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Verlet Integration ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' TCP/UDP Chat Server + Client (Bonus: No web browser needed) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Music Streaming ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Shazam ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Chatbot ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Curses Text Editor ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' paint.net Clone ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Image to ASCII Art ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Booru (Image Board) Image Downloader ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Image Converter (png -> jpeg -> avif) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' ID3 Reader ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Sound Synthesis (Sine, Square, Sawtooth, etc.) ("Fuck You" mode: Realtime MIDI Playback with Custom instruments) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' C++ IDE Plugin for your Text Editor ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Simple Version Control System supporting branches, commits with messages, unlocking, and per-file configuration of number of revisions and blame. ("Fuck You" mode: Do it all) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Imageboard (Think vichan) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Password Manager (think KeePassXC) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Torrent Client ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Booru Client ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Key Press Bot ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' IP/URL Obscurification (http://www.pc-help.org/obscure.htm) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Radix Base Converter (Give a radix base, convert it to a number, vice versa) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Chan aggregator (Lets users view multiple Chans) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Encrypt / Decrypt Tool (Using AES) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Create a HSV Color Representation ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Window Manager (Bonus: for Wayland) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Basic Relational Database Software (SQL Support Handle Relationships, Focus on Efficiency) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Pixel Editor ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Trivial File Transfer Protocol (TFTP): Allows a client to put a file onto a remote host and retrieve it ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Markdown (HTML/XML) Editor ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' IP Tracking Visualization ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Port Scanner ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Old School Demo Effect (Plasma Tunnel, Scrollers, Zoomers, etc...) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Fizzbuzz (Bonus: in Machine Code / Assembly) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' RPN Calculator ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Coreutils implementation of wc that supports printing numbers optionally in a human readible format (Bonus: for the rest of Coreutils) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Towers of Hanoi ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Music Visualizer ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Unicode Converter (Support for UTF-8, 16LE, 32LE, and 32BE) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Calculate nth digits of pi (Bonus: arbitrary precision, what is the 2^2082 digit of pi?) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Least Squares Fitting Algorithm ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Given an Array of Stocks values over time, find the period of time where the stocks could have made the most money ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Highest Prime Factor Calculator ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Hide and Extract Data in images (Basic Steganography) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Web Page Crawler ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Password Generator (Configurable) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Vigenère cipher ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Game Of Life (Bonus: Save load state / drop-in constructions) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Caesar Cipher Cracker ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Dijkstras Algorithm ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Caesar, ROT 13, ROT 47 ciphers (Bonus: In Assembly) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Program that displays MBR/GUID contents ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Random Name Picker (Bonus: Fetches data from the internet) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Youtube to MP3 ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Text to Hexadecimal, Octal, and Binary ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Calculate the first 1,000 digits of pi iteratively ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Sierpinski Triangle ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Mandlebrot Set ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' OpenAI Gym Project ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' AI for Roguelikes ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Sudoku Solver (Using A* algorithm) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Connect-4 AI Player using Aplha-Beta Pruning ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Basic Neural Network - Simulate individual Neurons and their connections ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Real Neural Network - Implement a basic feed forward neural network using matrices for entire layers along with matrix operations for computation ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Convolutional Neural Network: For handwritten digit recognition, test on MNIST database (Use TensorFlow, Theano, etc) ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Convolutional Neural Network: Implement your own Convolutional N.N. for handwritten digit recognition. ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Virtual Machine with a script that writes "Hello, World!" ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Basic Bootloader ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Terminal Shell (Executable Binaries, Pipes, Redirection, History,) (Bonus 1: Supports VT100) (Bonus 2: Make it have its own Terminal Emulator ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' HTML + JavaScript Debugger ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' Write an Interpreted LISP-like Programming Language ' , 1000 , 1000 ) ;
INSERT INTO project ( title , difficulty , span ) VALUES ( ' make an application tha tis capable of mounting filesystems from othe OSes using the FUSE model ' , 1000 , 1000 ) ;