Go back to home page


Visual programming language for machine learning

with Pranav Teegavarapu, David He, Edward Zhou, and Makuza Mugabo Verite


Learning machine learning is hard. We're trying to fix that.

Machine learning is playing an increasingly important role in our society, but very few people understand it. Even to programmers, it's portrayed as this super complicated wizardry that you need to have gone to graduate school to understand. However, we think that machine learning doesn't have to be incredibly complicated, and that it can be taught to anyone, even non-programmers.

Right now, most machine learning tutorials/frameworks use languages like Python (along with many libraries) and assume coding experience, but this discourages people who don't have these prerequisites. ML concepts don't have a fundamental link with text based languages, so we created a system that doesn't pretend they do.

Kobra is a block-based visual programming language (like Scratch) designed to help people learn machine learning. Our editor, Kobra Studio, is tailored to building machine learning applications, featuring built in data visualization, a dataset manager (like a spreadsheet, still a work in progress), and an easy to use library of machine learning models. We use a block-based code editor, Blockly, to reduce the barrier of entry as much as we can and to make it possible to focus on what your project is doing, not syntax or complicated constructs like classes.

We've also developed a community site, allowing users to share their projects with the world and fork other peoples' projects. Being able to see other people's projects and experiment with them makes learning ML a lot more exciting, makes the concepts less abstract, and gives learners motivation.

We've been doing all development publicly on GitHub because we value open source software, find the development model advantageous, and want to give back (what's the point of keeping the source private?), but we haven't officially released Kobra. Right now we are adding finishing touches to get it ready for a first release, but after that we have many features planned, like better documentation.

To summarize, machine learning is already a cornerstone of modern technology and its role in society will only increase. We're on a mission to remove as many unnecessary barriers of entry from the path to learn it as we can, and Kobra is how we're doing that.

My role has been building a lot of the Kobra Studio codebase, such as the core editor features, project management, code execution environment, authentication, and the backend GraphQL API. I've also worked on parts of the landing page and various other things.

Kobra will be part of Replit Ventures' first cohort. More details will be added when we have them.