My computer science class is usually held in a regular classroom instead of a computer lab. My students prefer too use their own laptop instead of the computers in the lab as it makes their work portable and they get to work in the same development environment on their laptop.
This means that my students will need to create a programming environment on their computer. That includes downloading the language compiler or interpreter, installing an IDE, and setting up environment variables. For many students, this is a daunting task and we usually spend one class just installing and making sure they can compile and run hello world.
Recently, I stumbled upon a website called repl.it. REPL stands for Read Evaluate Print Loop which is a common basic program structure. repl.it provides an online IDE for a wide variety of languages including Java, Python, C++ and PHP. Sadly, there is no Perl.
Online IDEs are not new. There are many online such as IDE One. What really made repl.it interesting however was that it allowed users to use graphical libraries such as Pygame for Python and Java Swing and Love2D game engine for Lua. I have not seen another online IDE that can do graphics (if you know of another site, please let me know in the comments).
I decided to give repl.it a test run and see how pygame performs. As a coincidence, they were running their first game jam competition where the games needed to have a theme of cash.
My wife and I created an entry called Cash Money Rain where coins are tossed into the air and the player catches them. The player can choose to pocket the coins or by banking the coins which will return the value with interest (dropped as dollar bills). Players can extend the time by spending the money they pocketed. The goal of the game is to pocket as much money as you can. My wife made the graphics and saw first hand how a computer game is made.
You can play the game here: Cash Money Rain.
Though the pygame program could run in the browser, I found it was very laggy. To practically make a game, it was too slow and I could not really play the game. I had to set up a local environment to check if the game was working properly. I also experience disconnects from the coding environment frequently. To reconnect, I had to wait for repl.it to realize I am disconnected (takes about an hour). Refreshing the page did not work.
However, for simple command line programs, such as those commonly found in introductory programming courses, repl.it works decent enough. For example a simple guess a number game written in python that you can try for yourself.
- did not need to set up a coding environment
- is portable as long as you have internet connection
- editor does autocomplete and syntax highlighting
- command line programs run decently
- github integration
- server disconnects and can not be easily reconnected
- free accounts do not have private repositories
- graphical programs are too slow for practical purposes
Have you used repl.it? What are your thoughts on it? Please comment below.
If you like my work, a small donation or feedback will be much appreciated.