This article was published on July 8, 2012

Inside Programr: The site that lets you learn to code by actually building apps


Inside Programr: The site that lets you learn to code by actually building apps

Great things tend to happen whenever technology meets education. Such is the case with startups like P2PUCodecademy, Udemy, Khan Academy, Skillshare and many more initiatives, where the traditional learning process has been turned on its head.

When it comes to learning how to code, options like these exist to bring you closer to your real goal…actually building something. But if there’s one site in particular that puts you in the driver’s seat, it’s Programr. It’ll hold your hand as you enter the real world of coding, like in driver’s ed when your instructor could take the wheel if things got dodgy.

We first covered the site back in January, and since then it has evolved rapidly, becoming the go-to place for countless code-curious students to explore the likes of Java, C++, .NET, Ruby, SQL, Android and iOS. So far, over 330,000 programs have been run to date, with 65,000 attempted challenges and nearly 2,000 submitted projects.

To learn more about this growing breed of online learning tool, we (virtually) sat down with creator Rajesh Moorjani to get the scoop:

The <3 of EU tech

The latest rumblings from the EU tech scene, a story from our wise ol' founder Boris, and some questionable AI art. It's free, every week, in your inbox. Sign up now!

HW: When did Programr first launch & what led you to build it?

RM: Programr officially launched in September 2011. Earlier, for a few months, we were known as Krazy Koder and would sell white-labelled lab solutions to IT Colleges but then we decided to make it open to all users in September 2011.

The idea came when I was actually taking an advanced IT course (J2EE / Struts) at a local college. Though I enjoyed the face-to-face sessions there, the place was too far from my home and it would take me 45 minutes of travel to get there – which was a pain. Also, I could access the lab only at allocated times for limited hours.

That got me thinking how cool it would be if I could get 24×7 lab access right at my home. I wanted to create cool stuff from home and share it with my faculty to get his feedback. However my faculty wouldnt have the time to sit installing the zip files I sent him via email (containing source code, libraries, db table exports, web server xml files, config files and so on). I also wanted to share my lab creations with my friends all over the world easily and get their feedback (and appreciation :))

So I started looking for a solution where I could code & share my lab creations with others online easily. I didnt find any, so decided to take it up as a project and roll my own. Thus was born Programr.

HW: How has it evolved since then?

RM: Initially we supported only the development of commandline apps in Java, C++, C# and Ruby online, and the system was very rudimentary. Soon, however, a few users came in via word-of-mouth and began creating cool apps like tic-tac-toe and “who wants to be a millionaire?” online. They shared these apps amongst their friends on facebook and that’s when significant traffic started coming in.

Then, our users began badgering us to launch more platforms, especially web technologies. So we launched PHP, J2EE, Javascript, AJAX and Flex by December 2011. Around March we were getting a lot of requests for supporting mobile technologies, so we released our Android lab in April and then our iOS lab last month.

Recently we also launched our Processing section along with a Processing sprite gallery. The Processing section enables users to learn object-oriented programming by making animated games in less than an hour’s time.

We’ve found that students mainly come to Programr to checkout the latest projects submitted by other users. If they like something, they then tinker with its source code to see how it works, and even try to enhance it further. So it’s all learning by doing.

We’re still self funded all this time as we are making money from a few clients already. However we have now seriously started looking for funding to take Programr to the next level.

HW: The education startup space feels like it’s really just starting to heat up. How do you think Programr lines up with other companies, like Codecademy, P2PU, Bloc, etc?

RM: Programr is the only portal out there that offers full-fledged online coding support for 10+ platforms including insustry-in-demand technologies like Java, C++, .NET, Ruby, SQL, Android and iOS.

Furthermore, on Programr you can create your app, share it with the world and even embed it on your own blog just as you would embed a youtube video. We believe this capability for students to share & showcase their lab creations to their friends and family is a very important step in the process of learning new skills, as it provides the much-needed motivation and pats-on-the-back to keep on creating cool stuff.

Codecademy is truly a remarkable product – their course workflow is amazing. However, we dont see ourselves getting too deep in the online courses space. We tried it for a while but found we were getting too distracted by focussing on theory lessons and content. So, we have decided to focus squarely on the practical aspects of programming: i.e. our lab, practice tests, assessments and contests.

Same for P2PU and Bloc. We’d rather that users learn their concepts on these sites and use Programr for practicing and sharpening their skills — we’re not exactly a competitor to these sites but more of a complement to them.

HW: Who are your target users? Is Programr geared towards users focused on learning more complicated programming skills, beyond entry level JavaScript?

RM: Our target audience is students and aspiring programmers who want to practice, test and sharpen their coding skills.

Currently we are targeting the intermediate developer who knows a bit of programming to begin with. However in the next 2 months, we are launching our assessments section that will help beginner students to get their feet wet into programming with practically zero programming experience required.

HW: Mind telling us about your different “zones”?

RM: Sure, our different zones allow users to learn, practice and excel in the programming language of their choice. For example, if you’re looking to build commandline apps, you can try our Java, C++, C#, Ruby or Python zones.

In each zone you can make full-fledged projects that have multiple files, with all the standard IDE features like syntax highlighting, autocomplete, multiple tabs and runtime syntax warnings. Each zone is structured like digg (you can upvote/downvote other projects so that the most popular ones bubble to the top).

HW: What about the coding contests, challenges and book code listings?

RM: Healthy competition encourages learners to push themselves harder than they would have normally. We launched a coding contest in January in which we rewarded the winners with prizes such as Amazon Gift Cards and Ebay Gift Cards. Winners were chosen on the basis of a combination of user votes and judges votes.

The contest was a big hit and got a very good response, and so we now run monthly coding contests.

HW: Have any of your users gone on to build awesome apps or sites?

RM: Totally! We’re constantly amazed by the super-cool apps that users are creating and sharing at Programr on a regular basis. The latest cool app I saw was a couple days back, it’s a game dedicated to the Euro 2012 Cup that concluded yesterday. The game came up after buzz began to generate on the finals. See it here. Yes, coincidentally Spain won! :)

Here are some other amazing apps created by our users in different technologies:

Online Pizza Store (Java Web / DB)
Rotating Cube (drag the cube to see it rotate!) (flash)
Asteroids Game (JS)
Slide Show App: (AJAX / DB)
Loan Calculator: (PHP)
Video Player (Flex)
Cool Calculator (Android)
MineSweeper (Android)
Simple Clock (flash)
Formic Game (iOS)
Anti-Corruption Game: (JS) Note: This game went viral in India during the recent anti-corruption protests there, due to the caricatures of the politicians involved.

HW: What’s your best advice for anyone who’s looking to learn how to code? Is there anything you wish you knew?

RM: In my opinion, the best way to learn to code is to first decide on a project you’d like to create, e.g.: create a song playlist app, create an online forum for my school, create a screensaver with my favorite pics, create a dynamic website dedicated to my favorite band.

It’s important to be sufficiently excited about your chosen project (and maybe even the thought of showing it off to your friends). You then begin to figure out how to use the right syntax, logic and APIs to get the job done as you clearly know what exactly you want to achieve.

Programming is just like any other art, say like painting. Learning the initial constructs is easy but getting good at it takes a lot of practice. So keep coming up with cool new projects to code, and in a matter of time programming will become very natural to you.

Check out Programr via the link below and let us know your thoughts in the comments!

➤ Programr

Get the TNW newsletter

Get the most important tech news in your inbox each week.