UpdatesNew features and Resources - Every Weekend

Master the Art of Programming

Embark on a journey through diverse programming languages and paradigms. Build real-world applications, solve complex problems, and hone your coding skills with hands-on projects.

From Idea to Reality: Let's Build Together!

Filters

skill

Level

Time

File Compression Utility

Intermediate2 Weeks

Implement a simple file compression utility using Huffman coding. The program should be able to compress and decompress text files, demonstrating understanding of data structures, file I/O, and bitwise operations.

Skills you'll learn:

  • Data Structures
  • File I/O
  • Bitwise Operations
  • Algorithm Implementation

Memory Management Simulator

Advanced3 Weeks

Create a memory management simulator that demonstrates different memory allocation algorithms such as First-Fit, Best-Fit, and Worst-Fit. The program should simulate memory allocation and deallocation requests, showing the state of memory after each operation.

Skills you'll learn:

  • Object-Oriented Programming
  • Data Structures
  • Algorithm Implementation

Web Scraping and Data Analysis

Intermediate2 Weeks

Develop a web scraping tool that extracts data from a specific website (e.g., weather data, stock prices, or news articles). Then, perform data analysis on the collected information, generating insights and visualizations.

Skills you'll learn:

  • Web Scraping
  • Data Analysis
  • Data Visualization

Multithreaded Chat Application

Advanced3 Weeks

Implement a client-server chat application using multithreading. The server should be able to handle multiple client connections simultaneously, and clients should be able to send messages to all connected users or to specific users.

Skills you'll learn:

  • Multithreading
  • Socket Programming
  • GUI Development

Interactive Data Visualization Dashboard

Intermediate2 Weeks

Create a web-based dashboard that fetches data from an API and presents it using interactive charts and graphs. Users should be able to filter and sort the data dynamically, with the visualizations updating in real-time.

Skills you'll learn:

  • DOM Manipulation
  • Asynchronous JavaScript
  • Data Visualization Libraries

Blockchain Implementation

Advanced3 Weeks

Create a simple blockchain implementation to understand the fundamental concepts of blockchain technology. Include features like block mining, transaction validation, and a basic consensus mechanism.

Skills you'll learn:

  • Cryptography
  • Data Structures
  • Networking

Compiler Design

Advanced4 Weeks

Develop a basic compiler for a simple programming language. Implement lexical analysis, syntax analysis, and code generation phases to translate source code into machine code or an intermediate representation.

Skills you'll learn:

  • Compiler Theory
  • Parsing Techniques
  • Code Generation

Neural Network from Scratch

Intermediate3 Weeks

Implement a simple neural network from scratch without using machine learning libraries. Train the network on a basic dataset like MNIST and visualize the learning process.

Skills you'll learn:

  • Linear Algebra
  • Calculus
  • Machine Learning Fundamentals

Distributed Key-Value Store

Advanced4 Weeks

Build a distributed key-value store that can handle concurrent read and write operations across multiple nodes. Implement features like data replication and consistency mechanisms.

Skills you'll learn:

  • Distributed Systems
  • Concurrency
  • Networking

Real-time Collaborative Text Editor

Advanced3 Weeks

Create a web-based real-time collaborative text editor where multiple users can edit a document simultaneously. Implement operational transformation or a similar algorithm to handle concurrent edits.

Skills you'll learn:

  • WebSockets
  • Conflict Resolution
  • Real-time Systems

Operating System Kernel Module

Advanced3 Weeks

Develop a simple kernel module for Linux that interacts with the operating system. Implement basic functionalities like creating a new system call or a device driver.

Skills you'll learn:

  • Operating Systems
  • Kernel Programming
  • System Calls

Genetic Algorithm Optimization

Intermediate2 Weeks

Implement a genetic algorithm to solve an optimization problem, such as the Traveling Salesman Problem. Visualize the evolution of solutions over generations.

Skills you'll learn:

  • Evolutionary Algorithms
  • Optimization Techniques
  • Data Visualization

Virtual Machine Implementation

Advanced3 Weeks

Create a simple stack-based virtual machine that can execute bytecode. Implement basic operations and control structures, and write an assembler to generate bytecode from a simple assembly language.

Skills you'll learn:

  • Computer Architecture
  • Assembly Language
  • Bytecode Interpretation

Natural Language Processing Pipeline

Intermediate3 Weeks

Build a basic NLP pipeline that includes tokenization, part-of-speech tagging, named entity recognition, and sentiment analysis. Use this pipeline to analyze a corpus of text data.

Skills you'll learn:

  • NLP Techniques
  • Text Processing
  • Machine Learning

Peer-to-Peer File Sharing System

Advanced4 Weeks

