Compete to solve programming puzzles with the fastest or shortest possible solutions. Submit your own challenges, vote on your favorites, and see who can crack the daily featured problem. Sharpen your skills, challenge the community, and climb the leaderboard—all in one fun, fast-paced platform.
Ali
Check their projects out: MadBlog, ChatMad, SOMPS, Robby Raccoon, Multiplayer Board, ReactMad, My Homepage, Live, #Bored, StupidWatch
Once you ship this you can't edit the description of the project, but you'll be able to add more devlogs and re-ship it as you add new features!
We're ready to ship again! Quick summary of all changes:
- A 10x faster code runner (old one was way to slow, see devlog for details)
- GitHub and Slack OAuth (I saw that the reviewer spent quite some time generating a fake email for the login form, so this is faster)
- Avatars linked to your GH or Slack
- User settings: Change your name, username or link and unlink social accounts.
- Separated username and name in the db (better security, cleaner code and you can now choose 2 types of names!)
- Improved security of the code runners
- Integrated react-hook-form with our auth and setting forms, resulting in a faster feedback loop (so you directly know a username isn't available without clicking a button)
- Some UI changes
Finally, a MASSIVE code runner runtime improvement! We went from 20-60 secs benchmarking a problem with 3 test cases to 3-10 secs! I did this using 2 clever tricks: running all tests in a single code runner process, and keeping a pool of code runners in the background waiting until a user wants to run their code, leading to way faster startup times.
I also updated the code runners to kill itself if the code execution takes longer than 20 seconds.
Rewrote our navbar so it works 100% using CSS, without React states, making it way faster to render and more responsive. This took way longer than I wanted :(
Way faster and easier form validation using React-Hook-Form, instead of using our own regex when the user clicks "save). Only implemented it for the settings so far, but it should be much easier to do for the auth pages now.
Probably not worth mentioning it but I made better popups instead of using javascripts alert(). I got an idea that could make our code runner way faster (I saw how long the reviewer had to wait in the proof video), but I didn't implemented it yet
We finally use the real username plugin instead of using the name field. This required some SQL changes and I'm very scared to destroy our prod database, but it works on my machine :)
Changed alot of server and docker configs. I also added some labels to let users know about possible wait times and timing inaccuracy. There also is a problem with our db which causes the site to sometimes go down for a few minutes, but I think this is Nest's fault.
We've launched our site! Check it out at: https://bytesarena.programordie.hackclub.app/
(Just docker stuff this commit)
Setup a build script and spent 30 mins fixing a cache bug, which turned out to be not my fault. Now waiting for my ID to be approved for Nest...
A new icon, metadata, a lot of small fixes and a REAMDE. I think we are coming closer to launch...
Finally, after all this time, secure execution on the backend, so finally timed execution time! I needed Docker for this, it's not as scary as it looks like!