Download Research Tools
A growing trend in both the theory and practice of programming is the interaction with rich information spaces. This trend derives from the ever-increasing need to integrate programming with large, heterogeneous, connected, richly structured, streaming, evolving, or probabilistic information sources—be they databases, web services, or large‐scale, cloud‐based data analyses. However, as the complexity of programs and information structures increases, the coupling between the two is far from seamless, requiring many manual programming and modeling efforts. These manual processes often lead to brittle programs and thwart the easy application of novel compiler technologies and novel information mastering methods.
Fortunately, the Semantic Web provides rich means for ad‐hoc information structuring with querying and type-inference possibilities, while novel programming languages, like LINQ and F#, lower the entry bar to the information-rich world for the developer. In addition, innovative information mastering methods, such as Hadoop and Dryad, are frequently positioned as functional paradigms, and huge potential exists to combine information‐rich sources with both scalable and traditional programming models.
These approaches were on display this May at the Spring Mindswap in St. Goar, Germany, where researchers from around the world examined information spaces from the perspective of programming, looking for fresh insights into the promise and challenges of the design and applicability of the Semantic Web and new data-representation techniques. This workshop described the state of the art, elucidated the challenges that are required to bridge the gap between current information management and current programming language technology, and delineated concrete ways by which providers of information spaces can better serve the needs of programming languages, and vice‐versa. Of particular interest were the breakout sessions on three critical issues: (1) the handling of data versus schema, (2) the effect of information-rich programming on types in programming languages, and (3) the need to consider data quality. We would like to extend our thanks to Professor Steffen Staab of the University of Koblenz-Landau, who was the primary organizer of the Spring Mindswap.
Now, we want to invite the community to extend these discussions at the First Workshop on Programming the Semantic Web, which will be offered as part of the International Semantic Web Conference in Boston this November. In particular, we invite the submission of papers that discuss and promote the programming facet of the Semantic Web. Abstracts should be submitted by July 24, with papers due by July 31; further submission information can be found on the workshop website.
—Evelyne Viegas, Director of Semantic Computing, Microsoft Research, and Don Syme, Principal Researcher, Microsoft Research Cambridge
Performance, architecture, execution, bugs, and programs: these words are heard time and again in the context of a major computer science conference. So it was in Beijing this month at PLDI 2012, the conference on Programming Language Design and Implementation. Terminology and accompanying innovative ideas flew fast and furious as 600 academics, researchers from industry, and students gathered to discuss the latest advances in this fundamental field. PLDI is organized by ACM SIGPLAN (the Association of Computing Machinery’s Special Interest Group on Programming Languages).
Pictured from left to right: Lolan Song, Feng Zhao, Jan Vitek, Haibo Lin, and Judith Bishop
Although this was the thirty-third PLDI conference, it was the first to be held in Asia. Microsoft Research was proud to be the Gold Sponsor of the conference, and to celebrate the occasion, we organized a special open house to introduce participants to the work that goes on in our labs. Dr. Feng Zhao welcomed visitors to the beautiful Microsoft Research Asia lab with an overview of the work of the Beijing-based facility. The participants were then invited to a “DemoFest,” where 14 projects were on display: 13 from Microsoft Research labs around the world, and one from Tsinghua University. Many of these demos showcased the latest ideas about concurrency and the cloud, as well as the benefits of program analysis. There were also several projects illustrating end-user programming, such as TouchDevelop from Redmond and ClippyScript from Asia. See the full list of demos.
With hundreds of computer science academics and students gathered together, PLDI presented a great opportunity to engage in discussion of the hands-on work of writing the compilers and creating the tools that make today’s glitzy devices and snazzy apps possible. Modern platforms and applications demand highly sophisticated optimizing compilers and analysis tools, and the advent of new processor technologies, such as multiple cores, GPUs, and mobile platforms, along with the increasing sophistication of development tools, all require mastery of cutting-edge compiler and code generation technologies. PLDI was the ideal place to connect with students who are drawn to such computer science specialties as hardware specific optimizations, whole program analysis, profile framework and profile driven optimization, working set optimization, static alias analysis, optimized code debugging, incremental re-compilation, register allocation, code security, or SIMD and GPU code generation, vectorization, and parallelization.
Sriram Rajamani explains his poster.
Aside from presenting demos and connecting with friends old and new, Microsoft Research personnel also presented six papers and a tutorial that exemplify the high quality of our research. In addition, Microsoft researcher Rustan Leino and his colleagues were honored for having presented the most influential paper 10 years ago at PLDI 2002. That paper marked a turning point in the field of static checking, describing pragmatic design decisions that promote practicality over completeness. The techniques are now also widely used in various forms in Microsoft’s development tools—notably as part of Code Contracts, which ships with Microsoft Visual Studio.
I greatly appreciated the assistance of our colleagues at Microsoft Research Asia in handling all of the local logistics, especially Lolan Song's team, as well as Stewart Tansley from my team.
With so much science in my head, a quiet walk out to the Beijing’s Olympic Park was a great way to unwind. Beijing and PLDI certainly have a lot to offer!
—Judith Bishop, Director of Computer Science, Microsoft Research Connections
What do you think of when you hear "Hawaii"? Colorful shirts, hula dancers, mai tais on a sunny beach? Well, all those things are nice, but they can’t hold a candle to the goodies that are coming out of Microsoft Research’s Project Hawaii, which extends the Windows Phone with the power of the cloud. The smartphone provides the sensors, mobility, and data; the cloud provides powerful algorithms to enable scenarios that would otherwise not be possible. Project Hawaii effectively makes the cloud a natural extension of the smartphone.
This week, we’ve added four more cloud services to Project Hawaii’s existing line-up, namely:
These new cloud services, together with the existing ones for relay, rendezvous, OCR, and speech to text, make Project Hawaii an even more potent framework for developing cool Windows Phone apps.
Project Hawaii has been in the hands of talented students at a number of universities across the world for more than a year now, and these young coders have developed some very interesting and useful apps on the Windows Phone. For instance, a student from Temple University created an app to control service robots by using Project Hawaii’s relay service.
Then there is MonsterGG, a game developed by students at Singapore Management University, which uses Project Hawaii’s relay and rendezvous services, together with Windows Azure storage.
Students from Egypt-Japan University of Science and Technology put Project Hawaii to use in assisting the disabled, by developing an app that helps the blind and visually impaired navigate streets.
Eager to try your hand at developing apps with Project Hawaii? Then download the software development kit (SDK).
—Arjmand Samuel, Senior Research Program Manager, Microsoft Research Connections