Thank you! After reading blog-post I had zero understanding of what the problem is about and how they solve it. Tried to read again - no luck. Then I opened codejam link and saw that it's basically about placing maximum amount of bishops using maximum matching. (Other parts of problem are trivial)
That's really sad that this pattern of bad explanations is so frequent in the internet.
If you think that awesome wm is bloated, try dwm on which awesome wm was historically based. The key bindings look the same.
After I've noticed that I haven't used 90% of awesome wm functionality, I moved to a dwm which is basically 2k lines of readable C code in a single file and never looked back - it's so easy to configure it to do exactly what you need.