Project Materials




Need help with a related project topic or New topic? Send Us Your Topic 



Chapter One: Introduction to the Concept (1.1)
With the advancement of web technology, the amount of content available on the Internet has increased dramatically, as has social network interaction, which has become a regular part of people’s daily lives.

Other social activities, such as buying and selling, have now found a place in social networks. Researchers and scholars need information and resources from on-line document repositories and digital libraries for proper conducting of research work and they also require collaborative researches; casual chatting and communication via mails are also parts of the exploits made from advances in web technology.

The Web has emerged as the finest medium for many database applications, including e-commerce and digital libraries. Many of these applications have even expanded their capabilities by utilising APIs (Application Programming Interfaces).

In the last ten to fifteen years, the cyber world has become more social, but the productivity benefits have yet to be fully realised. We can monitor a person’s Facebook status updates, Instagram photos, Twitter updates, blogs, and wikis in real time.

1.2 Social Coding and Version Control Systems.

Social networks are the biggest explosions of the 21st century. We possess the technology to remain connected eternally with our network, and they may be seen as resources for reaching out to people from all around the world in an instant.

The internet has allowed communities to emerge and collaborate on projects such as creating Wikipedia, the most massive compendium of all human knowledge, by providing resources and tools for communities to achieve a common goal.

The rapid growth of social coding devices is driving a shift in software product development. Effective social communication is crucial for evaluating software product improvement processes.

Version control systems (VCS) are the fundamental component of the social coding stage. Nowadays, software development teams frequently use several VCS tools such as CVS, SVN, Git, and others. Software developers can build their own code versions, and submit modifications into the decentralized VCS frameworks.

The VCS architecture manages distinct versions of software and prevents any disputes between software products. Early VCS frameworks are utilized merely by somewhat tiny software development groups, and are for the most part implemented within modest network systems, such organizational LANs.

The number of projects maintained using those early VCS systems is somewhat low. It’s no surprise that Git is gaining popularity because its distributed coding collaboration feature makes software development coordination so simple.

“The forty-year history of version control software demonstrates a consistent trend towards increased concurrency. Concurrent development was handled exclusively with locks in the first generation of tools.

Only one user can work on a file at a time. The second generation tools allow for more simultaneous modifications, but there is one notable restriction.

Before users may commit, they must combine the current revisions into their work. “The third generation tools allow for the separation of merge and commit” (, 2017).

Table 1.1: Generations of Version Control Systems and Network Operations Concurrency Examples First None One file at a time. Locks RCS, SCCS. Second Centralised Multi-Files Merge before committing.

CVS: SourceSafe Subversion Team Foundation Server. Third Distributed Changesets Commit before merging. Bazaar Git MercurialWith recent breakthroughs in distributed computing innovation, distributed social coding receives a significant boost.

Popular social coding stages would now be able to host a large number of software projects. Many people now recognise the concept of “social coding” (3). A virtual community makes contributions to the growth of software products through a distributed, collaborative effort.

Software developers from all over the world can collaborate on a common software project, modifying different parts of the code and creating separate branches in the project source tree. There are currently no specified constraints on a software team. ”

A software project may be developed by an ever changing set of software engineers, and a software engineer may contribute to a set of different software projects hosted in a remote server” (Hu et al.,2016).

Social coding has significantly impacted the nature of software development processes. The social network of software engineers is constantly interacting with the network of software projects.

A few social coding platforms have emerged, encouraging software developers from all around the world to collaborate on a variety of software projects. Distributed development technologies, such as Git, serve as the foundation of social coding platforms.

Since the introduction of Git, the GitHub platform has attracted a large number of software developers to collaborate on a wide range of open-source projects. In GitHub, projects have evolved into repositories.

Repositories contain more information. As the number of GitHub users grows, so do GitHub repositories, but the user-to-user trust connection remains unexplored. This trust connection can offer insight into recommender systems.

1.3 TRUST.

Trust is widely recognised as an important aspect of human relationships. As a result, trust has become a multidisciplinary topic studied by psychologists, sociologists, and computer scientists.

As a result, determining a broad definition of trust that encompasses all of these areas has always been difficult. There are several definitions for trust.

One definition states that “trust is a measure of confidence that an entity will behave in an expected manner, despite the lack of ability to monitor or control the environment in which it operates” (Sherchan, 2013).

1.3.1 Trust in Psychology

One of the established definitions of trust in psychology comes from Rousseau et al. in 1998. “Trust is considered to be a psychological state of the individual, where the trustor 4 risks being vulnerable to the trustee based on positive expectations of the trustee’s intentions or behaviour” (Sherchan, (2013)). This definition suggests that trust has emotional, behavioural, and cognitive aspects.

1.3.2 Trust in Sociology

Sociologists tend to emphasise the relational characteristics or social qualities of trust, which are primarily defined by the level of aggregation (e.g., individual, community, population, organisational, and societal levels).

One of the most well-known sociological assertions is that trust in a trustee will be determined by the trustee’s perceived skill, honesty, and act of giving, as well as the trustor’s proclivity to trust.

In sociology, trust is defined as a gamble on the trustee’s future conduct. For this bet to be termed trust, it must have an effect on the trustor’s actions. Sociology, like psychology, examines trust from two perspectives: society and individual.

At the individual level, the vulnerability of the person who places the bet (i.e., the trustor) is the most important element influencing trust. Trust is clearly a communal asset.

This is expressed as each member of the group’s psychological state towards one another, and it causes each member of the social group to act in such a way that they anticipate other members of the group to be trustworthy

as well as that others should trust them. This indicates that at the societal level, social trust can be classified as an institutional or system element of trust.

Need help with a related project topic or New topic? Send Us Your Topic 


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.