Github Codespaces, Replit and the world of Cloud IDEs

Github Codespaces, Replit and the world of Cloud IDEs

Today I'll share about yet another super solid developer tool I recently discovered. GitHub's Codespaces. (A cloud IDE)

tl;dr #Codespaces is VSCode on cloud with a solid free plan. Tried Replit too but it felt a little differently designed than a typical IDE.

Context:

Before I jump in too deep, I need to share context with folks here.

I am a hard core data scientist who doesn't like to move out of Jupyter notebooks but when we were productionizing a script at Dr. Droid, I was required to start working with my backend team to get it out.

Back in 2017-20, I used to use Anaconda with Jupyter notebooks but when I had to restart coding in 2023 after a gap, I was too lazy to go ahead with it as my distinct memory of Conda remains in the pain in managing different environments.

I had played around with Google Colab -- the Jupyter notebooks on cloud last year and I had found it to be super convenient to get started with.

Moving Colab code into working product:

After the early prototyping, I had to create an end point and deploy it. For this task, I was trying to avoid the task of creating a flask application / local server and instead try to look for some convenient alternative (I know, any backend engineer here must be judging me, but tbh, I don't enjoy deploying and managing applications).

Attempt 1: Replit

I signed up on Replit to create a repo/endpoint and see if it could be convenient enough to use it. It was quite decent -- they had managed package improve, secrets, configs, etc. pretty well. The UI was a bit "new" to me and they had asked me premium plan ($7/month) to get a server running.

I created the first application using it.

✅ It did the job for me.

✅ No Github Repo created.

✅ Paid plan gave me a permanent endpoint (deployment)

Attempt 2: Using Streamlit & Codespaces

The next phase of my work was actually making the code integrated with an existing Github repo. Somehow Replit didn't feel like a traditional IDE here to start using with Github and I started exploring PyCharm.. Most of my work was using Pandas and Streamlit (I'll write another piece on it in the coming weeks).

Somewhere in the rabbit hole of Streamlit research, I stumbled upon Github Codespaces. (I think there was an example on it or something)

Codespaces has a deeply integrated browser within the IDE and that really took it off for me. All the early iterations became 10x faster as my Streamlit application was deployed onto the workspace.

I had tried PyCharm too here but the experience of switching between IDE and browser was bit cumbersome. Also, somehow having everything in the cloud felt convenient. The user experience on Codespaces exactly the same as on VSCode / PyCharm. There was nothing new or fancier here (like in Replit, which was designed for doing everything from scratch there).

Billing & Usage

In the last 1 month, I've extensively used Codespaces and still, my usage has not exceeded the free plan. I'll consider the paid subscription for this one as my usage exceeds their free plan.