Develop a peer-to-peer file sharing system where users can upload, download, and search for files across the network. Implement features like distributed hash tables for efficient file lookup.

Skills you'll learn:

  • Networking
  • Distributed Systems
  • File I/O

Graph Algorithm Visualizer

Intermediate3 Weeks

Create an interactive tool that visualizes various graph algorithms such as Dijkstra's, A*, BFS, and DFS. Allow users to create custom graphs and see step-by-step execution of these algorithms.

Skills you'll learn:

  • Graph Theory
  • Pathfinding Algorithms
  • Interactive Visualization

Parallel Sorting Algorithms

Advanced3 Weeks

Implement and compare the performance of various sorting algorithms (e.g., Merge Sort, Quick Sort) in both sequential and parallel versions using multi-threading or GPU acceleration.

Skills you'll learn:

  • Parallel Programming
  • Sorting Algorithms
  • Performance Analysis

Regex Engine

Advanced3 Weeks

Build a simple regular expression engine from scratch. Implement basic regex operations like matching, grouping, and quantifiers without using built-in regex libraries.

Skills you'll learn:

  • Automata Theory
  • Parsing
  • String Manipulation

Load Balancer Simulation

Intermediate2 Weeks

Develop a simulation of a load balancer that distributes incoming network traffic across multiple servers. Implement different load balancing algorithms and analyze their performance under various scenarios.

Skills you'll learn:

  • Networking
  • Queueing Theory
  • Simulation

Advanced Data Structures Library

Advanced4 Weeks

Implement a library of advanced data structures such as Red-Black Trees, B-Trees, Fibonacci Heaps, and Bloom Filters. Include comprehensive testing and performance benchmarking.

Skills you'll learn:

  • Data Structures
  • Algorithm Analysis
  • Template Metaprogramming

Distributed Cache System

Advanced4 Weeks

Create a distributed caching system similar to Memcached. Implement features like data partitioning, replication, and cache invalidation across multiple nodes.

Skills you'll learn:

  • Distributed Systems
  • Caching Strategies
  • Network Programming

Text-Based RPG with Procedural Generation

Intermediate3 Weeks

Develop a text-based role-playing game that uses procedural generation for creating maps, quests, and items. Implement an inventory system, combat mechanics, and a simple AI for non-player characters.

Skills you'll learn:

  • Game Design
  • Procedural Generation
  • Object-Oriented Programming

Custom Database Engine

Advanced4 Weeks

Build a simple database engine that supports basic SQL operations. Implement features like indexing, query optimization, and ACID transactions.

Skills you'll learn:

  • Database Systems
  • File I/O
  • Query Processing

Algorithmic Trading System

Intermediate3 Weeks

Create a simulated algorithmic trading system that can backtest trading strategies on historical stock data. Implement various technical indicators and allow users to define custom trading rules.

Skills you'll learn:

  • Financial Modeling
  • Data Analysis
  • Time Series Processing

Compression Algorithm Comparison Tool

Intermediate3 Weeks

Develop a tool that implements and compares different lossless compression algorithms (e.g., Huffman, LZW, Run-Length Encoding) on various types of data. Provide analysis of compression ratios and performance.

Skills you'll learn:

  • Compression Algorithms
  • Information Theory
  • Performance Optimization

React-based Kanban Board

Intermediate2 Weeks

Create a Kanban board application using React. Implement features like drag-and-drop for tasks, multiple boards, task filtering, and local storage for data persistence.

Skills you'll learn:

  • React
  • State Management
  • Drag-and-Drop API

Real-time Multiplayer Game

Intermediate3 Weeks

Develop a simple multiplayer game (e.g., Tic-Tac-Toe or a basic platformer) using Node.js and Socket.io. Focus on real-time communication and game state synchronization.

Skills you'll learn:

  • Node.js
  • Socket.io
  • Game Logic

JavaScript Interpreter

Advanced4 Weeks

Build a basic JavaScript interpreter that can execute a subset of JavaScript syntax. Implement features like variable declaration, basic arithmetic operations, and function calls.

Skills you'll learn:

  • Parsing
  • AST
  • Language Design

Progressive Web App (PWA) Dashboard

Intermediate3 Weeks

Create a dashboard PWA that works offline and provides push notifications. Implement features like service workers, caching strategies, and background sync.

Skills you'll learn:

  • PWA
  • Service Workers
  • IndexedDB

WebAssembly Image Processing Tool

Advanced3 Weeks

Develop an image processing tool that uses WebAssembly for performance-critical operations. Implement filters and transformations in C or Rust, and create a JavaScript frontend for user interaction.

Skills you'll learn:

  • WebAssembly
  • Image Processing
  • Web Workers

