As a self-taught developer, I am always on the lookout for the best ways to learn how to better my coding skills. However, with the abundance of options out there, it is hard to know which resources are worth your time and which aren’t.
Luckily for you, I’m doing the work for you and reviewing a lot of the most popular coding sites so you don’t have to. My hope is by the end of this review you will know whether or not CheckIO is the right choice for you.
What Is CheckIO?
CheckIO is an online coding platform that helps beginners learn how to code using two core programming languages, Typescript, and Python. What really sets CheckIO apart from a lot of other coding platforms is that it seems to focus a lot more on teaching students currently enrolled in a coding class as additional learning material. Unlike most popular coding platforms like HackerRank, Codewars, or LeetCode which focus primarily on data structures and algorithm practice.
1. Compatibility with Schools
Likely the most beneficial aspect of CheckIO is its high compatibility with schools. This is a feature that most coding platforms don’t offer because it’s not the main focus. With CheckIO, you can easily view your class progress from your own teacher portal. This includes the ability to get granular data from each student such as seeing your student’s progress history to understand their thought process in completing a specific challenge. In addition, you also have the ability to restrict access to certain CheckIO features, such as forum boards and problem answers. Which gives you more control over what your students can see.
2. Hints To Problems
Another big benefit that CheckIO has over many other coding platforms is that it provides hints to problems to help students figure out the answer to problems without allowing them to directly look at the solution.
This engages students more and allows them to get closer to the answer and think harder about their current solution without directly giving them the answer or needing direct help from their teacher or a more experienced developer.
3. Easy To Understand Instructions
Finally, I think the way the questions are framed in CheckIO are very easy to understand. As I’ve stated in my HackerRank review, this is not always the case. Sometimes challenges are presented in a complicated and obfuscated manner that does nothing to help the learner.
This makes CheckIO much more suited for beginner programmers and those just trying to get through the class. Not those programmers training for coding interviews or trying to. get comfortable with overly complicated explanations.
1. Not Directed At Non-Student
This is probably an obvious point but, although completely possible to use, this platform is not directed at individual, self-learners. It is pretty clear that the developers of this software have the primary purpose of selling this software to schools or coding tutors.
For that reason, they lack many of the benefits that other platforms bring. Such as stronger community support, language availability, and specific subject breakdowns such as in HackerRank or Codewars. They are not aimed at teaching solely data structures and algorithms but the challenges are also probably too difficult for complete beginners to solve without some guidance from a tutor.
2. Only Two Coding Languages
One major drawback of the software is it is only offered in two coding languages, TypeScript and Python. Unlike platforms like Codewars and HackerRank that offer +20 coding languages, CheckIO can be very restrictive in what languages you can teach.
In addition, if you decide to teach a lower-level language like C in your class, it will likely be too much for a new student to keep up with learning two languages at once.
This means you will likely have to commit to teaching either Python or Typescript. They are not bad choices for first languages but they can also completely change your curriculum and will not be good choices to teach lower-level programming concepts.
3. Outdated Interface
Maybe this is the front-end developer in me, but the one thing I cannot stand in modern software is an outdated design. No offense to the developers but the platform looks like it was designed in the 90s and makes little attempt to utilize modern design features. Although many developers may not care about design, it is a major detractor when I choose software I am willing to invest time or money in and they put little effort into presentation.
I mean, just look at that “Task Solved” banner, background pattern, and color scheme!
3. Game Aspect Quickly Grows Stale
Finally, CheckIO comes with a unique game aspect. Where you travel between islands that differ in difficulty. Once you complete enough challenges, the game allows you to progress. This is different from any other platform that I have tried.
However, there is nothing about each island that is different from the last other than the challenges. I personally found this was very boring and it didn’t get me excited to advance to other islands. Ultimately making me bored of the game quickly.
I wish the developers made a bigger effort in making this feel more like a real game than a quick afterthought to try and distinguish themselves from competitor platforms.
I mean, imagine the boss fights with code and animations!? Okay, maybe I’m the only one that would find that cool…
CheckIO Review: Is CheckIO Worth It?
So time for the big reveal in this review. Is CheckIO worth giving a shot at? Or are there better options out there?
Is CheckIO Worth It As A Self-Taught Learning Tool
So let’s start by saying CheckIO definitely is not worth using as a beginner learning tool when there are so many other great resources out there that do a better job at teaching a novice developer with no prior experience.
So if you are a self-taught developer trying to learn how to code with no experience, I highly recommend starting with something like udemy or CodeAcademy. There is tons of beginner material on these sites that will serve you a lot better than CheckIO and provide a lot more ‘hand-holding’ content.
If you are a novice-intermediate developer, I recommend checking out LeetCode or Codewars. It will teach you important DSA concepts and will help propel you into the intermediate/advanced programmer stages.
Is CheckIO Worth It As A Teacher
As a teacher, CheckIO might make more sense as a tool to help teach your students. Mainly because I personally do not know of any other tools out there personally catered to teachers. Is the software perfect? Definitely not, but it can be a good tool to help teach your students and see where they are struggling and teach the concepts in class that need to be taught.
One word of caution, however, is that I do not like the ‘view student history’ functionality as is. As a self-taught programmer, I commonly copy and paste code into my IDE and run it to see how certain code works. Some teachers might see this as ‘cheating’ by their students but I believe it is a natural part of the learning process.
The hints provided by CheckIO might be helpful to mitigate the need to do this but if you are brand new to coding it helps to see working code with your own eyes to rationalize how the problem can be solved. If students feel like they are being watched by their teacher, they will likely refrain from doing this and it could actually hinder their learning process.
Just something to keep in mind!
Summary: CheckIO Review
So that pretty much wraps up our review on CheckIO! Overall, I really like the idea of creating a coding platform catered to schools and being used as supplementary material. The easy-to-understand instructions and problem hints also make the software beginner friendly.
Where the software falls short is in its language availability, outdated interface, playability, and resource for self-learners. It’s not personally something I would recommend as a learning material. However, I can see its utility in specific classroom environments if used properly.
So that’s about it! If you’re a new programmer and want to learn web development, check out this resource.
If you want to check out some cool video tutorials on programming, udemy is always a great place to start!