Kris C. Bahaya
ITCC 114
A Critique on Bayanihan: Building and Studying Web-Based Volunteer
Computing Systems using Java
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.
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.
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.
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
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.
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.
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.
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.
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.
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.