10 Puzzle Websites to Sharpen Your Programming Skills

October 15th, 2009 by Ben Dowling | 37 Comments | Stumble It! Delicious

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.

1. Programming Praxis

Programming Praxis

Programming Praxis is a blog that includes a range of interesting problems with solutions usually available in several different programming languages.

2. CodeKata

CodeKata

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.

3. TopCoder

TopCoder

TopCoder is an active programming community of developers who love to solve puzzles. There are many active challenges and some of them with cash prizes.

4. Project Euler

ProjectEuler

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!

5. Facebook Engineering Puzzles

Facebook Engineering Puzzles

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.

6. Python Challenge

Python Challenge

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!

7. Al Zimmermann’s Programming Contests

Al Zimmermann's Programming Contests

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.

8. Ruby Quiz

Ruby Quiz

Ruby Quiz is a collection of Ruby programming challenges that is updated weekly. Although made for Ruby, these challenges can be solved in other languages.

9. C Puzzles

C Puzzles

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.

10. 99 Prolog Problems

99 Prolog Problems

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.

* Bonus: Mind Cipher

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.

37 Comments

Jef

October 16th, 2009

Nice post, very useful.

techprism

October 16th, 2009

Nice post. Taking out some of the best programming sources for coders, like me who want to just dive in the program ocean.

Coding is Power.

Dude

October 16th, 2009

Javabat anyone?

Robert

October 16th, 2009

Interesting, thanks for the links.

Autonomy

October 16th, 2009

Thanks Ben for the post. I really like the CodeKata and Ruby Quiz sites. Mind Cipher is pretty fun too, I’m glad you included it.

Sathya

October 16th, 2009

Osix.net!

spoj fan

October 16th, 2009

spoj.pl is the best site. Much simpler interface then topcoder. Has Python!

Charlie

October 16th, 2009

http://www.spoj.pl is also a great place for programing puzzles.

Joseph

October 16th, 2009

How could you forget about: http://uva.onlinejudge.org/ ?

Aaraventin

October 16th, 2009

Great post. I was actually asked this coding question in an interview with Microsoft:
http://mindcipher.net/puzzle/176-power-of-2-microsoft-interview-

David Bolton

October 16th, 2009

I publish a monthly programming Challenge for developers in C, C++ and C#. Up to #28.

David (Also in London!)

strahil

October 16th, 2009

http://3564020356.org/

there’s just no other

Celebter

October 16th, 2009

oh ok, but not on a friday afternoon :p

Reid

October 16th, 2009

Awe come on… HackThisSite.org is awesome! (a different type of puzzle but one none the less)

Ryan Mitchell

October 16th, 2009

Hackthissite.org Programming missions are really good (http://www.hackthissite.org/missions/programming/).
I highly recommend the rest of the site to web developers – it helps to be aware of security vulnerabilities.

Leahn Novash

October 16th, 2009

Impressive how the Valladolid site was forgotten by the article, as it is the basis for the world competition. Fortunately, it has been mentioned in comments. Also, google for USACOGATE.

Eric B.

October 16th, 2009

These are some very fun puzzles. Project Euler has really helped to improve my programming skills.

Parag Shah

October 17th, 2009

Thanks for this fantastic list.

If anyone is looking for computer science lecture videos, I am aggregating various CS course videos at http://www.adaptivelearningonline.net (There are about 16 courses at the time of writing this).

Elyas

October 17th, 2009

A good place to brain storm on these problems (especially Project Euler) without launching an IDE would be algorithmatic.com

Jennifer

October 17th, 2009

Thanks for posting this list! You must of read my mind; I was looking for a challenge to apply my PHP knowledge. This post is quite timely!

Benoit

October 17th, 2009

Waow! Merci infiniment!!!

David Sinclair

October 17th, 2009

Great post, there should exist a site with more news/stuff related to programming I’m really sad there isn’t.

Varrun Ramani

October 18th, 2009

You should include spoj.pl among the top. It is the perfect site for improving your programming skills, as it contains problems from various problem set types :- DP,greedy,geometry etc.

Amit

October 19th, 2009

Hello,
I’d also like to mention http://www.codechef.com, we run monthly algorithm challenges, have a lot of practice problems and an active community discussing approaches and solutions.
Cheers,
Amit

Dave Laljee

October 19th, 2009

For set based T-SQL challenges check here:
http://beyondrelational.com/blogs/tc/default.aspx

M. Ahmad Sheikh

October 19th, 2009

Nice effort brother, That one i was looking for… :)

Stefano Ricciardi

October 23rd, 2009

I am about to start learning Ruby and these sites are exactly what I need to get my feet wet with some concrete example to work on.

Thank you for sharing.

Scott Schnaars

October 23rd, 2009

Reminded me of http://notpron.org that I got addicted to a few years ago. Fun programming sites, mostly HTML & PHP, but a fun riddle never the less.

Pratik Kelkar

October 25th, 2009

Something new – the monthly “Ruby Programming Challenge for Beginners“.

ilya

October 25th, 2009

codegolf.com

Robert

November 23rd, 2009

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.

elasolova

November 24th, 2009

Check out http://www.javaist.com There are some fun Python challenges.

mavis311

December 8th, 2009

Yeah, I’m sort of shocked that javabat isn’t on the list

shibi

January 16th, 2010

yeah,thats what i am looking for.. thanks

Paul Tatum

February 4th, 2010

I especially liked the Prolog link, I haven’t melted my brain for a while, so it looks like it’s going to be suffering again…. Cheers!

Hugoagogo

February 5th, 2010

oh no, i can see this post createing a new black hole in my free time

dharmasam9

March 3rd, 2010

this is nice
making a perfect path for programming lovers :)

Leave a Comment

Subscribe to the comments on this article.