Our approach to building our sandboxes is very specific: we look at the tools we use every day as developers, identify the functionality that is the most important, and re-build it in a way that's more approachable than your traditional IDE (integrated development environment, e.g. Eclipse).
Because of this, we've often found that our tool doesn't quite fit into the categories other tools fall into. Below is a quick outline of these categories and how our sandboxes differ from them.
People looking for an online IDE are in search of a full development environment that can replace their local one. In our opinion, the cards are still out on the overall viability of online IDEs as a whole, in terms of every day use. Call us old fashioned, but once you have your local development environment set up, it's hard to hold a candle to it in terms of speed, customization, and flexibility.
Our goal with our sandboxes is to provide a tool that:
For learners, serves as a stepping stone to these local development environments. Eventually, setting up your development environment is something you'll want/need to do. But in the meantime, doing so shouldn't get in the way of learning new technologies or programming languages.
For developers, is another tool to add to your arsenal. Rather than having to set up a fresh environment every time you want to try something new and worrying about it cluttering your local environment, you can just jump into a sandbox and go to town.
Our sandboxes are more of a generalist's tool. We support those languages and frameworks, but our goal is to provide a tool that everyone can use. That being said, we've often found that where we add the most value is for "backend" technologies, i.e. the ones that require an actual computing environment to be running vs something that runs entirely or mostly in your browser.
So if you want to code in React, you may want to shop around. If you want to code in R, look no further.
There are a number of "code boxes" that let you enter some programming code and click "Run" to get the output from your program. Most of these connect back to a Docker instance for a second to grab your output and then display it statically in the screen, which prevents most interactivity with your project.
We've built the our sandboxes to provide you with more of a real world computing experience by giving you direct access to the command line, a lightweight desktop environment, a powerful code editor, and so on, but without overloading you with the functionality of an IDE.
If you have questions, just click the message bubble in the corner and drop us a note!