Python is one of the funniest languages to play with. Quick to write, fast to iterate and cross-platform, it’s the perfect language to play/protoype with on-the-go.

The thing is, I know a lot of people that are rocking Chromebooks as their daily driver or that can’t be bothered to install extra software to code. As a matter of fact, most of my colleagues have been provided a Chromebook by our company and are therefore subject to the limitations of Chrome OS.

The good thing is though, Python runs on anything and better yet, Python is available from everywhere. In this article, I’m going to present you with three options you can choose from that will allow you to write and execute Python code right from your browser. Whether you have a Chromebook or if you just like the idea of a cloud-based software, this article is for you.

Tutorial For Web-Scraping:

I put together a multi- serie article that introduces you to the world of Web-Scraping with Python. If you’re interested, the article is available at this address : https://martechwithme.com/introduction-to-web-scraping-with-python-extracting-data-from-a-page/ ! Enjoy!

Google Colaboratory

Google Colaboratory is a free Jupyter Notebook environment. If you’re not familiar with Jupyter Notebook, it is a computational environment for Python based around the idea of notebooks. The idea is that as you’re writing code, you can annotate your blocks of code using the Markdown language, making it super easy to create tutorials, collaborate with other programmers or simply document your progress better.

With Google Colaboratory, you have access to the full blown Python 3 Jupyter Notebook experience with the access to pip if you require extra modules and a direct access to your Google Drive account. This last point is particularly enticing for a lot of people. The idea of starting to code with one laptop and open the software from a new computer right where you left is pretty cool.

Google being Google, you also get sharing and commenting features. One thing we can regret though is the lack of real-time collaboration. Being in the name, one could easily expect the kind of implementation we’ve all been used to with the Google apps but unfortunately, Colaboratory did not join this party.

Google Colaboratory is still a very solid environment, even with Dark Mode, that will probably satisfy your most basic needs and more. I’ve had the opportunity to write a couple of web-scraping tutorials for my team using this software and am definitely planning on releasing them to a broader audience so keep an eye out for that! (You can already find the first part here ! Check it out!)

So get on with it! You probably already have a Google account so you already have everything you need 🙂

Microsoft Azure Notebooks

If you already have a Microsoft account, Microsoft Azure Notebooks can be a decent solution. It does not offer the best customization features but you have access to full folder management with the possibility of choosing your python environment between Python 2.7, 3.5 or 3.6.

If you don’t have a Microsoft account, I’d say this solution is still worth looking into.

Microsoft Azure also gives you access to a terminal although I haven’t been able to install new modules but the good news is, the most important libraries are already installed. So if you’re looking to draft some data visualisations, rip up some XML data or scrape some websites, you should be able to do so from within the safe environment provided by Microsoft Azure.

The cool thing about being able to manage your folder structures is the ability to link notebooks with each other. This way, you can create classes in one Python Notebook, organize it very well and create a second notebook that will use these classes.

If you’d like a tutorial on Notebook interlinking, don’t hesitate to leave a reply at the end of this post and I will consider it.

Chrome Remote Desktop

By Chrome Remote Desktop, I mean any kind of remote desktop software tool that works for you. Having a powerhouse at home turned on most of the time even when I’m away, it’s always useful for me to know that I can have access to it at all time.

Whether I’m on vacation with only my Chromebook or my Macbook , as long as I have an internet connection, I can easily dial in my computer at home and keep on working on ongoing projects.

Although I’m synchronizing most of my scripts and Notebooks with Dropbox, I have a few local scripts running day in day out that I have to keep an eye on and adjust from time to time. For this purpose, being able to remotely access my computer and work on it from anywhere in the world is a pretty cool concept. Definitely consider this option if you have one powerful computer available at all times.

The paid version of this solution is to have an Amazon EC2 Instance with a distribution containing your preferred Python environment. One way it could work for me would be to have a permanent Windows instance with Dropbox, Anaconda that I could access via IP address at all time. A free t2.micro should offer you enough features to try it out and upgrade if you need a more powerful machine.

Tutorial For Photoshop-Scripting:

Although this does not apply to code in Chromebook, I believe this subject can interest some of you Python coders. If you already have a Windows machine, I greatly suggest that you check out my guide to use Python to automate Photoshop edits.

Cocalc

Cocalc is a very simple service that offers you plenty of features. After completion of the sign up process, you will get a similar experience than Microsoft Azure. Cocalc do support the creation of LaTeX documents and for our use case, it even supports Jupyter Lab which is a Jupyter Notebook on steroids.

One drawback though is that the free plan included in Cocalc does not give internet access to its users nor does it offer the best performances so you may want to use Microsoft Azure or Google Colaboratory instead.

If you’re into collaboration though and you’re willing to pay for this tool, Cocalc offers real time synchronization for Jupyter Notebooks with your collaborators. I think it’s not offered enough to be mentioned here, even though this article focuses on free solutions.

Gryd

Gryd is an other SaaS company that hosts jupyter Notebooks, with an emphasis on teaching features. If you’re a student and/or own a .edu email address, Gryd does offer a free plan that should satisfy your needs.

Gryd comes with plenty of libraries pre-installed although I could not see BeautifulSoup in the ones offered. The good news though is that you can install libraries so for the peeps that want to do some web scraping, that should be an option.

Kernels

Kernels from Kaggle offers pretty much the same features as everyone else in this pack. With kernels, you can create your public or private “kernel” that are Jupyter Notebooks hosted in the cloud.

Hundreds of libraries are already included in the base installation but for the obscure ones you might want to use, you can always pip install them.

Regarding performance, Kernels is actually pretty decent for a free option. You will get kicked out after being inactive for more than 60 minutes but the runtime should be enough for your data manipulation sessions.

I can definitely recommend it if you’re looking to get your hands dirty.

Datalore

Datalore, final item on this list is from the guys behind the Python IDE PyCharm.

At this point, there’s not much else to say. If you liked any of the solutions mentioned before, you will like Datalore. There is some differences compared to how a normal Jupyter Notebook works though.

For instance, one of the good things about Datalore is the organization “à la Excel”. Meaning that you can have multiple “sheet”/workbooks that are connected to each other, making the organization of your notebooks a breeze. You can still export them individually as a .ipnyb file.

One of the downsides of Datalore though is that the code is run from top to bottom. The way jupyter Notebook usually works is that there is numbers next to each cells that determines when they were ran and which variables have been updated the latest. With datalore, you have to organize your code a bit more than how you’d usually experiment in a classic Jupyter Notebook but it really is just a matter of playing with it before you understand how to use it properly.

Conclusion

In conclusion, having a Chromebook should not defer you from learning and experimenting with Python. Services like the one mentioned above already offers a range of features that will surpass the needs of many many developers out there so don’t feel restrained by what seems to be just a simple web app. Like most of the things in the programming world, the machine is really the easiest tool to get, the mindset and the practice are the hardest things to come by so don’t overthink your tools and just throw yourself at it 🙂