
Write Code, Crush Foes, Get Hired – Multiplayer Programming Tournament - gsaines
http://blog.codecombat.com/multiplayer-programming-tournament
======
tinco
Someone should really retitle this to $512 programming tournament.

~~~
veemjeem
Yeah, I don't like the trend of eye-catching false advertisements either. In a
way, this resembles those infomercials that give you a bunch of random stuff
along with the core product and then claim that it's a $500 value that you're
getting for free!

I would think that they'd want to attract those coders who are not directly
interested in cash prizes because anyone with half a brain could tell that the
prizes do not match the original $40k advertisement. If you're advertising to
a bunch of smart developers, don't treat them like idiots who buy into
infomercial style advertising scams. These guys should reconsider spinning the
contest as a fun & challenging way to top the leaderboard, and the prizes are
just a small token of appreciation for attending the contest.

------
asselinpaul
Great to see CodeCombat getting more exposure.

I've actually started to use it to teach Javascript to 10 year olds in my
local primary school (through a CodeClub I run). It has been a great
experience and a lot of kids are moving quickly through the campaign levels. I
even have a few kids who moved on to the multiplayer levels.

Quick remark: the computers in the school are Core 2 Duo machines with 1.75GB
of RAM. They are running the latest version of Chrome on XP but often crash on
CodeCombat (lack of RAM?). It's a shame but reloading usually solves the
problem. Also, getting coordinates on the map is usually quite tedious (it
doesn't seam to work all the time).

I am really excited about the future of CodeCombat.

~~~
nwinter
We'll keep working on the RAM needs, but yeah, that is just about the lower
limit that I would expect to be able to play the game at all currently. We
have a lot of work to do, but don't worry, we'll get it running on older and
older hardware as we optimize. Thanks for your patience (and your students').

I've started a GitHub issue to track that coordinate selector bug:
[https://github.com/codecombat/codecombat/issues/1038](https://github.com/codecombat/codecombat/issues/1038)
– appreciate the bug report!

Interestingly, we have a 10-year-old who hangs out in our dev chat and helps
us playtest and simulate. He actually came up with a strategy that did pretty
well on the ladders for this latest one, and we'd challenge our other
(existing developer) playtesters to c'mon, surely you can beat the 10-year-
old!

Looking to the future, we have some ideas to push that younger and younger,
too.

~~~
asselinpaul
Oh wow. Please tell me he's French (although in an english school). That might
be one of my students, he ranked 7 on a multiplayer level!

I might have a go at a few bugs over the summer after I finish my high-school
exams.

~~~
nwinter
Oh, which player is your student? Our ten-year-old is American, actually.

------
pjbrunet
Have some self-respect. If this was any other profession, a contest like this
would not be tolerated. If people get the idea programmers work for free, as
long as you have a clever contest, that idea becomes popular and it's bad for
all of us in the long run. The fact there's lots of prizes here doesn't change
the underlying problem. Contests, in any field, devalue the profession.

Even if I was a high school teacher (winning this might look good on a resume)
I would still tell my students to avoid contests because: Why work for free
when you can work for money and have an even greater feeling of
accomplishment? When I was in high school (20 years ago) I had paying clients
and paying subscribers and had won programming contests and I still value the
real-world work experience more than the contests.

As someone who won lots of contests in school: sometimes they are rigged,
often the prizes never materialize, often it's free publicity (great photo
opportunity) for whoever organized the contest. Live and learn.

~~~
tptacek
No. You may be borrowing this stance from graphic design, which has a
(mistakenly) rigid position on "spec work", complete with a "no-spec!"
movement that generates complaints in any forum where the notion of a design
contest is introduced. Graphic designers feel victimized by "contests" that
were actual thinly-veiled attempts to solicit actual uncompensated work. When
thinking about no-spec, you should remember that other professions ---
particularly law --- routinely do speculative work in the hopes of inking
long-term deals with lucrative customers.

There are exploitative contests for software developers. For instance, when a
platform vendor hosts a "come up with the best new application for our
platform!" contest; whether the contest is rigged or not, all those developers
are doing gratis work for the platform, sinking costs that the vendor hopes
will result in salable IP bound to their platform.

This, on the other hand, is a video game. The game happens to be controlled in
terms of software. The best strategies and solutions for the video game have
no value to anyone. Nobody's platform is being built up by gratis work
generated by unsuspecting developers. Instead, time that might have been spent
playing Netrek or OpenTTD is being spent on a more interesting game.

One way to tell the difference between an exploitative game and "just a game"
is whether the organizer of the game gets something more than "publicity" and
"stats on the people who played" (both of which are natural outcomes of
running any online game). For example, in the exploitative platform game I
alluded to above, the organizers got a raft of new applications for their
platform that they didn't have to pay for.

I haven't looked carefully at this game, but I sure have run other games ---
[https://microcorruption.com](https://microcorruption.com) is one of them ---
and I'm happy to discuss them with you as long as you want until you
understand that nobody is being exploited by them.

~~~
Tomte
I do understand where this no spec movement is coming from, but I have lots of
problems with that.

First, it's like the big players (and the opinion leaders) are telling the
small ones how to behave.

I'm reading a bit in a designer's forum, especially the parts about work and
jobs, and the situation for "normal designers" is dismal. Everytime I've
visited that forum I'm happy I'm working in tech. Really.

So most small firms and single person freelancers don't have a choice. They
really don't.

Of course it's easy for EdenSpiekermann to reject such spec work. They are
booked. Others aren't.

Second, speaking of Spiekermann, he's strictly on the no spec side. And his
old company, FontShop, is as well.

If you're reading (German) discussions on the Fontblog, you'll learn that spec
workj is disgusting and you're traitor to your fellow designers if you do
that.

No exceptions! Spec work for a charity that cannot pay a dime anyway is the
same. Never!

Well... unless Spiekermann is on the jury himself. Like for some design
competition somehow affiliated with the United Nations. Then it's all okay,
because, hey UN!

And this hypocrisy is pervasive.

------
aiiane
I wonder if the marketing copy of this is inherently biasing it away from
women. This isn't to say that there aren't plenty of women who like to "crush
foes" \- but societal norms are definitely still in the realm of associating
that with men.

~~~
gsaines
We pay a lot of attention to the way we position our site content, and thought
this was in line with the copy for other competitive games. I don't think that
competitive games are inherently masculine or feminine, but the critique is
valid: competitive games I'm familiar with do tend to rely on marketing
language that's more targeted at men.

------
iMuzz
I remember seeing these guys get accepted to Ycombinator on stage at at Start
Up School 2013.

Cool concept!

Here's the link if anyone is interested.

[https://www.youtube.com/watch?v=syoqjYLDs48](https://www.youtube.com/watch?v=syoqjYLDs48)

~~~
gsaines
Thanks iMuzz, that was an intense day for everyone, and it's always surprising
to see how much of a splash that made!

------
higherpurpose
My experience with CodeCombat:

Pros: I liked it, and I find it fun to learn to make a game that way.

Cons: I found the "campaign" shockingly short - like 10 missions or so, and a
few of them weren't even working (stuck on loading). After finishing that
campaign, I found the jump to the "user-created" missions too high. I would've
expected at least a 50 mission campaign, that walks me through to the more
advanced concepts, until most of the user-generated ones feel easy.

~~~
nwinter
Which levels didn't load for you? I'll check it out. Sorry about that!

The campaign is certainly short a few thousand levels. It will take time for
us to get there, since making good programming levels is a challenge even when
you aren't trying to fit them into a cohesive campaign. We'll get there,
though. Lots to do!

------
maikklein
Funny I just started to learn Clojure 2 days ago and dropped it because I lost
interest in it.

I always wanted to join some AI competition and this might actually be fun.

The sad part is, there are no game rules. Yes he explained them a little bit
in the blog but it was way too broad.

Also there is no tutorial on how to get started anywhere. I am assuming I need
this
[https://github.com/codecombat/codecombat](https://github.com/codecombat/codecombat)

~~~
gsaines
Hey Maikklein, did you start playing? We built a mini-tutorial into the level
itself, along with documentation and API details. We also have a rules tab on
the ladder page that describes how the tournament works in broad strokes. If
you still have questions, drop us a line at team@codecombat.com

~~~
maikklein
Oh, then it was my fault! I didn't even think to press the play button because
I haven't written any code yet.

Now I am seeing the interactive tutorial. Thanks

------
aiiane
> Custom CodeCombat Wizard (est. $500 value)

Really?

~~~
gsaines
Yeah, artwork is surprisingly expensive if it's customized. Obviously it's
possible to get really cheap artwork, but we've found that quality and
reliability are worth paying for. We also allow every winner to iterate the
design a few times to get what they want.

~~~
grey-area
What is a code combat wizard and why would we be interested in having one? It
sounds like some sort of in-game reward or skin for your avatar, and giving it
an imputed value of $500 is pretty optimistic. Has anyone ever paid $500 in
cash for a CodeCombat Wizard? NB that the value delivered is not related to
the cost for you to produce it.

You might consider putting in an explanation of what these things are and why
they are worth more than the services you're giving away with a link on the
text, and putting them at the end of the list, because for most people not
familiar with your game the value for an in-game character or avatar will
hover just above $0.

------
iandanforth
Is there an API you can use to submit code and get back simulation results and
stats?

~~~
schmatz
That's a great idea! I'll add it to my todo list.

Right now, there isn't a nice and well documented way to do this as we haven't
ever had demand for an API like that. You can reverse engineer the POST for
the code ranking to submit your code and the GET for the leaderboard
information.

------
missblit
I've been playing around with the challenge in python, but I've been
completely unable to get (nested) classes working.

Which is too bad, without classes it's much harder to coordinate a bunch of
peons.

------
michaelmior
Interesting that there's an option to simulate games to speed up tournament
progress. I wonder how the output of the simulation is validated.

~~~
schmatz
Hi michaelmior,

Those simulations are used to calculate the public leaderboards during the
competition. They aren't used for final rankings as the simulation results
need to be validated. However, they provide a nice way for people to gauge
their standing.

To perform the final ranking/validation, we'll play n of the top games on each
team against each other and then sort by wins and losses. We're not quite sure
of how large n will be, but I think it will be 150-250. It would be nice to
calculate the public leaderboards this way, but as a O(n*m) calculation, it
really doesn't scale in practice (we have to strike a balance between accuracy
and responsiveness of the ranking system). The public leaderboards are
calculated with a Bayesian algorithm.

If you have any other questions, feel free to ask! :)

~~~
michaelmior
Thanks for the response! So in theory, a player could game the public
leaderboards by returning incorrect results for a simulation? This seems like
a reasonable choice.

~~~
schmatz
Yep, they could.

If people start doing that to mess up results, we have ways of remedying that
situation. We haven't had to deal with any cheaters thus far as our users are
pretty awesome (and there really is no reason to cheat).

We'd probably send each game out multiple times and require consensus or run
all the simulations ourselves. I don't anticipate having to do anything of
that nature, but it's interesting problem to think about!

------
malloreon
A company blog with no clickable link to the main page?!

In 2014?!

EDIT: it's there if you widen your browser super wide

~~~
schmatz
Hi malloreon,

You can find the link to the main site in the middle of the top bar of the
blog where it says "Click Here for the Main CodeCombat Site".

~~~
sp332
That doesn't show up if the window is too narrow. And "too narrow" is pretty
wide.

~~~
schmatz
Good catch! I'll have to send some feedback to the guy who runs the blogging
platform.

------
joshbert
I wonder how their last employment program went. Any comments, gsaines?

~~~
gsaines
Really well actually. The TLDR summary is "we got swamped and made 4
placements."

We had ~50 good candidates that got in touch, but we took PG's advice to do
things that don't scale, which meant I was doing high touch recruiting. About
2 weeks in, we decided to refocus on 12 of the candidates and we placed 4 of
those. In the interim we've built out an automated profile system, employer
portal, and a bunch of internal tools to scale up so that this time we can
handle increased demand.

The overall feedback from employers was very favorable. One startup told us
that our candidates were 5x more likely to pass technical screens that their
other recruiting channels.

~~~
joshbert
That's a great response, thank you.

~~~
gsaines
You're quite welcome!