Custom State Management Library

Intermediate2 Weeks

Build a lightweight state management library similar to Redux or MobX. Implement features like actions, reducers, and subscribe methods. Create a small demo application to showcase its usage.

Skills you'll learn:

  • State Management
  • Pub/Sub Pattern
  • Immutability

WebRTC Video Chat Application

Advanced3 Weeks

Create a peer-to-peer video chat application using WebRTC. Implement features like room creation, screen sharing, and text chat alongside video.

Skills you'll learn:

  • WebRTC
  • Media Streams
  • Signaling

JavaScript Testing Framework

Advanced3 Weeks

Develop a simple testing framework for JavaScript, similar to Jest or Mocha. Include features like test runners, assertion libraries, and mocking capabilities.

Skills you'll learn:

  • Testing Methodologies
  • Asynchronous Testing
  • Code Coverage

Web-based IDE

Advanced4 Weeks

Build a web-based Integrated Development Environment (IDE) for JavaScript. Include features like syntax highlighting, code completion, and the ability to run code in the browser.

Skills you'll learn:

  • Monaco Editor
  • AST Parsing
  • Web Workers

Data Visualization Library

Intermediate3 Weeks

Create a data visualization library that generates interactive charts and graphs using SVG or Canvas. Implement common chart types and animations.

Skills you'll learn:

  • SVG/Canvas
  • D3.js concepts
  • Animation

Electron-based Desktop RSS Reader

Intermediate3 Weeks

Build a cross-platform desktop RSS reader application using Electron. Implement features like feed management, article saving, and offline reading.

Skills you'll learn:

  • Electron
  • Node.js
  • RSS Parsing

GraphQL API and Client

Intermediate3 Weeks

Develop a full-stack application with a GraphQL API backend (using Apollo Server) and a React frontend with Apollo Client. Implement queries, mutations, and subscriptions.

Skills you'll learn:

  • GraphQL
  • Apollo
  • React

Web-based 3D Model Viewer

Advanced3 Weeks

Create a web application that allows users to upload and view 3D models. Use Three.js for rendering and implement features like model manipulation and animation.

Skills you'll learn:

  • Three.js
  • WebGL
  • 3D Graphics

Serverless Web Application

Intermediate3 Weeks

Build a serverless web application using AWS Lambda and API Gateway. Implement a frontend using React and deploy it to AWS S3 and CloudFront.

Skills you'll learn:

  • Serverless
  • AWS
  • React

Web Scraping and Automation Tool

Intermediate2 Weeks

Develop a web scraping and automation tool using Puppeteer. Create a user interface to define scraping tasks and view results.

Skills you'll learn:

  • Puppeteer
  • Web Scraping
  • Automation

Voice-controlled Smart Home Dashboard

Intermediate3 Weeks

Create a web-based smart home dashboard with voice control capabilities. Use the Web Speech API for voice recognition and implement mock IoT device controls.

Skills you'll learn:

  • Web Speech API
  • WebSockets
  • Frontend Design

JavaScript Game Engine

Advanced4 Weeks

Build a simple 2D game engine using vanilla JavaScript and HTML5 Canvas. Implement core features like sprite rendering, collision detection, and basic physics.

Skills you'll learn:

  • Game Development
  • Canvas API
  • Animation Loop

WebXR Virtual Art Gallery

Advanced4 Weeks

Develop a virtual art gallery experience using WebXR. Allow users to view and interact with art pieces in a 3D environment using VR devices.

Skills you'll learn:

  • WebXR
  • 3D Modeling
  • Interaction Design

Blockchain Explorer

Intermediate3 Weeks

Create a web-based blockchain explorer for a cryptocurrency (e.g., Bitcoin or Ethereum). Fetch and display blockchain data, transaction details, and address information.

Skills you'll learn:

  • Blockchain APIs
  • Data Visualization
  • Asynchronous Programming

Collaborative Music Sequencer

Advanced4 Weeks

Build a web-based collaborative music sequencer where multiple users can create music together in real-time. Use Web Audio API for sound generation and WebSockets for synchronization.

Skills you'll learn:

  • Web Audio API
  • WebSockets
  • Music Theory

Cross-platform Mobile App with Flutter

Intermediate4 Weeks

Develop a cross-platform mobile application using Flutter and Dart. Create a feature-rich app that works on both iOS and Android, implementing state management and API integration.

Skills you'll learn:

  • Flutter
  • Mobile Development
  • State Management

Rust-based Command Line Tool

Intermediate3 Weeks

Build a command-line tool in Rust that performs a useful task such as batch file processing, system monitoring, or text analysis. Focus on performance and memory safety.

