This is my take on all the challenges of this image I found browsing the Internet. It seemed really interesting for me to try and beat some challenges and I decided to create this repo to write some code for those challenges. I will be solving them in no pre-defined order, with the languages I think fit the best for me.
Even though I have early access to the GitHub copilot, I will keep it disabled when solving these problems to practice my research and problem-solving skills
Here is my progress so far (tip: you can sort this list using GitHub sort content) :
| Number | Name | Difficulty | Progress | Category |
|---|---|---|---|---|
| 001 | Download Manager | 🟨 | ❌ | Practical |
| 002 | Elastic Producer/Consumer Task Queue | 🟨 | ❌ | Practical |
| 003 | IRC Client | 🟨 | ❌ | Practical |
| 004 | Markov Chain Sentence Generator | 🟩 | ✅ | Practical |
| 005 | English Sentence Parser | 🟨 | ❌ | Practical |
| 006 | MIDI Player & Editor | 🟨 | ❌ | Practical |
| 007 | Stock Market Simulator (Yahoo! Data) | 🟨 | ❌ | Practical |
| 008 | Real Time Parametric/Graphic Equalizer (.wav files) | 🟥 | ❌ | Practical |
| 009 | Graphing Calculator | 🟨 | ❌ | Practical |
| 009 - Bonus | Graphing the function's derivatives | 🟥 | ❌ | Practical |
| 010 | To-Do List App (Web and/or CLI) | 🟩 | ❌ | Practical |
| 011 | Verlet Integration (Verlet Cloth) | 🟥 | ❌ | Practical |
| 012 | TCP/UDP Chat Server & Client | 🟨 | ❌ | Practical |
| 013 | Music Streaming | 🟥 | ❌ | Practical |
| 014 | Shazam | 🟨 | ❌ | Practical |
| 015 | Chatbot (with conversation retention) | 🟩 | ❌ | Practical |
| 016 | Curses Text Editor (Vim Keybindings) | 🟨 | ❌ | Practical |
| 017 | Paint Clone | 🟨 | ❌ | Practical |
| 018 | Image to ASCII Art | 🟩 | ❌ | Practical |
| 019 | Booru (Image Board) Image Downloader | 🟨 | ❌ | Practical |
| 020 | Image Converter | 🟨 | ❌ | Practical |
| 021 | ID3 Reader | 🟨 | ❌ | Practical |
| 022 | Sound Synthesis (sine, square, sawtooth... waves) | 🟥 | ❌ | Practical |
| 022 - Bonus | Real Time MIDI Playback (with custom instruments) | 🟪 | ❌ | Practical |
| 023 | C++ IDE Plugin for Sublime (or Atom) | 🟥 | ❌ | Practical |
| 024 | Simple Version Control (checkout, commit...) | 🟨 | ❌ | Practical |
| 025 | Image board | 🟩 | ❌ | Practical |
| 026 | Password Manager | 🟨 | ❌ | Practical |
| 027 | Torrent Client (CLI or GUI) | 🟥 | ❌ | Practical |
| 028 | Booru Client | 🟥 | ❌ | Practical |
| 029 | Key Press Bot | 🟨 | ❌ | Practical |
| 030 | IP or URL Obscurificator | 🟨 | ❌ | Practical |
| 031 | Radix Base Converter (Radix to Decimal) | 🟨 | ❌ | Practical |
| 032 | Chan Aggregator | 🟥 | ❌ | Practical |
| 032 - Bonus | 4ChanX & Archiving functionalities | 🟥 | ❌ | Practical |
| 033 | File Encrypter & Uploader | 🟨 | ❌ | Practical |
| 034 | Auto-Save Text Editor (with date in the filename) | 🟥 | ❌ | Practical |
| 035 | HSV Color Representation | 🟩 | ❌ | Practical |
| 036 | Window Manager | 🟨 | ❌ | Practical |
| 037 | Basic Rational Database Software | 🟪 | ❌ | Practical |
| 038 | Pixel Editor | 🟨 | ❌ | Practical |
| 039 | Trivial File Transfer Protocol (TFTP) | 🟨 | ❌ | Practical |
| 040 | Markdown (HTML and/or XML) | 🟨 | ❌ | Practical |
| 041 | IP Tracking Visualization | 🟨 | ❌ | Practical |
| 042 | Port Scanner | 🟩 | ❌ | Practical |
| 043 | Old School Demo Effect (Plasma, Tunnel...) | 🟩 | ❌ | Practical |
| 044 | FizzBuzz | 🟩 | ✅ | Algorithmic |
| 044 - Bonus | FizzBuzz written in Assembly | 🟨 | ❌ | Algorithmic |
| 045 | RPN Calculator | 🟩 | ❌ | Algorithmic |
| 046 | Count occurrences of character (Unicode Support) | 🟩 | ❌ | Algorithmic |
| 047 | Towers of Hanoi | 🟩 | ❌ | Algorithmic |
| 048 | Music Visualizer | 🟨 | ❌ | Algorithmic |
| 049 | Unicode Converter (UTF-8, 16LE, 32LE & 32BE) | 🟨 | ❌ | Algorithmic |
| 050 | Calculate the first n digits of π (pi) | 🟩 | ❌ | Algorithmic |
| 051 | Least Squares Fitting Algorithm | 🟨 | ❌ | Algorithmic |
| 052 | Find the best period for making most money in stocks | 🟩 | ❌ | Algorithmic |
| 053 | Highest Prime Factor Calculator | 🟩 | ❌ | Algorithmic |
| 054 | Hide & Extract Data in Images (Basic Steganography) | 🟨 | ❌ | Algorithmic |
| 054 - Bonus | Include .gif support for the Basic Steganography | 🟥 | ❌ | Algorithmic |
| 055 | Web Page Crawler | 🟨 | ❌ | Algorithmic |
| 056 | Password Generator (with User Interaction) | 🟩 | ❌ | Algorithmic |
| 057 | Vignére Cipher Encryption & Decryption | 🟨 | ❌ | Algorithmic |
| 058 | Game Of Life | 🟨 | ❌ | Algorithmic |
| 059 | Caesar Cipher Encryption & Decryption | 🟩 | ❌ | Algorithmic |
| 060 | Dijkstra's Algorithm | 🟨 | ❌ | Algorithmic |
| 061 | ROT 13 Encryption & Decryption | 🟩 | ❌ | Algorithmic |
| 062 | Display MBR Contents | 🟨 | ❌ | Algorithmic |
| 063 | Random Name Picker | 🟨 | ❌ | Algorithmic |
| 064 | Encrypt & Decrypt (from the rumkin.com collection) | 🟩 | ❌ | Algorithmic |
| 065 | YouTube to MP3 Converter | 🟩 | ❌ | Algorithmic |
| 066 | Text to Hexadecimal & Binary Converter | 🟩 | ❌ | Algorithmic |
| 067 | Calculate the first 1000 digits of |
🟨 | ❌ | Algorithmic |
| 068 | Sierpinski Triangle | 🟩 | ❌ | Algorithmic |
| 069 | Mandelbrot Set | 🟨 | ✅ | Algorithmic |
| 070 | OpenAI Gym Project | 🟥 | ❌ | Artificial Intelligence |
| 071 | AI for Rogue-likes | 🟨 | ❌ | Artificial Intelligence |
| 072 | Sudoku or n-Puzzle Solver using A* algorithm | 🟨 | ❌ | Artificial Intelligence |
| 073 | Connect-4 AI Player using Alpha-Beta Pruning | 🟨 | ❌ | Artificial Intelligence |
| 074 | Basic Neural Network | 🟩 | ❌ | Artificial Intelligence |
| 075 | Real Neural Network | 🟨 | ❌ | Artificial Intelligence |
| 076 | Convolutional Neural Network (using TensorFlow, e.g.) | 🟨 | ❌ | Artificial Intelligence |
| 077 | Convolutional Neural Network (from scratch) | 🟥 | ❌ | Artificial Intelligence |
| 078 | "Hello World" on a Virtual Machine | 🟨 | ❌ | Compiler/Interpreter/Debugger |
| 079 | Basic Bootloader (with extended file system) | 🟪 | ❌ | Compiler/Interpreter/Debugger |
| 080 | Terminal Shell (Executable Binaries, Pipe System...) | 🟨 | ❌ | Compiler/Interpreter/Debugger |
| 080 - Bonus | Terminal Shell but GUI | 🟥 | ❌ | Compiler/Interpreter/Debugger |
| 081 | HTML & JavaScript Debugger | 🟨 | ❌ | Compiler/Interpreter/Debugger |
| 082 | Interpreted LISP-Like Programming Language | 🟨 | ❌ | Compiler/Interpreter/Debugger |
| 083 | Application capable of mounting File systems (FUSE) | 🟥 | ❌ | Compiler/Interpreter/Debugger |
| 084 | UART Game in Assembly | 🟨 | ❌ | Compiler/Interpreter/Debugger |
| 085 | Colored Pong Game as a UEFI file | 🟥 | ❌ | Compiler/Interpreter/Debugger |
| 086 | Designing an Esoteric Language | 🟥 | ❌ | Compiler/Interpreter/Debugger |
| 087 | C Compiler | 🟥 | ❌ | Compiler/Interpreter/Debugger |
| 088 | Turing Machine Simulator | 🟥 | ❌ | Compiler/Interpreter/Debugger |
| 089 | Read, Evaluate, Print Loop using a compiled language | 🟥 | ❌ | Compiler/Interpreter/Debugger |
| 090 | Static Website Generator (Template to HTML & CSS) | 🟨 | ❌ | Compiler/Interpreter/Debugger |
| 091 | Chirp-8 Emulator | 🟨 | ❌ | Emulation/Modeling |
| 091 - Bonus 1 | Chirp-8 Emulator with Cached Interpreter | 🟥 | ❌ | Emulation/Modeling |
| 091 - Bonus 2 | Chirp-8 Emulator with Dynamic Recompiler | 🟥 | ❌ | Emulation/Modeling |
| 092 | Double Pendulum Simulation | 🟨 | ❌ | Emulation/Modeling |
| 093 | Constructive Solid Geometry | 🟨 | ❌ | Emulation/Modeling |
| 094 | Ray Tracer | 🟥 | ❌ | Emulation/Modeling |
| 095 | Real-Time Fast Fourier Transform Spectrum Visualizer | 🟥 | ❌ | Emulation/Modeling |
| 096 | Complimentary Color Generator based on an Input Color | 🟩 | ❌ | Emulation/Modeling |
| 097 | 5-Color Scheme Generator from any input image | 🟨 | ❌ | Emulation/Modeling |
| 098 | General Lambert's-Problem Solver 🚀 | 🟪 | ❌ | Emulation/Modeling |
| 099 | TI-86 Emulator | 🟥 | ❌ | Emulation/Modeling |
| 099 - Bonus | TI-86 Emulator with Option to Create Programs | 🟥 | ❌ | Emulation/Modeling |
| 100 | N-Body Simulator with Merging Particles | 🟨 | ❌ | Emulation/Modeling |
| 101 | Eulerian Path | 🟩 | ❌ | Emulation/Modeling |
| 102 | Spinning 3D Cube | 🟩 | ❌ | Emulation/Modeling |
| 103 | Cellular Textures | 🟩 | ❌ | Emulation/Modeling |
| 104 | Knight's Tour | 🟨 | ❌ | Games |
| 105 | Monster Raising and/or Breeding Simulator | 🟥 | ❌ | Games |
| 106 | Tetris | 🟨 | ❌ | Games |
| 107 | Snake | 🟩 | ❌ | Games |
| 108 | Pipe Dreams | 🟨 | ❌ | Games |
| 109 | Pac-Man, with Different Behaviors for each Ghosts | 🟨 | ❌ | Games |
| 110 | Dragon Quest (Basic RPG Engine) | 🟥 | ❌ | Games |
| 111 | Rock Paper Scissors | 🟩 | ❌ | Games |
| 112 | First-Person Engine in OpenGL | 🟥 | ❌ | Games |
| 112 - Bonus | First-Person Engine in OpenGL, with VR support | 🟪 | ❌ | Games |
| 113 | Shuffle a Deck of Cards, with visuals | 🟨 | ❌ | Games |
| 114 | Simulation of a Game of Tag (with Multi-Agent System) | 🟨 | ❌ | Games |
| 115 | Wolfenstein Clone (FPS, 2D that appears to be 3D) | 🟥 | ❌ | Games |
| 116 | Scorched Earth Clone | 🟨 | ❌ | Games |
| 117 | Minesweeper Clone | 🟨 | ❌ | Games |
| 118 | Audio/Visual 64Kb Demonstration | 🟨 | ❌ | Games |
| 119 | Sudoku | 🟨 | ❌ | Games |
| 120 | Danmaku (Bullet Hell) Engine | 🟥 | ❌ | Games |
| 121 | Roguelike Engine (Dungeon Generator) | 🟥 | ❌ | Games |
| 122 | Game Engine in Unity | 🟩 | ❌ | Games |
| 123 | Yahtzee | 🟩 | ❌ | Games |
| 124 | Oil Panic | 🟩 | ❌ | Games |
| 125 | Chess | 🟨 | ❌ | Games |
| 126 | Go (no AI) | 🟥 | ❌ | Games |
| 127 | Connect-4 | 🟩 | ❌ | Games |
| 128 | Mastermind | 🟨 | ❌ | Games |
| 129 | Missile Command Game | 🟨 | ❌ | Games |
| 130 | Tron | 🟨 | ❌ | Games |
| 131 | Breakout | 🟨 | ❌ | Games |
| 132 | Simon | 🟩 | ❌ | Games |
| 133 | LISP Interpreter | 🟥 | ❌ | Compiler/Interpreter/Debugger |
| 134 | Ulam Spiral | 🟩 | ❌ | Algorithmic |
| 135 | Bellman-Ford Simulation (at least 5 Vertices) | 🟨 | ❌ | Practical |
| 136 | Matrix Arithmetic | 🟨 | ❌ | Practical |
| 137 | File Compression Utility | 🟨 | ❌ | Practical |
| 138 | PDF Tagger | 🟩 | ❌ | Practical |
| 139 | Nonogram Generator & Solver | 🟥 | ❌ | Practical |
| 140 | Calculate Dot & Cross Product of 2 Vectors | 🟨 | ❌ | Practical |
| 141 | Bismuth Fractal | 🟨 | ❌ | Practical |
| 142 | Seam Carving | 🟨 | ❌ | Practical |
| 143 | Bayesian Filter | 🟨 | ❌ | Practical |
| 144 | WMS Viewer (not Web-Based) | 🟥 | ❌ | Practical |
| 145 | ASCII Digital Clock | 🟩 | ❌ | Emulation/Modeling |
This is the list of projects in the order I completed/started them :
