Sign up ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

I'm trying to find places where I can hone my craft outside the context of school or work. Are there places online, or books available, where I can access lists of programming puzzles or challenges?


locked by Yannis Jul 31 '14 at 14:19

This question's answers are a collaborative effort: if you see something that can be improved, just edit the answer to improve it! No additional answers can be added here

closed as not constructive by Jim G., gnat, Walter, Ryathal, Dynamic Sep 29 '12 at 2:54

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

1 Answer 1

up vote 213 down vote accepted

Moderator note: this is intended to be canonical list; please check to see if your suggestion has already been added to the answer. If it hasn't, edit the answer to add yours preferably with an explanation or reason why you're suggesting it.

On Stack Exchange

Pick a tag, follow the new questions posted, and try to solve them. If you find a good one, bookmark it for later use (via Mr. CRT):


Communities and Blogs

Game sites and ongoing contests

  • CodeChef
  • Challenge — "The challenges are a series of puzzles, tricks, tests, and brainteasers designed to probe the depths your hacking skills. To master this series you will need to crack cryptography, write clever code, and dissect the impenetrable; and in the process you will enrich your understanding of the world of hacking." (via daniel kullmann)
  • Pex for fun — game from Microsoft research where you duel against other programmers (via Allon Guralnek
  • Rankk — "You start with the easy levels and progress to the intermediate and hard levels by solving the minimum number of required challenges at each level. The journey to the top is an arduous yet rewarding one. You need to be sufficiently determined and persevering to go far. Only a few are expected to reach the apex and attain Geb."
  • TopCoder
  • Google Code Jam—algorithmic puzzles

Language specific

  • 4Clojure (Clojure) — "4Clojure is a resource to help fledgling clojurians learn the language through interactive problems. The first few problems are easy enough that even someone with no prior experience should find the learning curve forgiving. See 'Help' for more information." (via mikera)

  • Prolog Problems (Prolog) — "The purpose of this problem collection is to give you the opportunity to practice your skills in logic programming. Your goal should be to find the most elegant solution of the given problems. Efficiency is important, but logical clarity is even more crucial. Some of the (easy) problems can be trivially solved using built-in predicates. However, in these cases, you learn more if you try to find your own solution."

  • Python Challenge (Python) — "Python Challenge is a game in which each level can be solved by a bit of (Python) programming."

  • Ruby Quiz (Ruby) - "Ruby Quiz is a weekly programming challenge for Ruby programmers in the spirit of the Perl Quiz of the Week. A new Ruby Quiz is sent to the Ruby Talk mailing list each Friday."

  • IOCCC (C) - "A contest to write the most obscure/obfuscated C program. (Fun to try to understand the previous year's entries, or to submit a new one.)"

  • Underhanded C Contest (C) - "contest to turn out code that is malicious, but passes a rigorous inspection, and looks like an honest mistake. (Try to understand previous year's entries, and learn to find similar mistakes in other people's code)"

Online judges / automatic assessment

Problem lists and contest archives

Security oriented


protected by Community Jul 31 '14 at 14:19

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.