Ben Segal, one of the Internet pioneers, talks about BOINC and Africa@home
16 July 2007
Participants from 18 African countries are taking part in a workshop on volunteer computing in Muizenberg, South Africa from 16 to 22 July 2007. Volunteer computing is a technology that allows science projects to use idle computing cycles from millions of home computers around the world, offered by volunteers. This is made possible by open source software called BOINC. During the workshop on volunteer computing, we had the opportunity to talk with Ben Segal --member of ICVolunteers' technical committee and one of the pioneers of the Internet-- about the links between the invention of the World Wide Web and the use of Volunteer Computing.
Q: Africa@home started in 2005. Two years down the line, where do we stand? What is the potential of this workshop and project more generally speaking for Africa and computing?
I will be in a better position to answer this in a week from now, but I certainly can already see the analogy between this and teaching about the Internet 20 years ago. At that time, we had participants from many countries too, in an institute in Trieste, Italy, called ICTP (International Centre for Theoretical Physics - http://www.ictp.it). Students would typically be from 10 different countries, first European, then also students from other parts of the world, including Latin America and Africa. At the time, Africa was somewhat lagging behind. Things seemed to move more quickly for Latin America.
Today, the chemistry is similar. We are trying to train trainers. The purpose is for them to take back the knowledge of the technology, especially what is useful for them to teach and use in their countries. So in the selection process of this workshop, we had a bias to university representatives rather than business people. As to the AIMS institute, it is a place where new information can be passed to many African countries, as the AIMS students are not only from South Africa (which already has the necessary infrastructure to run the kinds of applications we are looking at). The current class is from about 20 African countries. We will be able to check during this week whether selection was good. The sort of synergy we hope for can already be seen with our selected teachers, who themselves come from many countries. I hope the answer to your question will be that we are taking a good step towards advancing the BOINC technology for many people on the African continent.
Q: From your point of view, what are the biggest challenges for Africa@home and our workshop more specifically?
I see several challenges. First of all, we needed to find a good base for teaching BOINC technology on the continent. I think we were lucky, finding AIMS and a coordinator here like Jan Groenewald. The ingredients needed are (one): experience and (two): motivation. The second challenge is the quality of the group. It was surprising to see how many candidates applied: we had 230 in total for 25 scholarships. It was difficult to choose. We were a bit under time pressure. But Jan also had some experience, which helped a lot. The third challenge involved issues related to the students' visas and travel arrangements. We managed, thanks to help from ICVolunteers who provided a full-time volunteer who helped with this task (and will also help with day to day administrative tasks during the workshop). Seeing the last email messages coming in, they generally confirm that people did get their visas, which is a good sign. Fourth, it is not easy to find competent teachers who are willing and available. The good news has been that all came except David Anderson himself, the creator of BOINC, who could not make it for personal reasons.
Q: Where is, in your opinion, the greatest potential for this project?
I think that volunteer computing has a huge future, and not just in developing countries. The potential is much greater than I thought when first getting involved with it. Indeed, even for an organization such as CERN it offers important options, as they are hitting limitations in terms of energy supply and cooling of large computer rooms. So, some of the strateg people at CERN are looking at volunteer computing for offloading some of this problem. The only worrying side of BOINC is that it is currently in a "state of grace" - something like where the Internet was 20 years ago, where the community is mutually supportive and no clouds are on the horizon. It is important that the positive spirit around it be preserved. The bad behavior of one ill-intentioned person in a "corrupted" BOINC project could potentially be damaging for the whole BOINC community.
Q: What about the private sector and companies like IBM, are they a benefit or risk for the project?
I think that IBM is not involved in BOINC for the money, but rather their corporate image, their public relations. This might not exclude their making some money at some point, but it's not the main motivating factor, it seems to me. They first took a semi-commercial approach but more recently they took the decision to get involved in open source and use BOINC. This seems to follow a pattern they have often made: moving from initially being just one of those somewhat arrogant private sector companies to a more community approach, realizing that it would be beneficial for them. Some of the IBM strategists realized in the 1980's that open Internet protocols were not a threat to their business, and in the early 1990's that they could migrate from business proprietary mainframes to UNIX clusters, without which they would have been in trouble. That was quite early. They said: "Why don't we open up?" And they did. Nobody pressured IBM to get involved in BOINC and the World Community Grid (WCG). They just did it. (Microsoft needs to be pressured more to change in my opinion). If IBM selects your project as a worthy volunteer project, they implement it completely for free. They would probably be able to migrate to a money-making approach if they want to in the future, by asking for fees for consulting, for example.
Q: What do you think about the point made by Agence Universitaire de la Francophonie that has been pushing for applications on shared servers rather than one single server reserved for Africa@home?
For us the whole point of putting in a server was to encourage that site to develop BOINC projects. It was obviously not about the hardware for the sake of the hardware, but to plant seeds for the development of the technology and its applications. Hence, I don't think it would be at all useful to just have a server that is empty or runs other people's projects. We want to have people use the technology, not just run hardware.
Q: As one of the pioneers of the Internet, you have seen it evolve. What are the parallels between the Internet and BOINC that you can see? The Internet started off as a non-commercial operation... and then it changed...
Any commercial kind of activity was forbidden at the time. When the US Government put the Internet in place, none of the projects using it was allowed to make any money. There was a strong de facto prohibition. This was to the point where if in emails or in Usenet discussion groups you proposed to sell or promote something, you were kicked off. At the same time this helped the Internet community to stay "innocent" - it was a place to do research, not business. That changed in the late 1980's due to work done by one person in particular: Bob Kahn, one of the founders of the Internet. Kahn, who was also active in Washington and who had political connections there, pushed for the Internet to be allowed to be used for commercial activities, an idea which was eventually accepted by the US Congress. This is what led to a large extent to the success of the Internet. When the Web later attracted the public at large, it had already been "liberated" from that non-commercial approach.
There is an analogy with BOINC, which is still in its "innocent" phase. Nobody is making money with BOINC today. Some might be saving money, but not making any. Commercial influence pushes forward innovation, but also corruption. Thus, BOINC would change a lot if it became commercial. I believe that it is important to keep that volunteer component. Actually several efforts at starting businesses around volunteer computing have failed, so maybe the threat is not so great.
Individuals were very generous to the Internet with their personal contributions of ideas and innovation. Plus, the Internet design was strong enough to support an unexpectedly massive expansion. But nevertheless that alone did not cause the revolution. What was missing was a human interface that could be attractive and simple enough even for a child to use. Tim Berners-Lee had the vision to find a solution making this possible, with the hyperlink paradigm and interfaces, allowing many different data formats to be handled.
Q: Tim had the initiative, and without institutional support he volunteered his time... right?
That's right. Nobody ordered the Internet, nobody asked Tim to work on it. Tim volunteered the idea to the world, and personally implemented it. There is a total parallel with David Anderson. Dave recognized what potential there was from his SETI@home experience, and made the decision that the SETI platform should be opened up with BOINC so other programmers could connect to all those volunteers. He had that generous, altruistic spirit combined with a vision: linking science and democracy. One of the ideas he likes to promote is that the public can vote about science in a democratic way by backing some projects over others. He worked as a professor at UC Berkeley. Some time ago, he left the department to work at the Space Sciences Lab (SSL), funded by the US Government to carry out space research, supporting peaceful projects. And that's where the original SETI project was being supported, using homemade hardware and later using donated minicomputers, looking for signals from outer space. Computer power was never sufficient. Dave was hired as the new head of computing for the project. I do not know who had the idea to use screen savers, but this was a breakthrough idea: scavenging the spare computer power while it was idle. They rewrote the SETI analysis system inside a screen saver program and found millions of people would willingly download it to help them. The next step was BOINC, which allowed other projects to profit from all that computer power.
Q: What about this idea of the African Grid and how did we get from that to Africa@home?
One day, Silvano de Gennaro, at the time head of multimedia at CERN and who just had made a documentary about the use of technology in Africa, walked into our office and announced: "Hey guys, I want to create an African Grid!" We told him: "look, forget it, too heavy, too complicated, it won't happen". But we were using BOINC, and realized that BOINC might be a simpler way to implement his idea. Thus, Silvano contributed the germ of the idea and this is why our project is called Africa@home.
The Grid is a technology linking computer centers to work together. It has been hyped, but it is not a revolution. First of all, we glued two computers together; then a bunch of machines; then, a bunch of different sorts of computers and then different computers at a distance and finally huge networks connected with other networks. This is obviously much more complicated than what we are doing with BOINC. And it is fair to say that the Grid is at least for now too complicated to use for relatively simple projects and applications. CERN obtained large amounts of money to fund their Grid projects. A main benefit for us was the possibility to hire young people to work on the technology. This is the only thing I really liked about the Grid, even when I was managing some of its development at CERN. I did not like the architecture, but the fact that we had young people coming to work on projects, with dynamism and enthusiasm, definitely invigorated IT at the lab. The Grid is a massive project while BOINC, on the other hand, was started by one man. It is still in the nice stage of the little kid walking around exploring things and not dealing with huge complications. So, there is a big analogy between the Web and BOINC. But of course one cannot say that BOINC has the revolutionary sort of potential the Web had. What you can say is that BOINC can deliver as much or simpler computer power to applications than the Grid can. This has been proven with time and experience.
When BOINC came out, it was a nerdy thing to use. Since then, it has become a lot more user-friendly. I find it is much better than before. So, what we will teach on Monday is the improved human interface to BOINC. There have been people in the BOINC community who have tried to get it to a point where you only need one or two clicks to get it on a volunteer's machine and it's then working without any further effort. Today, it still takes quite a few clicks. I am sure that BOINC for volunteers will at some point be included in standard releases of Linux and even Windows.
Q: One of the challenges of Africa@home was to get new applications, after Malariacontrol.net. Where do we stand with this?
We pretty much are there now already with the STDSIM model that Joris Borgdorff is working on for the Erasmus Medical Centre in Rotterdam. This is the third port we've managed with BOINC after LHC@home and MalariaControl. The first time is revolutionary, new and different, the second is easier, the third almost routine. From the programmer's point of view, mounting the application just gets easier. It's like a cookbook: the recipe becomes easier to cook once you have done it already.
What we are trying to do is diffuse an "enabling technology". If you have certain large computing problems to solve then BOINC can be a solution. As an analogy, you can compare this situation with a bone you put in front of a dog. If the dog is not hungry, he will not eat the bone. If he is, on the other hand, he might jump on it. BOINC is open source. It is a whole package that contains all the things one might need, such as Linux, a Mysql database, a Web interface, and of course each component could be taught for a week so we are a bit rushed. But BOINC reminds me of what I liked about the Internet in its early stages. It was a great teaching environment. It was all about how to solve a problem. Today, the Internet does not evolve much anymore, from a scientific point of view. It is interesting to tell how it works but it is not exciting to teach any more. The protocols are on a tiny bit of the silicon in your mobile phone. But BOINC is a bundle of evolving stuff. When I used to teach Unix or TCP/IP in the old days I had a stack of notes and paper to give out. Now, we use a Wiki platform that provides dynamic and (even more important) participatory teaching materials and information. So, for all these technologies, you put the dog in front of the new food and he will eat well. But the dog will not be so interested in the old fashioned stuff.
The real revolution has been to watch how things have changed from being so unconnected 30 years ago. There was isolation, even hostile proprietary competition. Today, this is very different. Now we work in an interconnected world, even though that has only been the case for about 10 years or so. The IT community is now sharing code, together with common style and infrastructure. When I sat down to write a program 20 years ago, I had to do all of it. Now I can take a package from here and a subsystem from there. People in poor countries can do the same. You help them to learn in that kind of environment, not reinventing the wheel. They enjoy it and contribute to it themselves. Everyone wins.
Posted: 2007-7-18 Updated: 2011-11-13