A few weeks ago I presented at the NDC Minnesota conference. The event is part of the NDC Conferences family that I enjoy very much. It started as the Oslo event gathering community around .NET technologies and quickly spread out to London, Copenhagen, Sydney and now Minnesota. This is one of my favourite conferences as I think they’ve achieved a great balance between building an inclusive community and delivering a strong technical content. If you add to this the fantastic food and mastered event organisation, there is rarely anything better.
I submitted a talk ‘Natural Language Processing with Python’. It was aimed to make the introduction to text processing concepts, documents preparation for the machine learning problems and a simple Bag of Words model. My plan was to deliver a talk followed by a demo based on processing Reuters dataset documents. But as Murphy is teaching us, things are rarely going according to the plan. You may suspect few things one of them would be that my demo failed. But in this case, the problems started long before I started the session.
It was, of course, the never-ending story about the broken projector. It appeared not to like my new laptop and resulted in a blinking sensation. Me, tech crew and people in the audience didn’t manage to make it work for around 10 minutes. The situation started to look ridiculous when the new idea came up to the picture – I was offered a different laptop. So simple, right? I exported my presentation and plugged in the borrowed laptop. From this moment everything in my session worked like a charm.
Did you notice what had happened? Because I didn’t back then. I simply presented my slides and gave the demo. ‘But… how?’, you ask. Did it just happen that the new computer had my code and all the required libraries? Was I so lucky that it all worked in the new environment? Not exactly.
I was so accustomed to using Katacoda for my demos and workshops that I completely disregarded the fact that this switch wouldn’t be possible without it. So what happened? How was my demo possible to run on somebody else’s computer? For those of you who know Katacoda, the answer is obvious – I created a scenario before my talk and was presenting it in front of the audience using a web browser. No installations, downloading the code or configuration needed. The cool part is that the audience and you can do it too. Even after I am done with my talk, at home, all you need is a browser. Just use the link and learn!
The thing is I am not some special person who can build the scenarios. Anyone can create their own courses and labs. All you need to do is to follow the instructions on the create page. Your content including markdown files, code and pictures is stored in your GitHub repository. To make it work with Katacoda you need to link the account to it. Example repository provided by Katacoda can be seen here. You can also have a look at mine that contains all my Katacoda content.
When writing the steps for the scenario, you need to decide on the environment your lab will be running on. For example, I used vanilla Python environment for my NDC Minnesota talk, but TensorFlow for my NDC London one. This and the lab configuration can be set up in the index.json file. It defines the steps, assets and other metadata. Scenarios can be standalone or gathered into courses. You can also embed them on your website or use directly on the platform.
And it is all completely free! So have fun learning, teaching and creating and let the Katacoda be with you on that journey!