Programming is a lot about creativity and your ability to come up with new interesting ideas. We all spend our most of time tackling common problems, which is why our mind usually suffers with a disease called “lack of creativity”.
Deciphering codes or solving puzzles is a fun way to develop your logical and problem solving skills. It can help you to speed up your learning process and improve quick decision making abilities.
We are presenting a few programming puzzle websites that will help you test your logical thinking and enhance your coding skills.
Note: All that matters is result/output of your code. Just select the programming language you are expert in.
4Clojure contains over 150 problems to help fledgling clojurians learn the language through interactive and interesting puzzles. The first few questions are easy enough that even someone with no prior experience could solve them. The toughness level will increase as you go forward in the list.
Pskills (Programming skills) is all-in-one code learning platform that offers online tests on various programming languages. You can also look for interview questions on C, JAVA, PHP, .Net and HTML.
18. WizIQ: Computer Programming
WizIQ is an education website that offers free computer programming online practice tests. Here you can test your miscellaneous programming skills and learn about computer fundamentals. You will face both subjective and objective questions.
17. C Puzzles
This contains dozens of interesting C programming questions. You have to figure out the expected output and errors (if any). These problems make a good exercise of reading and understanding efficient code written by others.
16. Ninety-Nine Prolog Problems
This is a collection of 99 prolog problems, structured into seven sections. Your goal should be to find the most elegant solution of the given question. Efficiency is necessary but logical clarity is even more crucial in this case. A few easy questions can be trivially solved using built-in predicates.
LeetCode online judge is a web platform for preparing yourself for technical coding interviews. It contains over 190 questions and you can submit your idea/logic or solution to see if you have solved it correctly. The platform currently supports 9 languages including C#, Bash MySQL and Ruby.
14. Interview Cake
Interview Cake is a great platform (or you can say a study tool) that prepares software engineering candidates for coding interviews. However, you can use this tool to furnish your programming knowledge. It is packed with tons of interesting and challenging question that will twist your brain.
CodeEval is all in one challenge platform for learners and developers to showcase their skills. It currently supports over 18 programming languages. Here, you can participate in app building competition and win prizes. The platform gives you a rank based on your performance and you can filter the ranking by location, language and quality of code.
Rosalind is a web tool for learning bioinformatics and programming through problem solving. Here you can learn about the basic of Python programming language and discover the algorithms underlying a range of bioinformatics topics like dynamic programming, genome rearrangement, computational mass spectrometry, string algorithm and others.
11. Programming Praxis
Programming Praxis is a simple blog filled with numerous interesting problems along with their solution (not for all questions). They post fresh and interesting problem almost twice a week. On average, each exercise intended to take about an hour to complete.
Codewars allows you to improve your skills by training with others on real code challenges. You need to solve the kata (created by the community) to earn rank and honor. You can discuss your solution, approach and innovative techniques with the community.
Yet another online code practice platform for Java and Python. You will find all levels of problems and there is code help option, in case you stuck anywhere. Moreover, the report page features a filter control between Python/Java problem and “stock problem” from the front page versus custom written problem.
CodeChef was created to challenge and engage the developer community as well as to provide a platform for practice, competition and development. The practice session is divided into a range of difficulty and the website itself has a reasonable size community.
7. Daily Programmer
Reddit’s Daily Programmer account is a collection of challenging problems categorized into 3 levels: Easy, Intermediate and Hard. Every submission you create in the comment section is reviewed by the community member, so you can get answers and mix opinions to your approach.
Sphere Online Judge is an online judge system that serves for the automated assessment of user-submitted programs. The site contains thousands of problems and it supports more than 45 programming languages & compilers, flexible testing and dynamic interaction.
5. Project Euler
Project Euler is a collection of mathematical/computer programming problems that will require more than just a coding or mathematical insights to solve. It includes over 500 problems and you can track your progress through achievement levels based on the number of questions solved.
Coderbyte is a smart web application designed to help people practice their coding skills. The challenges range in difficulty (Easy, Medium and Hard) and they can be completed without downloading or uploading any file or data. They also have a question page where you can ask any sort of programming question.
Topcoder offers interesting and challenging problems categorized as design, development and data science. You are provided with the opportunities to improve your skills and win cash, while helping real world organizations solve real world problems.
HackerEarth provides a SAAS application to do automated assessment of logical and technical skills of candidates. It also helps companies to search smart talents by serving as a selection platform or developer aggregation. Overall, this is a high quality website that offers thoughtful challenges which could be beneficial for your career.
Recommended: 10+ Best Programming Software | for writing code
HackerRank has more than 5 domains to choose from, you can decide if you want to improve your skills on Machine learning, Functional programming or Artificial intelligence. There are several contents on different levels that challenge you and help you boost your coding chops. Furthermore, a good rank can get you a high profile job in IT companies.