Teaching people to code in bite-sized, gamified chunks delivered via mobile app is Pys mission. The fledgling startup is the brainchild of two friends and college computer science majors who found themselves repeatedly asked for advice on how to learn to code.
Lots of people asked us how should we learn to program or what resources should we use, explains co-founder Derek Lo. We would give people different resources and we would find out they wouldnt really complete anything. And they would find it too hard or not fun. Or they couldnt find the time. So thats how this idea came about we sort of thought why dont we create something for the phone where somebody can learn these kind of hard things anywhere and then make it also very fun.
Py got an unexpected download boost recently after Apple featured it in its App Store and has now racked up over 100,000 downloads. This is without concerted marketing efforts (they did launch on Product Hunt last September, so early users have skewed towards Silicon Valley/California). Its also without an Android app which theyve just now released this week.
The Py duo are also now part of Y Combinators summer 2017 batch of startups, delaying entry into the program while Lo finished his college degree.
They started working on the iOS app in May 2016, launching a beta soon after. At the time they were thinking about all sorts of learning pitching TC with the idea that Py would cover a broad a variety of subjects, including humanities, sciences and even courses like English grammar, not just programming topics like Python.
To my eye this seemed overly ambitious. And they have now circled back to the original focus: programming. And even more practically to arming budding developers with the skills they need to build specific things, such as a website or an app. The idea, says Lo, is to offer customized, modular, practical learning for developers hence the app also has a course offering coding interview tips.
Weve been very focused on programming for a while but programming applied to, say, iOS development or making a website or data science, says Lo. So weve got a lot of courses on core programming so how do I learn the basics of Swift or learn the basis of Python but were just now releasing courses that are much more project-based. So how would I actually take these skills in Swift and then go and write an iPhone app? Were very excited to be launching those kind of courses that will give people a real understanding of how this actually gets applied.
Its fair to say that the learn-to-code space is a pretty packed one these days, with all sorts of creative approaches to inspire learners of all ages from board games to programmable robots to gamified learning platforms (and/or games with learn to code elements). So where does Py fit into such a competitive learning landscape?
Its best described as fitting into the mould of (non-computer) language learning apps of which theres also a rich variety these days (Duolingo, Babbel, Verbling etc) offering budding developers similarly engaging touchscreen-based interactions as a route for learning.
There are a few very concrete ways that we differentiate ourselves, Lo tells TechCrunch. One is these kind of interaction types that were built we have four, maybe five. So essentially users can answer multiple choice questions they can answer in text response, so well ask what does this program output? and you actually have to type in the text.
We have an interaction where you have to order lines in a program, so that really assesses whether you understand the flow of a program. And the ones that we are most excited about is fill in the blanks we call it word banks. So you essentially are given these words so you have to fill in blanks in the program. So again its like this very interactive, fun, gamified way similar to Duolingo in some ways.
He says theyre also working on another interaction type theyre calling code response which makes use of a custom keyboard (of their own making) to simplify the fiddly process of typing actual code on a mobile.
Essentially we can specify the keys that are necessary to type the program. So all the words and letters and characters that would be necessary, he says. So it makes it way easier to actually type the program. So thats a really cool way where people can actually write real code, that gets executed, right from their phone in a very easy way where they can do it on their bus ride to work.
In-app strategies to make the learning more sticky also take some leaves out of the book of language learner apps (and indeed mobile games) by including dynamic review, for example, and gamification elements such as having users earn stars for completing course modules, and a review button that reorders module content based on elements users previously struggled with.
Its almost like Angry Birds where if you do the game youll be able to get anywhere between one and three stars and so thats the same with us there are a certain number of quizzes for each module And youll get a certain percentage of them right. And if you get 100 per cent youll get three stars. And if you get 50 per cent youll get 1.5 stars. So this really incentivizes people to actually learn it and learn it well, says Lo.
Additionally we have EXP, so you gain points when you complete lessons and quizzes. And we also have a streak feature, which has definitely helped with our retention. Duolingo also does that, and Snapchat. And then push notifications. Weve seen that timing certain notifications in the right way has been able to boost our retention.
Design is clearly another big priority for the team, with the app having an elegant and ordered look and feel. Lo says hes the one responsible here, having a personal interest in graphic design which led him to take some courses at college alongside his computer science major.
Currently theres a range of free learning content in the app, but the duo are already working on their monetization plan via a Py Premium subscription service (coming in an app update) that will unlock additional (paid) course content, and also offer a live mentoring feature which will let users access a real-time chat with an experienced software engineer.
And while Py is generally focused towards the more basic/starter stage of learning to code at this point, i.e. for people who dont much prior knowledge, Lo is excited about the potential to use the mobile learning framework theyre building as a delivery medium for more advanced learning too. And that potential is whats got Yale excited, according to Lo.
One of the things that [Yale] were excited about is the fact that the courses are so modular, and the fact that technology is constantly changing, he says. One of the primary investors was very excited by the idea that maybe in the future there could be very small, short courses on very advanced topics I truly think that would work completely fine. And that very experienced developers would love learning this way.
The Py team raised $20k in pre-seed funding from Dorm Room Fund last October, while the Yale Venture Creation Program has also committed $100k (theyre in the process of agreeing terms when we speak). So, along with YCs funds, theyve raised around $140k at this point.
Lo says they also turned down a larger investment offer, of $1M, from a high profile Silicon Valley investor on the grounds of not needing such a large amount at such an early stage. Though he says theyll likely look to raise a seed of between $1M and $3M after graduating YC.
Their hope for the bootcamp is to learn how to scale the app into a global business, noting, for example, that one route theyre exploring for growth is partnering with code learning organizations which could make use of the app for their own user bases.
We are first time founders. Ive built several apps. Weve both worked on software products before but this is the first time were co-foundering a company and so we think the mentorship is extremely valuable, he says of the opportunity theyre spying with YC. Also YC is known for scaling a software product Theyre very good at that, and thats extremely attractive to us. Just being able to be in a network and have that mentorship and be able to really scale and reach a global audience and reach millions of people thats what excites us and gets us up in the morning. And thats what excites us about YC.
Can anyone learn to code? I think the answer to that is yes, says Lo, a little hesitantly. Maybe if you cant read yet that makes things a little more challenging [But] even a kid who can read, I think that they can learn to code, yes.