Build You Own Load Balancer
This challenge is to build your own application layer load balancer.
This challenge is to build your own application layer load balancer.
This challenge is to build your own blogging software.
This challenge is to build your own chess program. The game chess has held a fascination for many people for hundreds of years, so much so that the first automated chess playing machine, “The Mechanical Turk” was built in 1770!
This challenge is to build your own command like tool to compress text files. This is a challenge I first did in 1998 when my employer didn’t have much work for me to do between projects so suggested I pick a skill and polish it.
This challenge is to build your own Data Privacy Vault. A Data Privacy Vault is a way to keep sensitive information safe. The vault stores the data and controls who can get to it, making sure it's managed, watched over, and used carefully.
This challenge is to build your own diff command line tool.
A DNS Forwarder is a nameserver used to resolve DNS queries instead of directly using the authoritative nameserver chain. Often they are used to sit on the edge of a local area network and provide DNS resolution to the computers on the network, reducing external traffic and speeding up external access by serving the answer from a local cache.
This challenge is to build your own DNS Resolver.
This challenge is to build your own version of Docker.
This challenge is to build your own version of Dropbox.
This challenge is to build your own version of a file deduplication tool. These tools are useful for finding duplicate files that can be deleted to free up storage space.
Google Keep is an unassuming note taking app from Google. It’s the only app that has been on every smartphone I’ve ever owned. It first appeared in 2013 and hasn’t - to the best of my recollection - changed much since then. Or maybe I’ve just ignored the features apart from text notes 🙂
This challenge is to build your own HTTP Proxy Server. A proxy is a server that sits between a client that wants to get a resource and a server that provides the resource.
A HTTP(S) Load Tester is a program that can be used to simulate a load on a website or HTTP(S) based API. It’s a useful tool for tasks such as checking your system handles concurrent load, scales correctly under load and to verify that your rate limiting software works correctly.
This challenge is to build your own IRC client. IRC stands for Internet Relay Chat. IRC was one of the earliest network protocols for messaging and multi-party discussions.
This challenge is to build your own version of jq.
This challenge is to build your own JSON parser.
This challenge is to build your own carousel generator for LinkedIn posts (aka a PDF document builder).
Lisp is a general-purpose, multi-paradigm programming language suited for a wide variety of industry applications. It is probably most widely know for being the programming language built into Emacs. As well as that it was used to build Hacker News (Paul Graham is a Lisp fan), Grammarly, Circle CI (actually using the modern dialect Clojure) and Boeing.
This challenge is to build your own Memcached server. Memcached is a free, open source, high-performance, distributed memory object caching system. It is intended for use in speeding up dynamic web applications by reducing database load.
This challenge is to build your own version of the Message Oriented Middleware NATS.
This challenge is to build your own version of netcat. Netcat - which is usually abbreviated to nc is a command line networking utility for reading and writing to network connections with TCP or UDP.
This challenge is to build your own network modelling tool.
This challenge is to build your own version of Notion.
This challenge is to build your own Network Time Protocol client.
This challenge is to build your own version of John the Ripper or CrackStation. These are password cracking tools that can be used to recover passwords, by penetration testers and of course bad guys.
This challenge is to build your Password Manager (i.e. something like Keepass).
This challenge is to build your own version of a port scanner like nmap.
This challenge is to build your own API rate limiter.
In this Coding Challenge we’re going to build a CLI tool to send commands to a Redis server, it’s a nice challenge to complement the build your own Redis challenge. If you’re not familiar with Redis you can learn all about it in that challenge.
This challenge is to build your own Redis Server.
This challenge is to build your own shell.
This challenge is to build your own version of the Unix command line tool socat. It’s name is a combination of the words SOcket CAT as it is in effect a version of cat that works over socks too.
This challenge is to build your own terminal based text editor - think of it as a mini version of Vim, Ed or Nano.
This challenge is to build your own version of the Unix command line tool tr!
This challenge is to build your own trace route tool.
This challenge is to build your own uptime monitoring service. There are many such services and if you work for a company that runs an Internet facing property your company probably uses one of the well known ones such as Pingdom, pusetic, Uptime or Uptime Robot.
This challenge is to build your own Video Chat application. Video chat applications have been a driver of the public’s interest in technology for decades. For example, the British TV show Tomorrow’s World broadcast an episode about Video Phones in 1986!
This challenge is to build your own basic web server.
This challenge is to build your own version of the Unix command line tool xargs!
This weeks’ challenge is to build your own YAML parser.
The command line tool yq is like jq for YAML data - you can use it to and filter and transform YAML data, much like you would JSON dats with jq. By the way, a past Coding Challenge was to build your own jq if you fancy giving that a go.