July 7, 2008 - July 11, 2008

Summer School 2008

Location: Cambridge, England, U.K.

  • Research career – Industry vs. academia, Andrew Herbert (Microsoft Research)


    How to write a great research paper, Simon Peyton-Jones (Microsoft Research)

    How to give a great research talk, Simon Peyton-Jones (Microsoft Research)

    Writing papers and giving talks are key skills for any researcher, but they aren’t easy. In this pair of presentations, I’ll describe simple guidelines that I follow for writing papers and giving talks, which I think may be useful to you too. I don’t have all the answers – far from it – and I hope that the presentation will evolve into a discussion in which you share your own insights, rather than a lecture.


    Presentations of past students:

    Peer-to-Peer systems have received a lot of attention in recent years. The key property of Peer-to-Peer systems is self-scaling, i.e. as more peers become part of the system not only the service demand increases but also the service capacity. The research community has shown an increasing interest in the use of P2P systems for file storage. This application can be very attractive for two main reasons: (i) centralized solutions are expensive (ii) common PCs are equipped with high-capacity local disks, often underutilized. The design of a Peer-to-Peer storage system is not a trivial task and presents a considerable number of challenging problems. I will illustrate briefly some of the issues involved, explaining some of the solutions I proposed so far during my Ph.D. thesis.


    • Generalizing the discrete analyses of genetic networks using constraints, Fabien Corblin (Université Joseph Fourier)

    Our work generalizes the current existing discrete approaches for analyzing the properties of genetic networks as proposed by Thomas using concepts that are available in constraint programming (CP). Thomas’ networks can be formalized, generalized and implemented using constraints. At the limit the proposed approach combines both aspects of simulation and reverse engineering. The ultimate goal of this work is to allow biologists to explore the combined effects of various types of hypotheses such as the assumed gene interactions and the expected dynamic behavior. We have developed a constraint program that utilizes the assumed hypotheses expressed as data. When the data is interpreted by a CP processor the proposed system is capable of responding to multiple queries that encompass simulation, reverse engineering and hybrid combination of the two. After a presentation of our approach, I will show you the constraint program in action with the following functionalities: combination of simulation and reverse-engineering, addition of hypotheses about the combination of interactions over the genes of the network, creation of mutants, relaxation of constraints in case of incoherence (the data having contradictory effects), and consequently suggestion of refinement of the model.


    Automated software verification is a superb challenge. Unfortunately, in the many years of research in this field, few actual products (if any) have been proven correct beyond doubt. We can, however, look back to a long history of spectacular successes in software falsification (think Ariane 5). The problem is that bugs are usually buried deep in the software and traditional testing techniques just don’t dig deep enough. I will talk about an approach that accelerates the digging, allowing us to dig deeper for bugs and “break the toy” before somebody else breaks it unintentionally. I’ll also explain how finding deep bugs in abstract software models can help verifying the actual software.


    Proteins are involved in virtually every biochemical reaction in a living cell. A protein’s function is strongly dependent on its three-dimensional structure and there is a large interest in the pharmaceutical industry to understand the native structure of proteins in order to perform targeted drug design. Existing experimental techniques offer high spatial resolution, but tend to be costly and time-consuming. A novel method, CamShift-MD, will be presented that is based on relatively easy to perform chemical shift measurements from nuclear magnetic resonance spectroscopy. This method predicts protein structure by introducing restraints into molecular dynamics computer simulations. CamShift-MD offers a new way of automatically generating protein structures based on a combination of experiment and theory. It has the potential to solve structures for which traditional methods are not suitable, such as highly dynamical non-native states. Moreover, the method can be used to determine protein ensembles. Unlike a single, rigid structure, such ensembles reveal information about the distribution of conformations and dynamics of molecules in solution, providing us with a better picture of the behaviour of proteins in the cellular environment.

  • Giving a good presentation, Ken Shaw (Benchmark Communication Techniques)

    Lecture, Presentation or Conversation? We will examine: Who your audience is; What they want; Why you are addressing them; How you handle practical issues like nerves, body language, speech & voice, humour, visual aids etc.; What is success? What is plan B if everything goes wrong; How you recover.


    Mind-reading machines, Peter Robinson (University of Cambridge)

    Facial displays are an important channel for the expression of emotions, and are often thought of as projections of a person’s mental state. Computer systems generally ignore this information. Mind-reading interfaces infer users’ mental states from facial expressions, giving them a degree of emotional intelligence. We use video processing to track two dozen features on the user’s face. These are then interpreted using statistical techniques through a hierarchy of analyses as basic actions, head and facial gestures, and finally groups of mental states. The talk will describe an implementation of facial affect inference, together with an evaluation and some preliminary results of using the system to monitor car drivers.

  • Rough guide to being an entrepreneur, Jack Lang (University of Cambridge)

    At some stage you might want to exploit your ideas by starting a company, just as Bill Gates and Paul Allen did in 1975. It might even be the next Microsoft, or bought by them. I’ll give an overview of the process, explain some of the success factors investors look for, and how to go about writing a business plan and getting off the ground.


    Grand challenges in computer science, Tony Hoare (Microsoft Research)

    One way to do great research is to work with a great team, collaborating over an extended timescale, to find answers to fundamental questions that lie at the very basis of your branch of science. I will call such a project a Grand Challenge.

    Grand Challenges have long been common in Astronomy (the Hubble telescope) and in Physics (the large hadron collider), and more recently in Genetics (the enumeration of the human genome). Here are six Grand Challenges that have recently been singled out by UK computer scientists for the attention of the research community:

    • ‘in vivo = in silico’– multi-level simulation of the behaviour of biological organisms
    • ‘memories for life’– rapid recall of a lifetime’s memories
    • ‘architecture of the mind and brain’– simulation of the relation between them
    • ‘non-classical computation’– a search for a theory that covers the wide range of computing phenomena in nature
    • ‘ubiquitous computing’– principles of engineering of the swarms of computers that surround us
    • ‘dependable systems evolution’– programs that are proved correct by the computer before running them

    Can you think of any more? I will talk in more detail about the last of these, which has been my own life-long research interest.


    How does the Internet work?, Richard Black (Microsoft Research)

    Could you explain how the Internet works in simple terms to someone else? Are there any gaps in your understanding, or questions you have? In this talk I’ll be giving an introductory description to how it all works.


    How to apply for funding? In search of the holy grail, Wouter Spek (European Science Foundation)

    Wouldn’t it be nice to have unlimited sources of funding for your research? Wouldn’t it be nice to have the freedom to operate? Wouldn’t is be nice not to be bothered with constant applying and competing for financial sources? These are some of the topics we will discuss, we will talk about unmet needs and I will give you some pointers how to address the issue of finance and finance acquisition.

  • Take control or how to manage your supervisor, Tristram Hooley (vitae)

    This session will look at how to make supervision work well for you. It will argue that to get the most out of your relationship with your supervisor you will need to be proactive and assertive. In particular the session will encourage you to think about the following issues:

    • The relative rights and responsibilities of the supervisor and supervisee
    • What your supervisor cares about and how you can move up in their priorities
    • Strategies that you can use to manage the supervision and make them more useful
    • What to do if things go wrong

    Write off-loading: Practical power management for enterprise storage, Dushyanth Narayanan (Microsoft Research)

    In enterprise data centres power usage is a problem impacting server density and the total cost of ownership. Storage uses a significant fraction of the power budget and there are no widely deployed power-saving solutions for enterprise storage systems. The traditional view is that enterprise workloads make spinning disks down ineffective because idle periods are too short. We analyzed block-level traces from 36 volumes in an enterprise data centre for one week and concluded that significant idle periods exist, and that they can be further increased by modifying the read/write patterns using write off-loading. Write off-loading allows write requests on spun-down disks to be temporarily redirected to persistent storage elsewhere in the data centre. The key challenge is doing this transparently and efficiently at the block level, without sacrificing consistency or failure resilience. We describe our write off-loading design and implementation that achieves these goals. We evaluate it by replaying portions of our traces on a rack-based testbed. Results show that just spinning disks down when idle saves 28–36% of energy, and write off-loading further increases the savings to 45–60%.


    Surface computing: the post-PC experience, Steve Hodges (Microsoft Research)

    The long-established ‘desktop’ computing metaphor continues to drive a lot of our interactions with computers, But at the same time, new interaction paradigms are being developed and we believe that these will increasingly complement the traditional computing experience. To this end, at Microsoft Research we are exploring a number of new interaction technologies along with the novel form factors, user experiences and usage scenarios they enable. This talk will present some of our work on ‘surface computing’, a new approach to interaction which doesn’t required a keyboard or mouse for input, but which is inherently multi-user and which allows direct manipulation of digital content with hands, fingers and via tangible objects.


    Enzymatic computing, Klaus Peter Zauner (University of Southampton)