Download Research Tools
Well, now it is. Today, we are pleased to announce the launch of Code Hunt, a browser-based game for anyone who is interested in coding. We built Code Hunt to take advantage of the fact that any task can be more effective and sustainable when it’s fun. And Code Hunt is fun! It uses puzzles, which players explore by means of clues presented as test cases. Players iteratively modify their code to match the functional behavior of secret solutions. Once their code matches, lights flash and sounds play, letting players know that they have “captured” the code. Players then get a score, which depends on how elegant their solution is, and are encouraged to move on to the next puzzle or level.
When we demoed Code Hunt a few months ago, we were amazed at the interest it elicited across groups at Microsoft, from those involved with K-12 education to those focused on college recruiting. However, today we want to talk about how Microsoft Research Asia used Code Hunt during their annual Beauty of Programming (BOP) event, a competition that attracts thousands of students in the Greater China Region (GCR).
In the past, the BOP competition gave students specifications for problems and then checked their solutions automatically using a test suite. This is the traditional approach: students pit their wits against each other—and against the clock—to create a solution to a defined problem. While this kind of coding is similar to what they will encounter in courses or later in their careers, it isn’t necessarily fun.
Code Hunt is different. Instead of giving students a problem and comparing their solutions to a set of fixed test cases, Code Hunt does the opposite: it presents an empty slate to the user and a set of constantly changing test cases. It thus teaches coding as a by-product of solving a problem that is presented as pattern matching inputs and outputs. The fun is in finding the pattern. Fun is seen as a vital ingredient in accelerating learning and retaining interest during what might be a long and sometimes boring journey towards obtaining a necessary skill—or in this case, winning a competition. The GCR team recognized that Code Hunt would not only make the BOP competition more fun, but it would also enable them to check the solutions more quickly and accurately.
With considerable optimism, we opened Code Hunt to BOP competitors in April. In three rounds, 2,353 students scored in the game, and the contestants solved an average of 55.7% of the puzzles. Since Code Hunt runs on Microsoft Azure, we have all the statistics. We could see that, on average, it took players 41 tries to capture the code for puzzles. However, we were really interested in the 350 top students who solved all of the puzzles—even the most difficult ones. These students needed only 7.6 tries on average to solve a puzzle, showing that Code Hunt can reliably surface the better coders. From these students, 13 were selected to proceed to the finals, and we wish them luck.
Code Hunt was developed by a team in Microsoft Research led by Principal Development Lead Nikolai Tillmann and Principal Research Software Engineer Peli de Halleux. It is based on Pex, Microsoft Research’s state-of-the-art implementation of dynamic symbolic execution (analyzing a program to determine what inputs cause each part of a program to execute), which is available as a Power Tool in Microsoft Visual Studio.
We look forward to Code Hunt’s further application and would be happy to receive inquiries regarding competitions or courses. But remember, anyone can play Code Hunt—for fun or to hone their coding skills. Just go to www.codehunt.com and start coding!
—Judith Bishop, Director of Computer Science, Microsoft Research, and Guobin Wu, Research Program Manager, Microsoft Research Asia
Chile is a long way from Microsoft Research Redmond, but its bright, inquisitive students and talented, motivated professors share our fascination in the promise of innovative software technologies. Our shared values were on clear display when representatives from Microsoft Research visited the University of Chile and the Pontifical Catholic University of Chile on May 6, 2014. Such visits enable us to check our technologies in new environments, and they always raise interesting new avenues to pursue.
Professor Sergio Ochoa was our host at the University of Chile, the country’s oldest and largest institution of higher learning, with approximately 38,000 students spread across a full range of academic divisions. The University of Chile was founded in 1842, the first in the country, and now has students in a full range of faculties and schools. We met faculty who had come from all over the world, enriching the domains and standards of the opportunities for the students.
At the University of Chile, standing, from left: Prof. Sergio Ochoa, Dr. Michal Moskal, Dr. Judith Bishop, Prof. Maria Cecilia Bastarrica, Diego Muñoz, and Prof. Alexandre Begel. Kneeling from left: Prof. Jeremy Barbay and Dr. Mircea Lungu
While there, we presented a workshop entitled, “TouchDevelop: Create Rich Mobile Cloud Apps on Your Device” to students from the computer sciences department. During the workshop, students peppered us with perceptive questions, particularly about the cloud experience that TouchDevelop offers. In explanation, Michal Moskal, a researcher at Microsoft Research, developed a chat program in TouchDevelop, showing how data can be given a “cloud” tag that makes it updateable by many users simultaneously.
The obvious follow-up question was whether TouchDevelop could also enable several programmers to work on the same code simultaneously. We believe that teamwork is very important, and we were glad to be able to announce that this capability is being built into TouchDevelop and will be released soon.
Students work on multiple platforms with TouchDevelop at the University of Chile.
At the Pontifical Catholic University of Chile, Professor Andrés Neyem organized a workshop titled, “Lab of Things – Deploying Connected Devices for Research.” At the workshop, Arjmand Samuel and Ratul Mahajan, both from Microsoft Research, talked about the Lab of Things and how this platform could be used to scale up research that relies upon connected devices and sensors. Faculty and students who were present at the workshop raised interesting questions regarding the infrastructure, network protocols, and the security and privacy of data collected as part of such research. Professor Neyem also talked about his research interests in connecting healthcare devices in homes and beyond. Specifically, he showed a demonstration of a pulse-rate monitor that is being developed in collaboration with the university’s School of Nursing, which could be deployed to about 25 homes by using the Lab of Things.
As eager as the students and faculty were at both universities, we came away just as enthused about possible links with these outstanding institutions. We look forward to working with the University of Chile to improve TouchDevelop and expand its reach, and to collaborating with the Pontifical Catholic University of Chile in deploying the Internet of Things.
—Judith Bishop, Director of Computer Science, Microsoft Research
—Arjmand Samuel, Senior Research Program Manager, Microsoft Research
When world-class research organizations work together on a long-term basis, the whole is greater than the sum of the parts. That premise underlies Microsoft Research’s collaborative projects and joint ventures around the globe, including our recently renewed joint research center with Inria (the French Institute for Research in Computer Science and Automation).
Since its founding in 2006, the Microsoft Research – Inria Joint Centre has innovatively applied computer science and mathematics to a host of scientific challenges, from formal methods for mathematics to distributed systems and security, computer vision and medical imaging, machine learning and big data, and social networks and privacy.
Microsoft Research – Inria includes 100 researchers overall: 40 permanent researchers from Inria, 30 permanent researchers from Microsoft Research, and 30 non-permanent researchers (interns and postdoctoral and PhD students, representing some 23 nationalities). Today, May 19, the Joint Centre continued its quest to use computing to help solve big problems, hosting an event that reported on the ambitious projects currently underway (see the list later in this blog). The event also featured the following keynotes from some of the world’s foremost computing experts, including Jeanette Wing, corporate vice president of Microsoft Research, who gave an inspiring presentation on how the joint research center is important to science, technology and society.
Jeanette Wing, corporate vice president of Microsoft Research
Georges Gonthier, principal researcher and team leader at Inria
Bertrand Thirion, director of research at the Joint Centre
The Joint Centre is currently focusing on the following projects:
Projects on formal methods and their applications
Projects on machine learning and big data
Projects on computer vision and medical imaging
Projects on social networks and privacy
All told, this one-day event captured the essence of the valuable research taking place at the Microsoft Research – Inria Joint Research Centre, and it points out the value of our long-term investments in collaborative ventures.
—Scarlet Schwiderski-Grosche, Senior Research Program Manager, Microsoft Research Connections EMEA
—Pierre-Louis Xech, Microsoft Research-Inria Joint Centre Deputy Director, Microsoft France