Skills you'll learn:

  • CLI Development
  • File I/O
  • Performance Optimization

Machine Learning Model Deployment Pipeline

Advanced4 Weeks

Create an end-to-end pipeline for training, evaluating, and deploying machine learning models. Use Python for model development and tools like Docker and Kubernetes for deployment.

Skills you'll learn:

  • Machine Learning
  • Docker
  • Kubernetes

Low-Level Graphics Renderer

Advanced5 Weeks

Implement a basic 3D graphics renderer from scratch using C++. Cover concepts like rasterization, shading, and basic lighting models without using existing graphics libraries.

Skills you'll learn:

  • Computer Graphics
  • Linear Algebra
  • Optimization

Microservices Architecture with Spring Boot

Advanced5 Weeks

Design and implement a microservices-based application using Spring Boot. Include service discovery, API gateway, and implement inter-service communication.

Skills you'll learn:

  • Spring Boot
  • Microservices
  • RESTful APIs

iOS Augmented Reality App

Advanced4 Weeks

Develop an iOS application that uses ARKit to create an augmented reality experience. Implement features like object recognition and 3D object placement in the real world.

Skills you'll learn:

  • ARKit
  • SceneKit
  • iOS Development

Network Protocol Analyzer

Advanced4 Weeks

Create a tool that can capture and analyze network packets. Implement protocol parsing for common protocols like HTTP, DNS, and TCP. Provide a GUI for easy packet inspection.

Skills you'll learn:

  • Networking
  • Protocol Analysis
  • GUI Development

Functional Programming Language Interpreter

Advanced5 Weeks

Design and implement an interpreter for a simple functional programming language. Include features like higher-order functions, pattern matching, and a basic type system.

Skills you'll learn:

  • Language Design
  • Parsing
  • Type Theory

Embedded Systems Smart Home Controller

Advanced5 Weeks

Develop firmware for an embedded system that acts as a smart home controller. Implement protocols for communicating with various IoT devices and create a simple control interface.

Skills you'll learn:

  • Embedded Systems
  • IoT Protocols
  • Real-time Operating Systems

Full-Stack Web App with Go and Vue.js

Intermediate4 Weeks

Build a full-stack web application using Go for the backend API and Vue.js for the frontend. Implement authentication, database integration, and real-time features.

Skills you'll learn:

  • Go Web Development
  • Vue.js
  • Full-Stack Development

To-Do List Application

Beginner1 Week

Create a simple to-do list application with features to add, remove, and mark tasks as complete. Use local storage to persist data.

Skills you'll learn:

  • DOM Manipulation
  • Event Handling
  • Local Storage

Command-Line Calculator

Beginner3 Days

Develop a basic calculator that runs in the command line. Implement addition, subtraction, multiplication, and division operations.

Skills you'll learn:

  • Input/Output
  • Basic Arithmetic
  • Conditional Statements

Guess the Number Game

Beginner2 Days

Build a game where the computer generates a random number and the user tries to guess it. Provide hints if the guess is too high or too low.

Skills you'll learn:

  • Random Number Generation
  • User Input
  • Loops

Temperature Converter

Beginner3 Days

Create a program that converts temperatures between Celsius and Fahrenheit. Include a simple GUI using a basic framework like Tkinter.

Skills you'll learn:

  • GUI Basics
  • Type Conversion
  • Simple Algorithms

Personal Portfolio Website

Beginner1 Week

Design and develop a simple personal portfolio website using HTML and CSS. Include sections for about, skills, and projects.

Skills you'll learn:

  • HTML Structure
  • CSS Styling
  • Responsive Design Basics

Basic Text Editor

Beginner1 Week

Implement a simple text editor with features like open, edit, and save text files. Use a GUI library appropriate for your chosen language.

Skills you'll learn:

  • File I/O
  • GUI Development
  • Event Handling

Rock Paper Scissors Game

Beginner2 Days

Create a command-line version of the classic Rock Paper Scissors game where the user plays against the computer.

Skills you'll learn:

  • Random Number Generation
  • Conditional Logic
  • Basic Input/Output

Quiz Application

Beginner4 Days

Develop a simple quiz application that presents multiple-choice questions to the user and tracks their score.

Skills you'll learn:

  • Arrays
  • Objects
  • DOM Manipulation

Basic Drawing App

Beginner5 Days

Build a simple drawing application where users can draw on a canvas using different colors and brush sizes.

Skills you'll learn:

  • Canvas API
  • Event Listeners
  • Basic UI Interaction

Hangman Game

Beginner3 Days

Implement the classic Hangman game where the player guesses letters to uncover a hidden word.

Skills you'll learn:

  • String Manipulation
  • Lists
  • Basic Game Logic