The first rule of CodeFightClub is…it’s okay to talk about CodeFightClub.
So says Andrew Hathaway, the 18-year-old software engineer from Leeds, U.K., who started the head-to-head online programming arena known as CodeFightClub. In less than a week since its launch, CodeFightClub has signed up more than 100 users via Twitter logins, and they’ve started seven “fights” thus far.
The project, which draws not-to-subtle inspiration from a certain cult film and Chuck Palahniuk novel, was sparked by a fleeting idea to give young coders a fun, competitive atmosphere to hone their skills.
“CodeFightClub was one of those ideas that comes to you whilst you’re trying to get to sleep at night. I had to grab my phone quickly before I fell asleep and forgot it,” said Hathaway. “Quite recently a lot of my friends have either been getting into development, or trying to become the best developers they can. One of the most common questions between developers is ‘Can I write this any better?’ or ‘Is this fast and efficient?’ and to help developers learn what they can do to write better code, I created CodeFightClub.”
The concept is pretty simple. Users can start a “fight” in 84 programming languages and templating syntaxes, and the two fighters “trade blows” in the form of writing code blocks back and forth. Rather than one fighter knocking the other to the floor of some dingy basement, crowd votes and comments decide the fight’s victor.
“The current process starts with a user posting two blocks of code in the same language, a title and a description,” Hathaway explained. “After this, it’s up to the community to vote which contender they most prefer and comment with their reasons why.
“The comments are the key part to learning on CodeFightClub. When a user explains why they prefer a certain contender and what they could do to make it even better, [this will] help fellow developers to think differently in the future and therefore become well-versed.”
Hathaway built the simple coding arena with the Express.js Web application framework for Node.js. He also chose a PostgreSQL database, which he preferred over a MongoDB and Mongoose combination because “it’s a very mature database with none of MySQL’s weird idiosyncrasies.” For the real-time views showing code fighters duking it out, he employed React.js.
The current version of the site is basic, he said, but Hathaway plans to implement a backlog of features and changes in the near future. He also works full-time as a software engineer at digital search and SEO company Branded3, and has his hands full with several other open-source and freelance projects.