To start upvotes from the community was the best way to do it - though soon enough we'll be benchmarking solutions so you can order them by execution time.
Great questions guys - we use locked-down language sandboxes on our own servers right now (github.com/codewars) for JS and Ruby. Then we're developing a Docker/LXC based server sandbox that will allow us to safely run each code submission in any language in its own container... Another OSS option out there is: http://eval.so/
Thanks for the feedback Sandrae, it's helpful to hear your perspective.
We have a lot of female users on Codewars and want to make sure everyone feels welcome. The term "Kata" are what we call our challenges, it just means "form" in Japanese - it's used in calligraphy and martial arts to describe a way to practice a pattern to excellence. As for our name, it does hint at competition, though is meant as a metaphorical war on mediocrity and the status quo.
Performance-wise our site isn't going to be as fast since we run the code on our own servers (opposed to in your browser), which has lot's of advantages for better challenges/more versatility, but makes speed a little more of an issue.
I hope you do give the site a shot, and if you have any more feedback please email me: [email protected]
Glad you were able to make the distinction, we are working on making Github's integration cleaner. The intention is to allow you to link your github account, so that you can use it for return access to Codewars. It's also meant to auto-populate your username/email and not require password - which we just realized is broken.
Sorry for the confusion on the signup Majika. We aren't asking for your Github credentials, but are offering a link to connect your Github account securely via oauth and Github.com (it’s optional). The fields for email/password are to set details for your new account on Codewars. If you accidentally entered your Github info there we can manually delete the account for you.
We do load quite a few 3rd party libraries, though only to make the user experience even better. All of these services are pretty standard and most of these should be familiar with many web developers. Intercom allows us to communicate in real-time with our users, Rollbar allows us to monitor client-side exceptions, mixpanel and google for analytics, twitter and facebook for social. You bring up a good point though that for users who wish to disable these, there are integration points within our code that would most likely cause errors to be thrown. We can certainly work on decoupling our code so that it silently ignores calls to these APIs.
We want to make sure to keep the intrigue and flow going. So we're seriously thinking about how we can open more challenges while balancing it with a customized experience, great advice. Appreciate the help.
Right now we save all your progress on the kata, though you need to find it again by searching/list view... We're pushing a "favorites" list soon that will allow you to earmark them for later.
Thanks and good catch. We do execute the code submissions on our own servers, partially so that we can prevent cheating and make sure all solutions are legit (the solutions list users see after finishing each challenge provides some of the site's greatest value)... though second is because we plan to eventually support full environments (challenges that utilize libraries, frameworks, etc.).
The speed issue is optimization on our part, we boosted the servers so it should be a lot quicker now