This is an edited version of the original list. I have removed challenges that have no interest to me (mostly booru/chan board stuff) as well as challenges that require me to install additional software, require a different OS, or involve real life components (computer boards, VR headset, etc.).
Practical
Algorithmic
Artificial Intelligence
Compiler/Interpreter/Debugger
Emulation/Modeling
Games
π’ - Easy
π‘ - Medium
π΄ - Hard
β« - Ridiculously Hard
- π‘ Download Manager
- π‘ Make an elastic producer/consumer task queue
- π‘ IRC Client
- π’ Markov Chain Sentence Generator (Include Shitposting Capabilities)
- π‘ English Sentence Parser that Points to the Context of a Sentence
- π‘ MIDI Player + Editor
- π‘ Stock Market Simulator Using Yahoo Spreadsheet Data
- π΄ Parametric/Graphic Equalizer for .wav files (make it real-time)
- π‘ Graphing Calculator (BONUS: Graph the Function's Derivatives)
- π’ To-Do List Application (Web app or CLI)
- π΄ Verlet Integration (Verlet Cloth)
- π‘ TCP/UDP Chat Server + Client
- π΄ Music Streaming
- π‘ Shazam Clone
- π’ Chatbot (with conversation retention)
- π‘ Paint Clone
- π’ Image to ASCII Art
- π‘ Image Converter
- π‘ ID3 Reader
- π΄ Sound Synthesis (Sine, square, sawtooth, etc...)
- β« Add Realtime MIDI Playback with Custom Instruments)*
- π‘ Password Manager
- π‘ Key Press Bot
- π‘ IP/URL Obscurification (http://www.pc-help.org/obscure.htm)
- π‘ Radix Base Converter (Given a radix base, convert it to decimal)
- π‘ Encrypt a file, and upload it online
- π΄ Make a Text Editor that autosaves and includes the date in the filename
- π’ Create an HSV Color Representation
- π‘ Window Manager
- β«Basic Relational Database Software (SQL Support, Handle Relationships, Focus on Efficiency)
- π‘ Pixel Editor
- π‘ Markdown (HTML/XML) Editor
- π‘ IP Tracking Visualization
- π’ Port Scanner
- π’ Old School Demo Effect (Plasma, Tunnel, Scrollers, Zoomers, etc...)
- π‘ Bellman-Ford Simulation with at least five vertices
- π‘ Matrix Arithmetic
- π‘ File Compression Utility (Make it a GUI)
- π’ PDF Tagger
- π΄ Nonogram Generator and Solver
- π‘ Calculate Dot & Cross Product of Two Vectors
- π‘ Bismuth Fractal
- π‘ Seam Carving
- π‘ Bayesian Filter
- π΄ WMS viewer that isn't web based
- π’ Fizzbuzz (BONUS: In assembly)
- π’ RPN Calculator
- π’ Counts occurences of characters in a given string (include support for unicode characters)
- π’ Towers of Hanoi
- π‘ Music Visualizer
- π‘ Unicode Converter (Support for UTF-8, 16LE, 32LE, 32BE)
- π’ Calculate the first (n) digits of pi
- π‘ Least Squares Fitting Algorithm
- π’ Given an array of a stocks values over time, find the period of time where the stocks could have made the most money
- π’ Highest Prime Factor Calculator
- π‘ Hide and Extract Data in images (Basic Steganography) (Bonus: include .gif support)
- π‘ Web Page Crawler
- π’ Password Generator (Let User Choose Options)
- π‘ Vignere cipher encryption/decryption
- π‘ Game of Life
- π’ Caesar Cipher Cracker
- π‘ Dijkstra's Algorithm
- π’ ROT 13
- π‘ Program that displays MBR Contents
- π‘ Random Name Picker
- π’ Encrypt/Decrypt Text : Implement at least one from http://rumkin.com/tools/cipher/collection
- π’ Youtube to MP3
- π‘ Text to Hexadecimal/Binary
- π‘ Calculate the first 1,000 digits of pi iteratively
- π‘ Sierpinski Triangle
- π‘ Mandlebrot Set
- π’ Ulam Spiral
- π‘ Sudoku/n-Puzzle Solver using A* algorithm
- π‘ Connect-4 AI Player using Alpha-Beta Pruning
- π’ Basic Neural Network - Simulate individual neurons and their connections
- π‘ Real Neural Network - Implement a basic feed-forward neural network using matrices for entire layers along with matrix operations for computations
- π΄ Convolutional Neural Network - implement a CNN for handwritten digit recognition, test on MNIST dataset (Use TensorFlow, Theano, etc...)
- π‘ Virtual Machine with a Script that Writes "Hello, World"
- Basic Bootloader
- π‘ Terminal Shell (Executable Binaries, Pipe System, Redirectoin, and History) (BONUS: make it a GUI)
- π‘ HTML + JavaScript Debugger
- π‘ Write an Interpreted LISP-like programming language
- π΄ Make an application that is capable of mounting filesystems from other OSes using the FUSE model
- π΄ Pong Game as UEFI file in color (Hint: http://rodsbooks.com/efi-programming/index.html)
- π΄ Design an Esoteric Language
- π΄ C Compiler
- π΄ Turing Machine Simulator
- π΄ Read, Evaulate, Print Loop using a compiled language
- π΄ LISP Interpreter
- π‘ Chip - 8 Emulator
- π΄ Cached Interpreter
- β« Dynamic Recompiler, use dynarec/jit library
- π‘ Double Pendulum Simulation
- π‘ Constructive solid Geometry
- π΄ Ray Tracer
- π΄ Real-Time FFT Spectrum Visualizer
- π’ Generate a Compilmentary Color from any input color
- π‘ Generate a 5-Color Scheme from the most dominant tones in any image
- β«General Lambert's-Problem Solve (At least it's not rocket science... oh wait)
- π΄ TI-86 Emulator (Bonus: Include the Option to Create Programs)
- π‘ N-Body Simulator, with particles having a certain mass and radius depending on the mass that merge if they collide (Bonus: Include a GUI where you can place particles)
- π’ Eulerian Path
- π’ Draw a spinning 3D Cube
- π’ Cellular Textures
- π’ ASCII Digital Clock
- π‘ Knight's Tour
- π΄ Monster Raising/Breeding Simulator (Like DragonVale, My Singing Monsters, etc.)
- π‘ Tetris
- π’ Snake
- π‘ Pipe Dreams
- π‘ Pac Man, with different behaviors for each ghost
- π’ Rock Paper Scissors
- π΄ First-Person Engine in OpenGL (Walking, Looking Around, Jumping on Obstacles)
- π‘ Shuffle a deck of cards (Include visualization)
- π‘ Simulate a game of tag using a multi-agent system
- π‘ Scorched Earth clone
- π‘ Minesweeper
- π‘ Audio/Visual 64KB Demonstration
- π‘ Sudoku
- π΄ Danmaku (Bulle Hell) Engine
- π΄ Roguelike Engine/Dungeon Generator
- π’ Yahtzee
- π’ Oil Panic
- π‘ Chess (BONUS: Add Primitive AI)
- π΄ Go (No AI Necessary)
- π’ Connect Four
- π‘ Mastermind
- π‘ Missile Command Game
- π‘ Breakout
- π’ Simon
- π‘ Tron