Kris C. Bahaya ITCC 114 A Critique on Bayanihan: Building and Studying Web-Based Volunteer Computing Systems using Java INTRODUCTION Bayanihan is one of the Filipino traditions. It is a Filipino way of expressing a willing cooperation with others for the common good. It is an essential part of the Filipino culture. However, culture is dynamic. Culture changes and adopts as time goes by. One of these cultural changes is caused by modern technologies like the computer and internet.1 However, the introduction of new technologies in an organization requires change, and that change may put pressure on the organization’s culture. The complexity of an organization’s culture may be incongruent to what a technology may inherently promote and as such, there may be a multitude of opposing forces which may come into play.2 The question is, can we integrate these two trends in our culture into one for the development of the Filipino society? Or will modern technology slowly erase and replace the Bayanihan culture? The question of above is being answered by the Luis F.G. Sarmenta and Satoshi Hirano. They showed that Bayanihan and modern technology can be used as one single tool which will help thte Filipino society. They authored the article “Bayanihan: building and studying webbased volunteer computing systems using Java.” This project seeks to bring the bayanihan spirit to the realm of global computing by developing the idea of volunteering computing, a form of metacomputing that seeks to make it easy even for “ordinary people”” with little technical knowledge to cooperate in solving parallel problems by volunteering their computerrs’ processing power. 1 Barameda, T. V., and Barameda, A.S. (2011). Rebuilding communities and lives: The role of Damayan and Bayanihan in disaster resiliency. Philippine Journal of Social Development. 2 Camacho, J.V., Camacho, R.R., and Camacho B.V. (2005). Some imperatives of ICT Integration in the Philippine Educational System: Towards modernization and relevance in a highly globalized economy. Retrieved November, 1, 2009. The main point of the authors is to make a web-based computing system which is easy to be used and applied by “ordinary people.” They aim to take volunteer computing systems where programmers can write platform-independent parallel applications in Java and post them on the Web as applets so that volunteers need only a new browser and few mouse clicks to join a computation. Thus, authors made this in order for all people to have an easy access and application of web-based volunteer computing system which will help in their business, industry, school, companies, etc. This article shows that modern technology is not a threat in our culture. Instead, modern technology can help us nurture and nourish the Filipino culture into a deeper appreciation of it. Thus, this project is very important for the Filipinos to apply in this modern human life. SUMMARY This article shows that Project Bayanihan is developing the idea of volunteering computing system. Its purpose is to enable people to form very large parallel computing networks very quickly by using ubiquitous and easy-to-use technologies such as web browser and Java. By utilizing Java’s object-oriented features, the authors have built a flexible software framework that makes it easy for programmers to write different volunteer computing application, while allowing researchers to study and develop the underlying mechanisms behind them. In this article, the authors show how they have used this framework to write masterworker style applications. They also develop approaches to the problems of programming interface, adaptive parallelism, fault-tolerance, computational security, scalability and user interface design. To address the problems above, the authors have built a software framework using Java and HORB, a distributed object to Sun’s RMI, but more widely compatible. The Bayanihan framework defines as set of interacting components that can be extended and composed to build Bayanihan systems. Furthermore, by providing extensibility on the levels of applications and generic mechanisms, the Bayanihan framework makes it easy for programmers and researchers not only to build a variety of applications, but also to study the different technical issues in volunteering computing and develop possible approaches to them. APPLICATION Programming Interface. In this model, the server’s program object creates a set of managers and data pools in which it can connect to all worker clients. It can view results and statistics and control the computation though watcher clients that communicates with the watch manager on the server. Volunteer work clients connected to the server run in a loop, repeatedly making remote calls to the getWork method of their respective work advocates. Each advocates passes these calls to the work manager, adding its process ID for identification, if desired. As the work manager receives results from workers, it places the results in the result pool and marks the corresponding work in the work pool done. User Interface Design. It allows application writers to create and use different GUIs as desired, as long as these conform to the interfaces required by the objects that will use by the writers. Programmers can create application-specific GUIs to view the same object in different objects in the same way. Users can view results and statistics and control the computation through watcher clients that communicate with the watch manager on the server. To write an application for this model, programmers need only to override appropriate methods in the application-specific classes MWProgram, Work-Data, WorkGUI, ResultData and WatchGui. In this manner, the authors have written a variety of applications including factoring, distributed web-crawling, RC5-64 descryption, and Mandelbrot rendering. Adaptive Parallelism. The current master-worker programming model implementation employs a simple form of adaptive parallelism sometimes called eager scheduling. Moreover, since the list is curricular, nextUnDone-Work can eventually wrap around and point to previously assigned but uncompleted work, allowing a piece of work to be reassigned to other workers. The authors also used master-worker programming model. They have written MultiWorkEngine and MulttiWorkManager subclasses that implement a getMultiWork function for prefetching multiple packets of work, and have used them in their distributed web-crawler application to improve performance by hiding communication latency. Fault-tolerance and computational security. By extending the eager scheduling work manager and work pool objects, the authors have implemented two approaches to protecting against faults and sabotages: majority voting and spot—checking. Majority voting works by requiring that at least a majority m of up to r results from different workers for the same work objects have the same value. They have implement it by using a new subclass of MWWorkPool and FTWorkPool. Moreover, Spot-checking works by the beginning of each new batch of work, the SCWorkManager randomly selects a work object from the work pool and precomputes its results. Like all large-scale metacomputing systems, volunteer computing systems must be able to tolerate faults such as data loss or corruption from random hardware, software and communication failures. Performance and Scalability. They authors have shown results from running the Mandelbrot application on 17200 MHz Pentium Pro machines connected by 10Mbit Ethernet, running Windows NT 4.0, Netscape 4.03 on the clients, and Sun’s JDK 1.1.6 JIT compiler on the server. Morever, they have also shown that just-in-time (JIT) compilation, Java was actually faster than unoptimized C Code, while only slightly slower than optimized C Code (compiled with djgpp’d gcc using the –O option that produced the best result.) Due to security restrictions, Java applets can only communicate with the web server from which they were downloaded. This forces browser-based volunteer computing networks into star topologies which have high congestion and limited scalability. To address that problem, the authors have developed a simple volunteer server system that volunteers with HTTP servers on their own machines can download and run as a Java application. Thus, Project Bayanihan’s approach is to maximize flexibility by taking full advantage of object-oriented techniques. To this end, the authors developed a general-purpose framework that allows programmers and researchers to build systems by simply “mixing-and-matching” interacting objects. They have demonstrated the effectivity of this framework by successfully using it to build a variety of master-worker styles applications, and to initiate explorations into several interesting research areas. RESPONSE AND EVALUATION Bayanihan is the name of an old Filipino tradition wherein neighbours would help carrying house of a family who wants to live in a new location. The neighbours who helped carrying the house do not ask for money or any reward in repay for their effort. The neighbors are driven to willingly help a relocating family mainly because of the spirit of unity in their community, not for money.3 Thus, for Filipinos, the word bayanihan means accomplishing a difficult task with a spirit of unity and cooperation to achieve a certain common good. 3 Barameda, T. V., and Barameda, A.S. (2011). Rebuilding communities and lives: The role of Damayan and Bayanihan in disaster resiliency. Philippine Journal of Social Development. Moreover, the authors of this article tried to integrate the bayanihan culture with modern technology, specifically, volunteer computing system. This Project Bayanihan seeks to bring the bayanihan spirit to the realm of global computing by developing the idea of volunteer computing, a form of metacomputing for even “ordinary people” with little technical knowledge to cooperate in solving parallel problems by volunteering their computer’s processing power. On the other hand, the participation of this Bayanihan framework is not really “voluntary”. It is because, when you say “voluntary”, it means that a person does something without expecting any kind of return, e.g. money. Volunteering doesn’t mean working on something to make money from something you participated upon. However, this Bayanihan framework gives money to those who offered participation with it. There are also people who participated in this kind of framework as way of earning money. Thus, in this argument, Bayanihan Framework is not “voluntary” by nature. CONCLUSION This paper has revealed the importance of socio-cultural factors essential for the adoption of the Bayanihan Framework. There is no doubt that this framework is of great help to different sectors, organization, business and people in the Filipino society. However, this paper shows that the term “Bayanihan” must not be used for this kind of framework because it destroys the concept of “Bayanihan” itself. This framework is very effective and unique in its very own system especially when it goes to integrating with the Filipino culture. One of the significances of this Bayanihan Framework is seen in the Educational system of the Filipino People. According to some researchers, majority of Filipino teachers who optionally adopt the VLE are not handling any distance education course offered by the university. They are not formally trained to use the VLE in the university and organisational support seems non-existent because they are not involve in the distance education program. These teachers appear to rely on their peers for support, and have formed small informal support groups for information and resource sharing. This ‘bayanihan’ effort, paved the way for the proliferation of the VLEeven in colleges/departments that do not have distance education programs. Similar results from a previous study revealed that social networks and mentor relations encourages junior teachers to advance in the field of VLE adoption and integration in their teaching practices. The ‘bayanihan’ culture illustrates social network and mentor relations as teachers who are adept with the VLE act as champions to encourage their peers to adopt the VLE.4 Thus, this framework shows that technology is not a hindrance towards the better appreciation of one’s culture. Indeed, technology and culture must go hand-in-hand for the development of one’s life. Finally, I envisage that the modern technology (specifically this framework) be further scrutinized in the context of the Filipino culture on how it is created, developed and nurtured within the Filipino society. The importance of the topic is showing that modern technology is not a threat to the Filipino culture and tradition. This topic shows that modern technology can be integrated with one’s culture and tradition for the greater common good. Thus, the researcher suggests that technology adoption, integration, adaptation and transformation shall be applied for the betterment of the lives of the sovereign Filipino people. 4 Quimno, Val; Imran, Ahmed; and Turner, Tim “The Significance of Bayanihan’ Culture on Technology Adoption: A Case of Virtual Learning Environment Adoptiion in a Regional Public Univerrsity in the Philippines” (2015). PACIS 2015 Processings. Paper 155.