Solving programming puzzles is a fun way to develop your logical and problem solving abilities. Also, when you’re familiarizing yourself with a new programming language, solving puzzles for that language can help speed up the learning process.

Here are the top 10 popular programming puzzle sites that will help test your thinking and improve your programming, problem solving, and logical thinking skills.

CodeKata is a blog of programming puzzles written by Dave Thomas, who’s most famous for the groundbreaking book, Pragmatic Programmer. The puzzles involve many issues that are directly relevant to real world programming so this is a good place to brush up on your coding skills.

Quoted from their front page: "Project Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve " The puzzles featured on the site range from relatively trivial to seriously complex!

Facebook has a collection of very challenging programming puzzles that–should you manage to solve them–could result in you getting a job at Facebook! Solutions are accepted in a variety of languages including Erlang, PHP, Perl, Python and Ruby.

Python Challenge features riddles that ask you to write small Python programs to solve. The difficulty level gets progressively harder and more cryptic. This is an excellent site for programmers/developers that like problem solving!

Al Zimmermann’s self-described "arena where demented computer programmers compete for glory and for some cool prizes" is a great way to participate in the programming community. Contests run every six months.

C Puzzles features programming puzzles specific to the C Programming language (and all of its quirks). Since many languages are C-style or derived directly from it, even if your native programming tongue isn’t C, there’s a strong likelihood that you’ll still appreciate and understand these puzzles.

99 Prolog Problems is suited to the Prolog programming language but people have provided solutions in Python, Ruby, Haskell, Scala and others. Working your way through these problems is a wonderful way to pick up a new language.

Mind Cipher wasn’t included in the top 10 because this site doesn’t require you to do any programming. It does, however, include the "world’s greatest brain teasers, logical puzzles and mental challenges", so if you’re just out for a quick mental workout this is the place to go!

Do you know of any other good programming puzzle sites, or perhaps specific challenges? Leave a comment, and/or send me a tweet!

Related Content

About the Author

Ben Dowling is a passionate software developer who specializes in web and mobile application development. He currently works for Mendeley in London, UK, and regularly blogs about development at Coderholic. You can also find him on Twitter.

Pratik Kelkar

Robert

Nice one, I knew some of the sites (like project euler, top coder, ruby quiz), however most of them are new to me. I would also add project eureka(http://projecteureka.org) to this list, since it’s a super set of all possible puzzles.

Michael

Project Euler is great! I’ve been tinkering around on it for years. Thanks for this great list. I’m looking for some material to tutor some new developers in an obscure programming language (DXL). I’m going to try C Puzzles to see if that will work for our needs. Cheers!