Platforms to practice coding: Codewars vs Exercism vs Edabit vs CodeAbbey (ongoing, upd. 17th August 2020)

I am a person who needs to complete a ton of exercises to feel confident before an exam or an interview. To summarize and breath out. Back in college I to make tables about all the possible types of exercises – it is just easier that way for me.

With Python, I really needed a platform to reach all the places that need to be scratched. Mr. Lutz provides pretty much all you need, but it is unbecoming to stay idle.

Platforms I don’t have much to say about or I haven’t looked into yet:

Not Python:

Advanced:

Codewars

Rating: 5 out of 5.

I encountered Codewars and quickly grew enamored by it. Stylish and very well executed interface blew me away.

What to learn: many languages, algorithms (mostly) and problems

Submit: web interface in browser

Community: Heavy on ‘clever’ solutions, but offers many nice ideas, as you cannot use external packages

I don’t like: Not feeling connected to the real developer life

+ I like: Web interface, solutions, strong presence of senpais from whose solutions to learn from, Japanese terms

I had a lot of fun and learnt a few (actually just a few) things – to use generators everywhere and do one-liners. Sensing trouble here? Exactly. The Codewars hosts a lot of smart members who are eager to share the shortest versions. It may be fun, but in my opinion it greatly harms developing programmers like myself back in 2018. I since wrote a ton of code I personally don’t want to even look it.

In the beginning it is heavy on algorithmic tasks. I grew tired of same sorting and string manipulation long before I reached something people stay there for good.

Don’t get me wrong, it is really interesting once you find a task that sparks joy in you. But in general, it is not very much my thing.

As a new Django developer I did not find much there.

My achievements on Codewars

August 2020: I have only gotten to 6th Kyu, if you ever played Tekken, it is rather low, nothing to boast about.

I only tried Python, but I think that I will get back to Codewars when I start reiterating JavaScript. Or if I decide to get better at competitive programming side of things, as it reminds me of that a lot.

11th August 2020: Since I’ve determined to regularly encounter small problems to be fit, I revised my opinion on Codewars. My biggest problem is within myself – I am very quick to judge and to rush into action, and if I can’t climb the mountain in one go I will give up 8 times out of 10. That’s what I am trying to fight these days. So I am retrieving my college days notepad and a black gel pen and get to solve some problems like in good old times, when life was slow and I didn’t have to do everything ASAP, I could just chill (I mean my college days).


CodeAbbey

Rating: 4 out of 5.

First Impression: Lovely.

What to learn: Algorithms

Audience: Beginners

Submitting: Web interface (Ideone powered)

I don’t like:

  1. I can sumbit code without errors once and then I have to come back and do it again. So I need to keep my code in the clipboard
  2. Very heavy on algorithms, many can be solved with external libraries yada yada yada, yet if you feel like you need an introduction to algorithms – it is for you.

+ I like:

  1. Certificate system, including a honorary one for females (ordinary Stargazer one is at 145 solved tasks, and females can also get Fanatic one at 85 solved tasks).
  2. Tasks in the beginning are fairly easy.
  3. Medieval theme! 😍
  4. Volumes – collections of problems on certain topics

!! Important !! If you submit a wrong solution, don’t go “Back” via your web browser navigation – press ‘Try Again’ in the text of the result page. Otherwise the source data will be different, but you’ll have old one.

I love it so far. Pretty old-school, they use Ideone, so you can basically test it there first and submit later. It all comes to the point that you want to have a template that you use all the time to avoid silly little mistakes.

If you are having problems with submitting an answer

  1. Here is my template for practically any problem solution. I am placing it here, because if at some point you wanted to dive into CodyAbbey, but this hindered your success, I’d love to offer you a hand.
N = int(input())
res = []

while N > 0:
    
    N -= 1
    res.append(str(something))
    
print(' '.join(res))

Attention! It is against CodeAbbey’s rules to share task solutions abywhere. This template I provide is nothing special and does not contain any valuable information regarding task solving, therefore I don’t see this harming the website and hindering the Certificate system. Just a tip for very beginners -easy to read.

2. Press Python 3, wait for the answer to compile (in Python’s case, interpret, I guess 😉) ans press Submit. Before pressing Submit I recommend copying your code to the clipboard, because otherwise you will have to go to your profile and look at your unsuccessful solutions there.

You sure will get used to inputs and tabulation (and other very down to earth things that personally I totally forgot about as I use PyCharm daily and it does it all for me).

Moreover, I really like Volumes! It is a great way to train things you are not really good at or things you are drawn to. I highly recommend.

Volumes on CodeAbbey

I aim to get a certificate or two one day on CodeAbbey, as I thoroughly enjoy it. But for the time being I have other great platforms to discover.

My current result at CodeAbbey

Exercism

Rating: 3 out of 5.

Exercism is much more of an online textbook. It has exercises as well as Codewars, but unlike it, it provides introductions to the topics and a lot of useful information.

First Impression: A decent dupe for CodeAcademy of my college years (2013-2017), when it was vanilla and free.

What to learn: Many languages, language problems for beginners

Submitting: Via CLI

I don’t like: CLI

+ I like: Structure and diversity in ADs

The first impression was absolutely positive, but when I got to doing the exercises, it turned out that I have to install their interface and submit through it, and I had to manage settings… Don’t get me wrong, I am not against that, but:

a) a user-friendly interface with pictures of grandpa and various people at a laptop made me think that it must be something easy like CodeAcademy and HTMLAcademy.ru – websites I’ve known since school (many many years ago). At very least I will have to upload a file like at the good old ACMP.ru.

b) I wanted something to do when I am at a PC with Windows. And having to manage these things at Windows, plus open the files with Pycharm (at Windows!)… it was too much for an exhausted 2am me.

First impression was pretty positive.