Going from learning coding to learning to problem solve with Repl 

Tags: beginners
Published: 2021-01-02 21:01:39


In a year of many challenges, there’s was one thing I could rely on in my software engineering journey. [Repl.it](https://repl.it/)! 

I started seriously coding in January of 2020. Before then, I hadn’t really focused on any particular language or framework. My goal was to learn **HOW to code**. Yet, even when I was getting the hang of Ruby and Javascript, I hadn’t really learned how to step through problems and problem solve. This is probably one of the biggest misconceptions people have about coding: it’s a language, yes, but it’s also a tool to work through problems. 

In March, I started to see the difference between learning the language and learning how to problem solve. It was also at this time that I didn’t have a lot of access to whiteboards, and trying to work my way through a notebook didn’t seem like the most intuitive way to code. It was also at this time that I started practicing algorithms and Repl.it became indispensable. 


## What is Repl? 

If you’ve been coding for a while, you’ve probably heard of Repl.it. It’s a code sandbox with a minimalist interface. It allows you to save different files and also run them. 


![a directory of replit files](https://dev-to-uploads.s3.amazonaws.com/i/1kcqcx138ae2pi9xe86z.png)

Many languages are supported and the console/environment interface allows you to focus on inputs and outputs. 

![Repl.it's environment/console interface](https://dev-to-uploads.s3.amazonaws.com/i/6tgp4rg5n9lx064hyqjo.png)


## Testing, testing, testing…

I’m the sort of person who needs to constantly test if something works. I use Repl for almost every algorithm I come across. It’s usually more reliable than the in-house coding sandboxes of many algorithm practice sites (do keep in mind the test cases, though!). 

Not only that, but when I’m working on a web development feature, it’s useful to see the results without having to edit a file. Breaking the problems out into smaller steps also helps me to keep my Ruby and Javascript programs more organized when I actually do paste them to the code editor. 


## Not a swiss army knife 

Repl is good for some things, like testing out an algorithm, and not good for others, like solid web development or working with a more complicated program. There have been moments when simply working in a code editor has done the trick. 

When I explain Repl to people who don’t code, I often compare it to a calculator. It’s something I can use to put in inputs and generate outputs, but I wouldn’t use it to design a website or create an automation tool. 

Also, there are moments when Repl is simply not powerful enough to calculate a particular test case. When I filled an array with 1000 values, it didn’t seem that the program could process that load. There have also been moments where it’s crashed completely, or has complained about syntax errors that weren’t there.


## Stepping through problems 

In a world where whiteboarding is difficult to accomplish over long distances, digital whiteboarding often comes to the rescue. Being able to print values and to the console has been invaluable in learning how to code. 

It’s helped me go from learning the language of a code to learning how to code to solve problems.


## Summary 

If you’re just starting out, especially with algorithm types of problems, I recommend finding a digital whiteboard program that works for you. There’s many besides Repl, such as Code Sandbox (which is better for web development). I still use Repl any time I need a visual for a particular coding problem. It’s my go-to!